~1500 правил. 2-3 кастомные цепочки. Тажке есть conntrack в нем 14-17 тыс соединений и nfacct с парой десятков счетчиков.
шлюз как водится смотрит в локальную сеть и инет.
в инете есть стоящая прямо у провайдера машинка с доступом (provider), на которой запущен iperf3 -S
в локалке есть машинка (server) которая смотрит в шлюз.
суть проблемы: iperf3 запущеный на server (1 поток, tcp) в сторону provider показывает
а) пропускную способность значительно меньшую, чем iperf запущеный с самого gw (350 мбит против 850)
б) в посекундной раскладке iperf3 хорошо видно что скорость проседает с течением времени, в не растёт или остается постоянной.
в) если сбросить все правила iptables и добавить единственное MASQUARADE - скорость прыгает на 500+ то есть дело явно в правилах iptables
вопрос: куда копать?
куда уже копнули:
часть правил пробовали выносить - не помогло
часть правил "упаковали" в ipset, снизив общее количество до 1000 - не помогло
я руками вставил правила в самом начале по всем цепочкам во всех таблицах чтобы трафик с server мэтчился на ACCEPT сразу же - похоже что тоже не очень помогло.(тут я на 100% конечно не уверен, что все сделал правильно)
any ideas?
зачем 1500 правил?
Обсуждают сегодня