一、问题发生

在Windows 10系统的命令提示符cmd中,执行命令ping localhost,并没有出现我与其的ip地址“127.0.0.1”,而是“[::1]”。
在这里插入图片描述

二、问题原因

在cmd中ping localhost解析出来的是ipv6的::1的原因是windows有个优先解析列表,当ipv6的优先级高于ipv4时,就会出现这种情况。

三、问题解决

1.查看优先级列表

netsh interface ipv6 show prefixpolicies

请注意,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 35 2
netsh int ipv6 set prefix 2001::/32 30 3
netsh int ipv6 set prefix ::1/128 10 4
netsh int ipv6 set prefix ::/0 5 5
netsh int ipv6 set prefix fc00::/7 3 13
netsh int ipv6 set prefix fec0::/10 1 11
netsh int ipv6 set prefix 3ffe::/16 1 12

3. 测试

在这里插入图片描述
【原文链接:Win10 localhost无法访问ping解析为::1的解决方法

Logo

旨在为数千万中国开发者提供一个无缝且高效的云端环境,以支持学习、使用和贡献开源项目。

更多推荐