目录

简介

先决条件

要求

使用的组件

问题

IP地址重复的原因

解决方案

相关信息

简介

本文档介绍Microsoft Windows Vista及更高版本的用户收到的“重复IP地址0.0.0.0”错误消息及其解决方法。

先决条件

要求

本文档没有任何特定的要求。

使用的组件

本文档不限于特定的软件和硬件版本。

本文档中的信息都是基于特定实验室环境中的设备编写的。本文档中使用的所有设备最初均采用原始（默认）配置。如果您的网络处于活动状态，请确保您了解所有命令的潜在影响。

问题

在Microsoft Windows Vista及更高版本中，Microsoft引入了一种新机制，用于在发生动态主机配置协议(DHCP)进程时检测网络上的重复地址。RFC 5227 中介绍了这一新的检测流程。

2 .1.1节中定义了此检测流程的一个触发器。 定义如下：

此外，如果在此时间段内，主机收到任何地址解析协议(ARP)探测功能，其中数据包的“目标IP地址”是探测地址，而数据包的“发送方硬件地址”不是任何主机接口的硬件地址，则主机应同样将此视为地址冲突，并向上述配置代理发出错误信号。如果两台（或更多）主机因某种原因无意中配置了相同地址，并且两台主机同时正在探测该地址以确认是否可以安全使用，则可能会发生这种情况。

Cisco IOS®使用源自地址0.0.0.0的地址地址的地址解析协议(ARP)探测功能来在IP设备跟踪发生时维护IP设备跟踪缓存，并且在Cisco IOS交换机上启用使用该功能的功能（例如802.1x）。IP设备跟踪的目的是让交换机获取并维护通过IP地址连接到交换机的设备列表。探测功能不会填充磁道条目。它用于在获取条目后激活和维护表中的条目。然后，在将访问控制列表(ACL)应用到接口以将ACL中的源地址替换为客户端IP地址时，将使用此IP地址。当访问列表与802.1x或思科交换机上的任何其他Flex-Auth功能配合使用时，此功能至关重要。

IP地址重复的原因

如果交换机在Microsoft Windows PC处于重复地址检测阶段时发出客户端的ARP探测功能，则Microsoft Windows会将该探测功能检测为重复的IP地址，并显示一条消息，指出在网络上发现0.0.0.0的重复IP地址。PC不会获取IP地址，用户必须手动释放/更新地址，断开并重新连接到网络，或者重新启动PC以获取网络访问权限。

下面是故障数据包序列的示例：

解决方案

有多种方法可用于解决此问题。以下是可能的解决方法列表：

- 防止此问题的最有效方法是配置交换机，以便它发送不符合RFC的ARP探测功能，以便从PC所在的VLAN中的交换机虚拟接口(SVI)获取探测功能。如果为虚拟局域网(VLAN)配置了SVI，并且接下来使用两个命令之一，则IP设备跟踪(IPDT)探测中的发送方IP地址永远不会是0.0.0.0。因此，可以确定不会发生重复IP地址错误。

此命令格式适用于较早的代码版本：

ip device tracking probe use-svi
此配置当前不会触发Microsoft Windows中的重复地址检测错误消息。此方法的注意事项是，运行DHCP的Microsoft Windows客户端所在的每个VLAN中的每台交换机上都必须存在SVI。此方法难以扩展，因此Cisco建议使用IP设备跟踪探测延迟作为主要方法。SVI目前在6500系列交换机平台上不可用。此命令在2900、3500和3700系列交换机平台上的Cisco IOS版本12.2(55)SE和4500系列交换机平台上的15.1(1)SG版本中实施。

此命令格式适用于较新的代码版本：

ip device tracking probe auto-source fallback

[override]

此最新命令行界面(CLI)命令是在Cisco IOS版本15.2(2)E中通过Cisco Bug ID CSCtn27420引入的。添加此命令是为了允许用户定义的ARP请求源IP地址，而不是要求使用默认源IP地址0.0.0.0。新的全局命令 ip device tracking probe auto-source fallback 0.0.0.x 255.255.255.0 override  允许用户在子网中使用主机地址0.0.0.x，以避免任何重复的IP地址问题。  如果特定VLAN没有SVI，则使用回退host-ip作为探测源。

- 用于解决此问题的主要非SVI替代方法是延迟来自交换机的探测，以便Microsoft Windows有时间完成重复IP地址检测。这仅适用于接入端口和链路连接场景。输入以下命令以延迟探测：

ip device tracking probe delay 10
RFC为重复地址检测指定一个十秒窗口。如果延迟设备跟踪探测，则几乎在所有情况下都会解决此问题。除了探测延迟，当交换机检测到来自PC的探测时，延迟也会重置。例如，如果探测计时器倒计到五秒钟，并且检测到来自PC的ARP探测，则该计时器重置为十秒。 如果同时启用DHCP监听，此窗口可以进一步减小，因为这样会重置计时器。 在极少数情况下，PC在交换机发送其探测之前发送一个ARP探测毫秒，这仍会触发向最终用户发送重复的地址消息。此命令在2900、3500和3700系列交换机平台的Cisco IOS版本15.0(1)SE、4500系列交换机平台的15.0(2)SG和6500系列交换机平台的12.2(33)SXI7版中引入。

- 用于解决此问题的另一种方法涉及对客户端进行故障排除，以确定链路联机后延迟进行重复地址检测的原因。交换机无法确定此过程发生的时间，因此请估计为探测延迟设置的时间以防止冲突。为了有效排除重复地址检测发生如此晚的原因，有关IP设备跟踪探测功能行为的进一步信息非常有用。

在以下两种情况下发送ARP探测：

- 与IPDT数据库中的当前条目关联的链路从DOWN状态变为UP状态。

- 已处于UP状态的链接与IPDT数据库中的条目相关联，其探测间隔已过期。

输入以下命令设置IP设备跟踪探测间隔：

ip device tracking probe interval

默认间隔是三十秒。要查看此信息，请输入以下命令：

show ip device tracking all

IP Device Tracking = Enabled

IP Device Tracking Probe Count = 3

IP Device Tracking Probe Interval = 30

IP Device Tracking Probe Delay Interval = 0

------------------------------------------------------------

IP Address  MAC Address   Vlan  Interface            STATE

------------------------------------------------------------

10.0.0.1   a820.661b.b384  301  GigabitEthernet0/1  INACTIVE

Total number interfaces enabled: 1

Enabled interfaces:

Gi0/1

初始条目从DOWN状态变为UP状态后，除非交换机在探测延迟间隔内看不到来自该设备的流量，否则不会发送进一步的探测。此外，如前所述，只有当PC发送ARP探测毫秒后，交换机才发送ARP探测（同时），冲突才会发生。

相关信息

- 思科技术支持和下载