Блог    Теги    RSS    Файлопомойка Мой Github

Блог №200 по адресу 0708:07C7 / Особенность маршрутизации в Linux

6 декабря 2018, 17:12
Про rp_filter в интернете не писал только ленивый. Но вот о чём редко пишут - rp_filter начисто игнорирует маркер пакета (nfmark, он же fwmark)! Т.е. если у вас настроена policy-based-routing с использованием ip rule fwmark, то обратный маршрут rp_filter будет рассчитывать неверно, что приведёт к тихому дропу пакетов. Что делать? Я вижу пару вариантов:
  • Отключить rp_filter на интерфейсе и прописать всё что он делает руками;
  • Использовать TOS для маркировки пакетов. Минусы - он восьмибитный, и ip rule не умеет применять к значению маску. К тому же нужно помнить, что TOS - не метаинформация внутри ядра, а реальное поле в IP-пакете со всеми вытекающими.
Есть также модуль iptables rpfilter. Он делает то же, что и встроенный в ядро rp_filter, но при этом его можно обвязать любыми (в рамках таблицы raw) правилами iptables. К сожалению, он доступен только для ядер >=3.3.
Теги: #linux  

Комментарии RSS

Ваше имя:

E-mail (будет скрыт):

Текст: