【问题标题】:Can I turn off the WinCE DHCP server so it always uses zeroconfig?我可以关闭 WinCE DHCP 服务器以使其始终使用 zeroconfig 吗?
【发布时间】:2012-05-29 11:22:28
【问题描述】:

我们有一个旧版 WinCE 设备,它在封闭的以太网网络上运行多年。但是现在我们正试图让它与其他设备很好地协同工作,但当网络上有 DHCP 服务器时它会失败。

问题是原工程师为了加快开机速度在注册表中设置了“DhcpEnableImmediateAutoIP”。这有效地关闭了 WinCE 在确定没有 DHCP 服务器并执行 zeroconfig 之前等待一段时间的超时。但是因为它实际上并没有关闭 DHCP 请求,所以它使用 zeroconfig 分配一个 IP 地址,然后在几秒钟后从 DHCP 服务器获得第二个 IP 地址时搞砸了。

我可以看到“DhcpEnableImmediateAutoIP”是控制 DHCP 的几个键之一,所以我想知道如果我将“EnableDHCP”设置为 0 会发生什么?这会关闭 DHCP 请求,因此它只执行 zeroconfig,还是关闭 zeroconfig,因此它永远不会获得 IP 地址?

【问题讨论】:

  • 这就是我在 StackOverflow 上发现的烦人之处——有人投票结束了这个问题,但没有费心解释原因。问题无效吗?我说得不好?不要打了就跑。

标签: windows-ce dhcp zeroconf


【解决方案1】:

我最终发现 EnableDHCP 会关闭 DHCP,然后采用静态 IP 设置(因此您需要提供 IP 地址、子网掩码和可选的网关/dns)。

以下是您可以设置的所有选项: http://msdn.microsoft.com/en-us/library/ms884977.aspx

保留 DhcpEnableImmediateAutoIP,为 AutoInterval 设置可能的最高值:REG_DWORD 注册表项,它指定时间间隔,以秒为单位,用于验证 DHCP 服务器是否可用。该值在内部乘以 * 1000,以毫秒为单位,因此您可以设置的不换行的最大值对应于 ~49 天。如果设备始终处于开启状态,那么在那段时间之后,无论如何都会搞砸一切......

一个确定的解决方案可能是克隆 DHCP 客户端 (D:\WINCE600\PRIVATE\WINCEOS\COMM\DHCP) 并对其进行修改以不发送发现数据包,例如以某种方式存根当自动间隔计时器已过。

【讨论】:

  • 我有一台装有 Windows CE 6.0 的设备也有同样的问题。我已经看到 DHCP 服务器提供 IP 地址,但设备不发送任何响应。几秒钟后,设备为此设备分配默认 IP 地址。同一台设备在此网络中工作,但在其他位置。设备端可能是什么问题?当我将笔记本电脑连接到这些端口时,它正在工作,但设备没有获得 IP 地址。任何解决此问题的建议。
猜你喜欢
  • 2017-05-08
  • 2021-06-10
  • 1970-01-01
  • 2011-05-02
  • 1970-01-01
  • 1970-01-01
  • 2018-11-06
  • 2021-03-20
相关资源
最近更新 更多