내 설정에는 두 개의 물리적 인터페이스에 브리지가 있습니다.
[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 체인의 모든 트래픽을 볼 수 있습니다. 괜찮나요? 그렇지 않은 경우 전달을 위해 (NetworkManager 대신) iptalbles를 사용해야 합니까?
답변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