четверг, 21 апреля 2016 г.

Смотрим и чистим таблицу conntrack

Иногда бывает так, что что-то сбивается в коннтрак таблицах, из недавнего: поменяли роутинг для одной сети, которая доступна напрямую, но ранее ходила через default gateway, соответственно внешний айпи стал другой. С TCP это не проблема, сессии сами отвалятся, а вот с UDP (та же телефония) будут проблемы. Совсем простое решение - ребутнуть шлюз, чуть сложнее - на проблемных телефонах поменять src port, это создаст новые правила в conntrack. Но мы попытаемся решить более цивилизованно.

Итак, есть /proc/net/nf_conntrack, в нём можно найти наши проблемные записи, но напрямую их поправить не удастся (или можно, тогда как?). Поставим conntrack-tools, в центоси так пакет и называется.
Вывести полный список, аналог nf_conntrack:
conntrack -L conntrack

Список для нужного внутреннего айпи
conntrack -L conntrack -s 192.168.0.100

На какой-то адрес
conntrack -L conntrack -d 8.8.8.8

...коннекты, проходящие через старый гейт
conntrack -L conntrack -q 192.168.0.1

Удалить проблемную запись
conntrack -D conntrack -s 192.168.0.100 -q 192.168.0.1

Есть и "оружие последнего дня", полная очистка таблицы
conntrack -F conntrack

Ну и полезно для общего развития заглянуть в conntrack -h и сюда
http://conntrack-tools.netfilter.org/manual.html

Комментариев нет:

Отправить комментарий