Назад | Перейти на главную страницу

Как перенаправить интенсивный трафик с помощью iproute2

У меня есть два подключения к Интернет-провайдеру (Link1 и Link2), я хочу направить весь трафик загрузок, размер которого превышает 1 МБ, через Link2.

Я создал таблицу маршрутизации Link2 и маршрутизирую все пакеты, которые имеют отметку 2.

ip route добавить по умолчанию через 192.168.1.253 table link2 ip rule add fwmark 2 table link2

Он работает, когда я просто использую его, например, с любыми http-пакетами

iptables -t mangle -A PREROUTING -p tcp -s 192.168.1.81 --dport 80 -j MARK --set-mark 2 (работает)

Теперь, когда я пытаюсь отметить, если размер загрузки превышает 1 МБ, он работает не так, как ожидалось.

iptables -t mangle -A PREROUTING -p tcp -s 192.168.1.81 --dport 80 -m connbytes --connbytes 1048576: --connbytes-dir both --connbytes-mode bytes -j MARK --set-mark 2 (not работает)

Может ли кто-нибудь сказать мне, что мне здесь не хватает.

Вы можете сделать это только в том случае, если ваш маршрутизатор является многосетевым и вы можете делать это только с исходящим трафиком. Это означает, что это возможно лишь в некоторых случаях.

Во всех остальных случаях вы нарушите соединение. Или для входящего трафика вы не можете контролировать, где он до вас доходит.

Связанный: Как определить загрузочный трафик с помощью iptables

Короче говоря, то, что вы хотите, невозможно.