Вверх ↑
Этот топик читают: Гость
Ответов: 253
Рейтинг: 0
#1: 2022-06-03 20:10:16 ЛС | профиль | цитата
Столкнулся со странной проблемой. При отключение клиента от TCP_Server компонент должен выдает ip на точку doDiskonnect
И как бы все срабатывает если я закрываю программу руками или через диспетчер
Но вот когда отправляю винду в перезагрузку или выключение TCP_Server нечего не сообщает...
А ip компа который уже отключился так и болтается на точке IP
карма: 0

0
vip
#1.1контекстная реклама от партнеров
Ответов: 67
Рейтинг: 1
#2: 2022-06-03 22:05:09 ЛС | профиль | цитата
Так юзай обмен данными, запрос-ожидание -ответ( есть конект ), запрос-ожидание -нет ответа ( дисконект )
Отсылаем единицу серверу, сервер отсылает единицу клиенту ( есть коннект )
Отсылаем единицу серверу, сервер не отвечает какое-то время ( дисконект )
карма: 1

0
Ответов: 253
Рейтинг: 0
#3: 2022-06-03 22:31:23 ЛС | профиль | цитата
Спасибо!) Но наверное это подойдёт если клиент один. а если их 100..
Серверу нужно будет опрашивать все 100 ip на доступность.

Я просто наверное не совсем понимаю механику.

Пытаюсь сделать что-то типа SCCM только по проще.
И сделал примерно так.
Агент(Клиент) устанавливается в Службы винды, создаёт VPN(Проверяет наличие) Подключается к серверу.

Сервер создаёт запись в SQL о подключение нового пользователя (Либо проверяет наличие записи в SQL и меняет значение статуса)
Запись содержит ip статус дату

Есть АдминКонсоль. Она получает записи из SQL

Получаем список клиентов.
Теперь выбираем клиента и можем создать для него задачу(Также через SQL)
Создали задачу, отправили клиенту сигнал о новой задачи*(Ну также задачи проверяются при запуске Агента и каждые 5 минут по таймеру)
Агент читает задачи( Например "Задача для powershella" можно целые скрипты отправлять)

Вы не поверите но это работает
Реализовал, но есть конечно баги. И самый жирный описал выше
При дисконекте клиента сервер должен сделать запись в SQL (Но вот ерунда клиент не дисконектится ))

Сейчас попробую создать событие перед принудительным закрытием клиента, отправить серверу команду

--- Добавлено в 2022-06-03 23:16:16

egorhay писал(а):
Сейчас попробую создать событие перед принудительным закрытием клиента, отправить серверу команду

Не помогло, дело в том что Клиент закрывается раньше чем отключится или отправит команду серверу

Пока не знаю что придумать

Редактировалось 3 раз(а), последний 2022-06-03 23:17:22
карма: 0

0
Ответов: 698
Рейтинг: 143
#4: 2022-06-04 06:49:26 ЛС | профиль | цитата
egorhay, Что-то мне подсказывает что всё что ты описал можно сделать значительно проще.
Посмотри в сторону Active Directory для PowerShell.
https://winitpro.ru/index.php/2019/07/18/modul-active-directory-dlya-powershell/
https://vmblog.ru/ustanovka-i-import-modulya-active-directory-dlya-powershell/
карма: 15

1
Голосовали:ric
Ответов: 253
Рейтинг: 0
#5: 2022-06-04 10:59:20 ЛС | профиль | цитата
Добрый день уважаемый Gunta) Да я именно с этого начал . AD как бы уже есть и первые попытки реализации похожей схемы.
Но решил отказаться от нее, так как не все пользователи захотят менять локальную учёту, а также у многих стоит версия Home.
Вот и решил чуть под заморочиться

Я тут просто вдохновился инструментом от Каcперского (kaspersky security center)

попробовал пробный, тут дело даже не в самом антивирусе а в том как легко можно мониторить состояние компьютеров в сети, отправлять им различные задачи, от простых перезагрузок до сложных установок различных пакетов, редактирование реестра и т.д

Редактировалось 1 раз(а), последний 2022-06-04 11:19:07
карма: 0

0
Ответов: 4621
Рейтинг: 746
#6: 2022-06-04 21:50:10 ЛС | профиль | цитата
В стандартных TCP-компонентах могут быть ошибки. Попробуй альтернативные TCP-компоненты
карма: 26

0
Ответов: 253
Рейтинг: 0
#7: 2022-06-05 16:15:40 ЛС | профиль | цитата
Netspirit писал(а):
В стандартных TCP-компонентах могут быть ошибки. Попробуй альтернативные TCP-компоненты


Спасибо большое, как раз о нем думал. До пока не стан не чего менять.
Проблема на одном пк. Он как-то слишком агрессивно закрывает программы перед завершением работы. Самое интересное что если закрывать через диспетчере задача всё успешно дисконектится.
Если просто выключить ПК то клиент так и болтается в TCP сервере.

Пока решил добавить поверку доступности ip в Консоли Администратора.

Пока вот что получается https://www.youtube.com/watch?v=Y4_BkgvbVrc

Редактировалось 4 раз(а), последний 2022-06-05 16:16:42
карма: 0

0
7
Сообщение
...
Прикрепленные файлы
(файлы не залиты)