Вниз
Скачать: CL | DM;

Как оборвать свзь с клиентом у которого, левый ip_address   Найти похожие ветки 

 
kivadim   (2005-10-12 14:27) [0]

Народ расскажите как правильно сделать.
Надо при попытке клиента приконнектиться к серверу проверь ip_address клиента и если он не содержиться в списке разрешенных адресов то оборвать соединение с клиентом. Думаю что надо проверять все это дело в событии
ServerSocket1Accept, но как определять ip_address подлючающегося клиента если клиентов несколько и соответственно ServerSocket1.Socket.Connections[] клиента не известно?
Использую TServerSocket и TClientSocket в режиме stNonBlocking.


 
-=S..S=-   (2005-10-12 14:32) [1]

В онконнект
есть переменная Socket с этой переменной берёшь айпи если не подходит
Socket.Close


 
Digitman ©   (2005-10-12 14:40) [2]

злонамеренный клиент при таком подходе легко обрушит твой сервер.


 
kivadim   (2005-10-12 15:00) [3]

>> Digitman ©   (12.10.05 14:40) [2]
Согласен, а как тогда вообще не допустить такого клиента к подключению?


 
kivadim   (2005-10-12 15:14) [4]

>> -=S..S=-   (12.10.05 14:32) [1]
Так конечно работает, но клиент всетаки успевает запихнуть в сокет кое-какие данные, а было бы лучше если б он вообще ничего не смог записать в сокет.


 
Digitman ©   (2005-10-12 15:29) [5]

а ему и "пихать" не надо ..

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


 
atruhin ©   (2005-10-12 17:13) [6]

>> а как тогда вообще не допустить такого клиента к подключению?
Winsock2 -> WSAAccept



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.46 MB
Время: 0.034 c
14-1136026952
Kerk
2005-12-31 14:02
2006.01.22
Стратегия и тактика


2-1135852497
Dmitrij_K
2005-12-29 13:34
2006.01.22
Ускорение поиска файлов


14-1135872610
ivan2
2005-12-29 19:10
2006.01.22
архивы


1-1134480593
Reset
2005-12-13 16:29
2006.01.22
Поиск компонента и выяснение его свойств...


2-1135865632
Dyakon_Frost
2005-12-29 17:13
2006.01.22
Найти среднее геометрическое!




   Наверх