DHCP 中继和目标 NAT 是否应该一起工作?

网络工程 纳特 dhcp 脱氧核糖核酸
2022-02-09 05:03:17

拓扑

[PC1]---lan----[RT1 / DHCP relay / DNAT]---wan---[DHCP server]
[PC2]---------/ /
[PC3]----------/
  • DHCP 中继将 DHCP 广播变成单播,
  • 将其转发到 DHCP 服务器
  • 然后响应并发送 DHCP 回复
  • 到达 PC1。

但是 PC1 将 DHCP 服务器信息保存在其网络配置中。然后,当半租期到来时,它使用单播直接从 DHCP 服务器请求一个新地址。

问题:源 IP 是 PC1 IP(无源 nat)。因此 DHCP 服务器将目标 IP 设置为 PC1 的 IP - 它在路由器上被丢弃。

问题:这个问题的常见解决方案是什么?源 NAT 配置?还有什么其他方法可以解决它?

1个回答

我认为路由器配置有问题,因为这应该可以工作。

当客户端 PC 根本没有 IP 地址时,它会进行广播,并且路由器能够使用其 LAN 接口将请求单播到 DHCP 服务器,对吗?所以很明显DHCP服务器能够回复路由器的LAN接口。那么,当租约更新时间到来时,为什么 PC 做同样的事情会有什么不同呢?路由器应该对其进行 NAT,并且来自 DHCP 服务器的回复应该通过 NAT 返回。如果没有,那么我认为你的路由器有问题。您应该检查是否允许 UDP 通过路由器返回。如果路由器上有任何类型的防火墙,请检查它是否遵循 UDP 连接,以允许它们通过防火墙返回。

解决此问题的其他方法是:

  1. GRE隧道
  2. VPN隧道
  3. 在路由器上设置DHCP
  4. 部署本地 DHCP 服务器
  5. 删除 NAT,或至少修改 NAT,以便客户端和 DHCP 之间的流量不会被 NAT