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

iptables фильтр по мостовому интерфейсу

Я пытаюсь сделать QOS-сервер с помощью интерфейса IMQ для мониторинга входящего трафика.

моя установка:

                     br0
                      |
WAN <=> eth1 => IMQ1 <|> eth0 <=> LAN

все идет хорошо, пока я не попытаюсь добавить правило iptables для перенаправления входящего трафика с eth1 на IMQ1.

похоже, я не могу сказать: принимать весь входящий пакет от eth1 до целевого IMQ.

iptables -t mangle -A PREROUTING -i eth1 -j IMQ --todev 1

более простой пример говорит, что ни один пакет не попал в часть «-i eth1» этого правила.

посмотри это :

# iptables -t mangle -A PREROUTING -i eth1 -p TCP -j ACCEPT
# iptables -t mangle -A PREROUTING  -p TCP -j ACCEPT

# iptables -x -n -v -t mangle -L PREROUTING         
> Chain PREROUTING (policy ACCEPT 4 packets, 305 bytes)
>     pkts      bytes target     prot opt in     out     source             destination         
>        0        0 ACCEPT     tcp  --  eth1   *       0.0.0.0/0            0.0.0.0/0           
>      125     8214 ACCEPT     tcp  --  *      *       0.0.0.0/0            0.0.0.0/0    

как сказать «Я хочу, чтобы весь трафик, входящий с eth1, шел в IMQ»?

похоже, что «-i» не предназначен для мостовых интерфейсов.

в руководстве объясняется, что для этого предназначен модуль Physdev.

мое рабочее правило:

iptables -t mangle -A PREROUTING -m physdev --physdev-in eth1 -j IMQ --todev 1