使用网桥时过滤物理接口上转发的流量

使用网桥时过滤物理接口上转发的流量

我的设置有一个位于两个物理接口上的桥接器

[root@CentOS8-Middle ~]# nmcli c s 
NAME       UUID                                  TYPE      DEVICE 
br0        6bb79a71-235e-4c1b-b1bb-33262214144b  bridge    br0    
vbr0-port1  bf6b5b16-0e64-4802-928f-534564203af3  ethernet  ens224 
vbr0-port2  251016a7-38e7-4390-a69a-8a91c37c64db  ethernet  ens256 
ens192     573ba4c1-1c97-4704-ba36-c75a69635e8e  ethernet  ens192 
[root@CentOS8-Middle ~]#

我能够过滤 iptalbes 中的流量,通过执行以下操作将其发送到 nfq 过滤器

-A FORWARD -i br0 -p icmp -j NFQUEUE --queue-num 1 --queue-bypass

不过,我想根据流量进入的物理接口进行过滤。我尝试了以下几行:

iotables -I FORWARD -i ens256 -p icmp -j NFQUEUE --queue-num 1 --queue-bypass
iptables -I INBOUND -i ens256 -p icmp -j NFQUEUE --queue-num 1 --queue-bypass
iptables -I OUTBOUND -i ens256 -p icmp -j NFQUEUE --queue-num 1 --queue-bypass

每次当我跑步时

iptables -L -nv

我看到了 FORWARD 链上的所有流量。这样可以吗?如果不是,我是否需要使用 iptalbles 进行转发(而不是 NetworkManager)?

答案1

下面的规则似乎解决了我的担忧。

iptables -I FORWARD -m physdev --physdev-is-bridged  --physdev-in ens256 --physdev-out ens224 -j NFQUEUE --queue-num 1 --queue-bypass
iptables -I FORWARD -m physdev --physdev-is-bridged  --physdev-in ens224 --physdev-out ens256 -j NFQUEUE --queue-num 2 --queue-bypass

相关内容