admin管理员组

文章数量:1577483

我之前一直使用IPv4和IPv6双栈的网络,并且默认IPv6优先访问,不知道哪天突然IPv4优先访问了。可能是IPv6网络不稳定,导致IPv6降级不优先了。
直接ping域名是访问IPv4的地址。

C:\Users\hale>ping iteachs

正在 Ping iteachs [45.32.92.244] 具有 32 字节的数据:
来自 45.32.92.244 的回复: 字节=32 时间=166ms TTL=48
来自 45.32.92.244 的回复: 字节=32 时间=161ms TTL=48
来自 45.32.92.244 的回复: 字节=32 时间=160ms TTL=48

45.32.92.244 的 Ping 统计信息:
    数据包: 已发送 = 3,已接收 = 3,丢失 = 0 (0% 丢失),
往返行程的估计时间(以毫秒为单位):
    最短 = 160ms,最长 = 166ms,平均 = 162ms
Control-C
^C
C:\Users\hale>

加上-6参数才能ping IPv6地址。

C:\Users\hale>ping -6 iteachs

正在 Ping iteachs [2001:19f0:6001:799:5400:ff:fe5b:95f4] 具有 32 字节的数据:
来自 2001:19f0:6001:799:5400:ff:fe5b:95f4 的回复: 时间=156ms
来自 2001:19f0:6001:799:5400:ff:fe5b:95f4 的回复: 时间=155ms

2001:19f0:6001:799:5400:ff:fe5b:95f4 的 Ping 统计信息:
    数据包: 已发送 = 2,已接收 = 2,丢失 = 0 (0% 丢失),
往返行程的估计时间(以毫秒为单位):
    最短 = 155ms,最长 = 156ms,平均 = 155ms
Control-C

查看IPv6的前缀策略

C:\Users\hale>netsh interface ipv6 show prefixpolicies
查询活动状态...

优先顺序    标签   前缀
----------  -----  --------------------------------
        50      0  ::/96
        40      1  ::ffff:0:0/96
        35      2  2002::/16
        30      3  2001::/32
        10      4  ::1/128
         5      5  ::/0
         3     13  fc00::/7
         1     12  3ffe::/16
         1     11  fec0::/10

C:\Users\hale>

发现::ffff:0:0/96的优先级比::/0的优先级还高,该地址为IPv4的映射地址。

使用命令将优先级调整:

netsh interface ipv6 set prefixpolicy ::/0 45 5 persistent
C:\WINDOWS\system32>netsh interface ipv6 set prefixpolicy ::/0 45 5 persistent
确定。

C:\WINDOWS\system32>

然后再使用ping测试

C:\WINDOWS\system32>ping iteachs

正在 Ping iteachs [2001:19f0:6001:799:5400:ff:fe5b:95f4] 具有 32 字节的数据:
来自 2001:19f0:6001:799:5400:ff:fe5b:95f4 的回复: 时间=157ms
来自 2001:19f0:6001:799:5400:ff:fe5b:95f4 的回复: 时间=155ms
来自 2001:19f0:6001:799:5400:ff:fe5b:95f4 的回复: 时间=159ms

2001:19f0:6001:799:5400:ff:fe5b:95f4 的 Ping 统计信息:
    数据包: 已发送 = 3,已接收 = 3,丢失 = 0 (0% 丢失),
往返行程的估计时间(以毫秒为单位):
    最短 = 155ms,最长 = 159ms,平均 = 157ms
Control-C
^C
C:\WINDOWS\system32>

这会就正常了,然后查看IPv6的前缀策略

C:\Users\hale>netsh interface ipv6 show prefixpolicies
查询活动状态...

优先顺序    标签   前缀
----------  -----  --------------------------------
        50      0  ::/96
        45      5  ::/0
        40      1  ::ffff:0:0/96
        35      2  2002::/16
        30      3  2001::/32
        10      4  ::1/128
         3     13  fc00::/7
         1     12  3ffe::/16
         1     11  fec0::/10

C:\Users\hale>

这回问题解决了,另外还可以使用netsh interface ipv6 reset将IPv6进行重置也可以解决。

另外,根据调整::ffff:0:0/96的优先级可以切换IPv4和IPv6的优先访问顺序。

参考文章,只不过他们都是调整IPv4更优:
https://kb.firedaemon/support/solutions/articles/4000160803-prioritising-ipv4-over-ipv6-on-windows-10-and-11
https://blog.csdn/weixin_39851008/article/details/116686079
https://blog.csdn/xufulin2/article/details/122467045

本文标签: