Windows DHCP 客户端不得发送 UID

Windows DHCP 客户端不得发送 UID

有没有办法告诉 Windows DHCP 客户端不要在其 DHCP 请求中发送这个无用的 UID 参数?

问题是:我们有双启动机器(Windows 和 Linux)。Windows 首次启动时,它会根据随附的 UID 获取租约。后续的 Linux DHCP 请求会获取新的租约,因为那里的 DHCP 客户端(与 Windows 以外的世界其他地方一样)不会发送 UID。DHCP 协议允许这样做,如果有带 UID 的租约,则优先考虑它,甚至不考虑 MAC 地址。

我们的 DHCP 服务器有一个配置选项,可以忽略 UID 并仅根据 mac 地址处理请求。然而,这违反了 DHCP 协议,因此更改此选项会非常麻烦,尽管这很可能不会造成任何损害。

快速谷歌搜索只找到一个邮件列表/论坛对话,其中一些微软人员实际上告诉主题发起者摆弄 DHCP 服务器或重新配置 DCHP 客户端以发送与 Windows 相同的 UID。

答案1

对于安装了 2014 年 11 月更新汇总的 Windows 8.1 和 Windows 10,这是可能的:https://support.microsoft.com/en-us/kb/3004537

答案2

我不明白“痛苦”的部分(主要是它到底会造成什么痛苦)。我假设 UID 代表“唯一标识符”。MAC 地址是唯一标识符,重复的地址很少见。这样做没有坏处。

答案3

Windows 的这种行为是经过设计的,符合规范。在 Linux DHCP 客户端达到 2131 规范之前(这才 15 年,在 *nix 时代算不上什么),最好的办法是将 DHCP 服务器设置为忽略客户端标识符,而是依赖于 chaddr 字段(本质上将其恢复为 rfc 1541 行为)。您无法从 Windows 客户端中删除 UID 字段。

答案4

我们的 DHCP 服务器有一个配置选项,可以忽略 UID 并仅根据 mac 地址处理请求。然而,这违反了 DHCP 协议,因此更改此选项会非常麻烦,尽管这很可能不会造成任何损害。

我会把这条规则归类为在穿过一条荒芜的街道时,在人行横道左侧几米处过马路。

如果客户端没有发送 UID 或服务器忽略了它,在我看来应该没什么区别。Windows 客户端请求 IP 并获取 IP。它如何知道服务器选择它的依据是什么?

此外,更改一台服务器比更改所有客户端要容易得多。

相关内容