小编Mar*_*tin的帖子

如何使用 MAC 和 ebtables 防止 IP 欺骗?

我正在尝试在ebtables 中创建IP-MAC配对规则。可用的教程和相关问题 [1] 很少,但我有一些特定的设置。

环境: 我有很多物理主机。每个主机都有很少的以太网卡,以绑定方式加入并用作桥接器的从属设备。每个主机上有很多虚拟机(kvm、qemu、libvirt)。每个虚拟机都通过名为 vnet[0-9]+ 的新端口连接到其物理主机的网桥。没有 NAT。网络工作正常,所有物理主机都可以 ping 通,所有虚拟机也可以。每个虚拟机都有自己的 IP 地址和 MAC 地址。

问题:在虚拟机内部,IP 地址可以更改为另一个。

找到的解决方案:在 ebtables 站点 [2] 上有已知的解决方案,但是当仅使用一台主机时,此解决方案适用。它允许所有流量,如果来自 IP 的数据包的 MAC 不是允许的,则数据包将被丢弃。如果有多个主机,则需要在所有主机上注册所有现有的 IP-MAC 对。需要逆向策略解决方案。

精心设计的解决方案:我试图以相反的方式使用 ebtables。这是我尝试过的示例。

例 1

Bridge table: filter
Bridge chain: INPUT, entries: 2, policy: DROP
-i bond0 -j ACCEPT 
-p IPv4 -s 54:52:0:98:d7:b6 --ip-src 192.168.11.122 -j ACCEPT 
Bridge chain: FORWARD, entries: 0, policy: ACCEPT
Bridge chain: OUTPUT, entries: 0, policy: ACCEPT
Run Code Online (Sandbox Code Playgroud)

例2

Bridge table: …
Run Code Online (Sandbox Code Playgroud)

networking virtual-machines bridge filter spoofing

10
推荐指数
1
解决办法
5633
查看次数

标签 统计

bridge ×1

filter ×1

networking ×1

spoofing ×1

virtual-machines ×1