0

在这种情况下,应用程序会告诉网络上的设备从网络路由器的 DHCP 服务器获取其 IP 地址。如果 DHCP 服务器不可用,则设备的行为会变得不稳定。有没有一种方法可以在程序上检测网络路由器是否支持 DHCP?或者,这是设备在尝试从 DHCP 服务器获取其 IP 地址时需要做的事情吗?

4

2 回答 2

5

设备上的 DHCP 客户端正是这样做的。嗯,差不多。

DHCP DISCOVERY 消息在链路上广播。然后,如果有任何 DHCP 服务器愿意为这个特定的 MAC 地址提供服务,则每个服务器都会从其池中保留一个 IP 地址,并以 OFFER 消息进行响应。客户端然后选择它想要“绑定”到的服务器并发出请求消息。服务器使用 ACK 消息确认 IP 地址的授予租约。
客户端通过简单地超时等待提供来发现 DHCP 服务器的“不可用”。

看看DHCPing项目。可能会给你一些想法。

DHCP RFC 的链接:

RFC 2131、动态主机配置协议
RFC 2132、DHCP 选项和 BOOTP 供应商扩展

于 2009-10-22T17:31:16.460 回答
0

我是这个 Windows DHCP C API的东西。

于 2009-10-23T11:35:39.857 回答