Различия
Показаны различия между двумя версиями страницы.
| Предыдущая версия справа и слеваПредыдущая версия | |||
| dpi:opt_cgnat:cgnat_faq:cgnat_faq_3 [2023/08/24 08:48] – ↷ Страница перемещена из dpi:dpi_options:opt_cgnat:cgnat_faq:cgnat_faq_3 в dpi:opt_cgnat:cgnat_faq:cgnat_faq_3 elena.krasnobryzh | dpi:opt_cgnat:cgnat_faq:cgnat_faq_3 [2023/08/28 09:01] (текущий) – удалено elena.krasnobryzh | ||
|---|---|---|---|
| Строка 1: | Строка 1: | ||
| - | ====== 3 После подключения NAT стали отваливаться неактивные SSH сессии ====== | ||
| - | {{indexmenu_n> | ||
| - | Действительно, | ||
| - | большое количество мертвых сессий в пуле уменьшает производительность NAT и общую.  | ||
| - | |||
| - | У NAT нет возможности отличить, | ||
| - | и закрывает такие долго висящие сессии по таймауту неактивности. Такое поведение предусмотрено стандартом и поддержано большинством производителей CG-NAT.  | ||
| - | |||
| - | В СКАТ время жизни сессий можно корректировать следующими параметрами | ||
| - | < | ||
| - | lifetime_flow=60 | ||
| - | lifetime_flow_long=600 | ||
| - | </ | ||
| - | где lifetime_flow_long время жизни в секундах неактивных TCP-сессий, | ||
| - | <note warning> | ||
| - | (который задается в параметрах nat пула).</ | ||
| - | |||
| - | Поэтому при необходимости поддержания долгоиграющих неактивных соединений рекомендуется | ||
| - | использовать механизм tcp keep-alive, когда периодически в сессии передается пустой пакет, | ||
| - | который сигнализирует, | ||
| - | |||
| - | Настроить tcp keep-alive можно как индивидуально для приложения на стороне сервера или клиента,  | ||
| - | так и на уровне операционной системы для всех приложений сразу. | ||
| - | |||
| - | **Пример** настройки на ssh сервере | ||
| - | < | ||
| - | в файл / | ||
| - | ServerAliveInterval 60 | ||
| - | </ | ||
| - | |||
| - | **Пример** настройки на ssh клиенте | ||
| - | < | ||
| - | в файл ~/ | ||
| - | Host * | ||
| - | ServerAliveInterval 60 | ||
| - | или в командной строке | ||
| - | ssh -o TCPKeepAlive=yes -o ServerAliveInterval=60 user@example.com | ||
| - | </ | ||
| - | |||
| - | **Пример** настройки для всех приложений в centos | ||
| - | < | ||
| - | в файл / | ||
| - | net.ipv4.tcp_keepalive_time = 600 | ||
| - | net.ipv4.tcp_keepalive_intvl = 60 | ||
| - | net.ipv4.tcp_keepalive_probes = 20 | ||
| - | </ | ||
| - | |||
| - | |||