是否可以使用 ebtables 在简单的以太网接口上通过 MAC 地址过滤流量,而无需桥接?

是否可以使用 ebtables 在简单的以太网接口上通过 MAC 地址过滤流量,而无需桥接?

我有一台 Linux 机器(我的工作站)。从那里我可以 ping 其他本地机器,比如 192.168.1.22。假设我想通过 MAC 地址禁止与 192.168.1.22 的通信。我正在尝试一个简单的规则:

ebtables -I INPUT -s 00:24:1d:c9:0a:27 -j DROP

但我仍然可以 ping 该主机。ebtables 是否仅限于过滤桥接接口上的流量?

答案1

是的,ebtables 仅对穿越桥接接口的帧起作用。但是,您可以进行良好的分层违规并使用 -m mac --mac-source iptables 选项。

每当我使用 netfilter 进行任何复杂操作时,我都会把这张图放在手边: http://jengelh.medozas.de/images/nf-packet-flow.png

答案2

Thor,你的建议是正确的,而且有效。我刚刚测试过了。

您可能需要通过使用桥接接口本身替换桥接接口来更新路由,以确保您没有绕过桥接。

ip route del 192.168.1.0/24 dev eth0  proto kernel  scope link  src 192.168.1.1
ip route add 192.168.1.0/24 dev br0  proto kernel  scope link  src 192.168.1.1

相关内容