阻止 DHCP 客户端在新 VLAN 上接收旧 IP 地址

阻止 DHCP 客户端在新 VLAN 上接收旧 IP 地址

我有一台运行 Windows Server 2008 R2 的 DHCP 服务器。它配置了一个包含 5 个成员作用域的超级作用域。我的每个子网都有一个作用域。

问题就在这里,如果我在 VLAN 12 上,我会得到一个 VLAN 12 IP,但如果我断开笔记本电脑的连接,走到 VLAN 1 上的端口并重新连接,什么都不起作用。这很合理,因为我的笔记本电脑仍然有 VLAN 12 IP 地址。我执行 ipconfig /release 后跟更新,但我得到的 IP 地址相同,仍然是 VLAN 12 地址!

我猜这是因为我的笔记本电脑请求相同的 IP 地址。我怎样才能让我的笔记本电脑不请​​求相同的 IP?或者更好的是,我如何配置 DHCP 以知道笔记本电脑在另一个 VLAN 上并且不给它相同的 IP?

答案1

既然您使用 VLAN,我完全不明白为什么还要使用超级作用域。

您应该尝试在连接所有这些 VLAN 的路由器上使用 dhcp 中继 - 我很确定它会对您有用。

答案2

您是否绝对确定是您的笔记本电脑保留了 IP,而不是 DHCP 服务器错误地分配了相同的 IP,因为它已经有了该 MAC 地址的租约(尽管在不同的 vlan 上)?由于您在手动续订时仍然获得相同的 IP,因此我认为 DHCP 服务器应该为此负责。

当客户端系统在接口上丢失链接时,它应该丢弃其 DHCP IP,但可以通过检查断开连接和重新连接另一个 VLAN 之间的地址来验证。请随意真的通过使用 wireshark 捕获续订对话来确定。

但是,听起来问题出在 DHCP 服务器上 - 它在什么 DHCP 服务器软件上运行,如何配置?您的中继如何配置,以便将请求从不同的 VLAN 发送到服务器?

答案3

该答案假设您已经配置了 IP-Helper 来中继 DHCP 请求并为交换机上的端口分配了正确的 VLAN。

删除 Windows 2008 R2 上的 DHCP 超级作用域,不要使用超级作用域。不用担心,删除超级作用域不会删除子作用域。然后,转到每个作用域的属性,转到高级选项卡,为动态分配 IP 地址到客户端选择“两者”。为 BOOTP 客户端的租约期限选择“无限制”。然后单击应用,然后单击确定。

在客户端工作站上释放并更新 IP 地址。

它们现在应该会获得相应 VLAN 的正确 IP。

相关内容