Назад | Перейти на главную страницу

Что происходит с tcp-пакетами, когда они не могут завершить трехстороннее рукопожатие?

Межсетевой экран для виртуального выделенного сервера.
Я искал, как предотвратить сканирование FIN, и это заставило меня задуматься о последствиях.
Многие люди используют это правило:

-p tcp --tcp-flags FIN, SYN, RST, PSH, ACK, URG FIN -j DROP

Поэтому, когда кто-то отправляет мне пакет с FIN = 1, я не могу отправить обратно FIN / ACK.
Это кажется маловероятным, но означает ли это, что мое установленное соединение не будет остановлено?
Как это работает ? Сохраняется ли мое соединение, и если да, то как долго?

Как это на самом деле работает, когда кто-то закрывает свой браузер? Он отправляет FIN на мой сервер, мой сервер отвечает FIN / ACK ... но браузер не может его получить, верно? Кто получает пакет, куда он идет?

И что, если ... удаленная машина отправит моему серверу SYN, я отвечу SYN / ACK и скажем, что я не получаю ACK обратно, как долго мой сервер его ждет?

Есть ли название для незавершенного трехстороннего рукопожатия? Спасибо.

Есть ли название для незавершенного трехстороннего рукопожатия?

Это называется полуоткрытый подключение.

Поэтому, когда кто-то отправляет мне пакет с FIN = 1, я не могу отправить обратно FIN / ACK. Это кажется маловероятным, но означает ли это, что мое установленное соединение не будет остановлено? Как это работает ? Сохраняется ли мое соединение, и если да, то как долго?

В конечном итоге истечет время ожидания. См. Также состояние TIME_WAIT.