ping localhost時出現:
在cmd中ping localhost解析出來的是ipv6的::1的原因是windows有個優先解析列表,當ipv6的優先級高於ipv4時,就會出現這種情況。
具體解決方法如下:
1.打開命令提示符:輸入命令netsh interface ipv6 show prefixpolicies,查看ipv6的優先級:
請注意,ipv6地址(::/0)優先於ipv4地址(::/96,::ffff:0:0/96),因此我們可以制定策略,使ipv6不會比任何ipv4地址有利。其中,標簽表示優先級,0表示優先級最高,依次類推。
2.需要設置使::/96、::ffff:0:0/96的優先級高於::/0和::1/128,在命令行中依次設置優先級:
netsh int ipv6 set prefix ::/96 50 0
netsh int ipv6 set prefix ::ffff:0:0/96 40 1
netsh int ipv6 set prefix 2002::/16 30 2
netsh int ipv6 set prefix 2001::/32 20 3
netsh int ipv6 set prefix ::1/128 10 4
netsh int ipv6 set prefix ::/0 5 5
3.執行netsh interface ipv6 show prefixpolicies命令完成之后查看優先級如下:
4.再執行命令ping localhost如下:
成功解決。