强制 Linux 桥接器通过 DHCP 获取 IP

强制 Linux 桥接器通过 DHCP 获取 IP

我试图理解以下场景中失败背后的逻辑:

A。如果 Linux 桥有 2 个接口,eth0(局域网)eth1(广域网)位于 ISP 设备(例如电缆调制解调器)后面,即使桥接接口 (br0) 设置为接收 IP 地址,它也不会接收 IP 地址。相反,它会将 DHCP 提供转发到桥接器后面的设备,即连接到 eth0 的任何设备。

该命令dhclient br0表明根本没有提供任何租约,并且dh客户端然后回到记录在dhclient.leases,这些都是过时且不相关的。

然而,

b.如果网桥位于 LAN 内部,且 eth1 暴露给内部 DHCP 服务器,则它会检索 IP 地址。其后面的设备也是如此。

/etc/网络/接口包含:

auto lo eth0 eth1 br0
iface eth0 inet dhcp
iface eth1 inet dhcp
iface br0 inet dhcp
     bridge_ports eth0 eth1
     bridge_stp off
  1. 这令人费解。知道为什么会发生这种情况吗?b 和 a 有什么不同?
  2. 有没有办法强制 br0 首先获取 IP 地址而不是将其传递给下游?

答案1

您的电缆调制解调器几乎肯定仅限于通过 DHCP 为单个“学习到的”MAC 地址提供 IP,该 MAC 地址是 eth1 接口的 MAC,而不是网桥的 MAC。

旁注:如果您桥接这些端口,那么您的 LAN 将直接连接到 WAN,因此不再是 LAN...希望您已经考虑到这一点并具有适当的安全性。

相关内容