Найти - Пользователи
Полная версия: Как закрыть подключение на сервере, не сообщая клиенту?
Начало » Network » Как закрыть подключение на сервере, не сообщая клиенту?
1 2
Ferroman
Вопрос такой.
Есть самописный сервер на socket, к нему обращается клиент, отправляет данные.
После получения данных надо закрыть подключение на сервере, но клиенту об этом не сообщать.
Как это можно сделать?
Андрей Светлов
В смысле? close без shutdown?
alrond
По типу iptables tarpit, только на верхних уровнях?
Ferroman
Не совсем, если я сделаю close, то, насколько я понимаю, клиент тоже “отвалится”.
alrond
Именно.
ZZZ
Если не секрет, зачем такое понадобилось?

P.S. А может задействовать os.system('iptables … TARPIT') (ну или что-нить близкое)?
Ferroman
Не секрет - способ избежать подбора паролей к аккаунтам создавая большие таймауты, но с освобождением своих ресурсов.
Не пойдёт, надо кроссплатформенное, или, как минимум, под мастдай.
ZZZ
Думаю, что на таком уровне ничего нет. По крайней мере я не встречал точно.
ИМХО, надо брать Си и писать для сетевого ядра конкретной ОСи. Кстати нечто подобное не помешает сообществу.

Ferroman
Не пойдёт, надо кроссплатформенное, или, как минимум, под мастдай.
Ну да, если говорить об освобождении своих ресурсов, то точно не пойдёт. :-)))
Lexander
Ferroman
Не секрет - способ избежать подбора паролей к аккаунтам создавая большие таймауты
А не проще ли использовать стандартные методы? Ограничить кол-во попыток, например.
pasaranax
А что если запускать соединение отдельным потоком, а потом убивать его девятым сигналом?
Андрей Светлов
Из стандартного socket такого не выжать.
На винде closesocket неявно вызывает shutdown. Сильно облегчает программирование - но только не в вашем случае.
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Powered by DjangoBB