LINUX.ORG.RU
ФорумAdmin

Как удалить tcp сессию?


0

0

# netstat -na | grep 555 tcp 0 0 :::5555 :::* LISTEN tcp 0 0 ::ffff:22.22.22.22:5555 ::ffff:33.33.33.44:1666 ESTABLISHED tcp 0 0 ::ffff:22.22.22.22:5555 ::ffff:33.33.33.33:3716 ESTABLISHED tcp 0 0 ::ffff:22.22.22.22:5555 ::ffff:33.33.33.33:2081 ESTABLISHED

Необходимо, удалить последнюю сессию 33.33.33.33:2081

Как это можно сделать?


netstat -nap

По pid убить процесс (при условии, что процесс форкается для каждой сессии)

sdio ★★★★★
()
Ответ на: комментарий от edigaryev

При таком раскладе убьётся и сам процесс, хотя может это автору и нужно.

Nao ★★★★★
()

Насколько я понимаю, способа удалить информацию о TCP-сеансе из сетевой подсистемы ядра невозможно?

Конечно, можно выпилить коннект из conntrack'а. Но это подействует только при правильно настроенном фаерволе.

nnz ★★★★
()
Ответ на: комментарий от anonymous

вот верное решение, если нужно только закрыть одну сессию. только скорее всего приложение крешнится при попытке работать с этим сокетом. весь вопрос в том, как приложение обрабатывает сокеты - асинхронно, тредами, процессами или как?

val-amart ★★★★★
()
Ответ на: комментарий от nnz

Конечно, можно выпилить коннект из conntrack'а. Но это подействует только при правильно настроенном фаерволе.

если там не дропаются unrelated-пакеты то не поможет, создастся новая запись.

true_admin ★★★★★
()
Ответ на: комментарий от true_admin

>если там не дропаются unrelated-пакеты то не поможет, создастся новая запись.

Ага. Поэтому я и сказал про правильную настройку фаервола :)

nnz ★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.