本文主要是介绍windows 固定ip多了一个169.254.xx.xx的ip的问题,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
很久之前有个问题,网络适配器查看详细信息,发现ip地址变成两个了,一个是设置的固定ip,一个是169.254开头的无效ip。经过长时间的对比发现,出现这种问题的情况下与环境中是否存在dhcp服务器有很大的关系。
所以查了一下dhcp和arp包,发现一个技术点
APIPA是一个DHCP故障转移机制。当DHCP服务器出故障时, APIPA在169.254.0.1到 169.254.255.254的私有空间内分配地址
查找tcpip/params的注册表,研究了每个字段
IPAutoconfigurationEnabled | Microsoft Learn
HKEY_LOCAL_MACHINE/SYSTEM/CurrentControlSet/Services/Tcpip/Parameters下的IPAutoconfigurationEnabled字段(不存在就创建DWORD类型)设置为0,然后禁用网卡,启动网卡,ip里面的确没有169.254的ip了,但是还是没有网络。
ArpRetryCount | Microsoft Learn
HKEY_LOCAL_MACHINE/SYSTEM/CurrentControlSet/Services/Tcpip/Parameters下的ArpRetryCount字段(不存在就创建DWORD类型)设置为0,然后禁用网卡,启动网卡,ip还是有问题,重启后ip正常了
于是采用了设置ArpRetryCount设置为0的方案,根据程序运行环境判断ArpRetryCount设置为0符合使用场景。
这篇关于windows 固定ip多了一个169.254.xx.xx的ip的问题的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!