Всем привет!
Сразу оговорюсь, я знаю как работает TCP и о состояниях сокетов. Все остальные сервисы работают корректно. Система нареканий не вызывает. Но получилось так, что нужно ходить на определённый сервер с разных мест, но там авторизация по IP. Я зарегал туда свой IP и у себя поднял SS5 только для этого сервера и только от конкретной группы клиентских IP. Всё казалось бы работает, пока не проиходит ОНО. Вдруг начинают плодиться не закрытые сокеты в процессе ss5 в состоянии FIN_WAIT и когда их набирается некое ограниченное кол-во, процессу ss5 система начинает отказывать в открытии новых.
Я рылся по коду ss5 - ничего криминального не нашёл. Перерыл гугл, тоже не видел подобных проблем. Нет случаи есть, но решений нет.
пробовал отказаться от ss5 в пользу любых других мелких проксей типа privoxy И прочего. У НИХ ТА ЖЕ БЕДА.
Если это дело в клиентах (а как это может быть в них?! Они пользуют Хром, и от этого же Хрома httpd так себя не ведёт) то можно как-то принудительно закрывать эти хвосты кроме как kill ss5 && sleep XX && ss5?
Заранее спасибо за пониманиеэ
LinuxForum.Fans
SS5 не закрывает сокеты и оставляет их в FIN_WAIT
Автор: Spider
3 сообщений
914 просмотров
Недозакрыть сокет и бросить его в fin_wait2 - это водится за Windows, причём уже много лет
Ради интереса разбил клиентов по портам, так вот iPhone и Android ровно точно так же остаются висеть в CLOSE_WAIT
Войдите или зарегистрируйтесь, чтобы ответить.