语境
几天前,我在我的机器上安装了 Debian 12,从那时起我就遇到了(出站)IPv6 网络的一些问题。从我迄今为止的调查来看(在这个论坛和其他 Linux 论坛上浏览了无数相关帖子,但没有一个特别有帮助),在我看来,IPv6 的默认网关配置错误,但我目前束手无策。关于如何从这里继续。
重现问题
一个简单的 ping 就足以说明这一点:
$ ping -6 example.org
PING example.org(2606:2800:220:1:248:1893:25c8:1946 (2606:2800:220:1:248:1893:25c8:1946)) 56 data bytes
^C
--- example.org ping statistics ---
18 packets transmitted, 0 received, 100% packet loss, time 17394ms
而它适用于常规的IPv4:
$ ping -4 example.org
PING (93.184.216.34) 56(84) bytes of data.
64 bytes from 93.184.216.34 (93.184.216.34): icmp_seq=1 ttl=52 time=116 ms
64 bytes from 93.184.216.34 (93.184.216.34): icmp_seq=2 ttl=52 time=194 ms
^C
--- ping statistics ---
2 packets transmitted, 2 received, 0% packet loss, time 1002ms
rtt min/avg/max/mdev = 116.459/155.372/194.285/38.913 ms
该问题不仅限于 ICMP 数据包,如果针对 IPv6 地址,wget
也curl
无法建立连接。这也表明 DNS 不是这里的问题,因为 IPv6 地址已成功解析。
设置
如前所述,我的设置是最近安装的带有 GNOME 的 Debian 12。这意味着网络由网络管理器处理,其中 IPv6 方法设置为auto
并ip6-privacy
已启用(我已经尝试禁用它但无济于事)。
相关命令的输出:
$ sudo dmesg | grep IPv6
[10528.771325] IPv6: ADDRCONF(NETDEV_CHANGE): wlp2s0: link becomes ready
[10559.614635] IPv6: ADDRCONF(NETDEV_CHANGE): wlp2s0: link becomes ready
[18402.308519] IPv6: ADDRCONF(NETDEV_CHANGE): wlp2s0: link becomes ready
[18406.196405] IPv6: ADDRCONF(NETDEV_CHANGE): wlp2s0: link becomes ready
[18444.190916] IPv6: ADDRCONF(NETDEV_CHANGE): wlp2s0: link becomes ready
所以看起来 IPv6 是在内核级别启用的(?)。
$ ip -6 route
2a00:d100:18e2:9f00::/64 dev wlp2s0 proto ra metric 600 pref medium
fe80::/64 dev wlp2s0 proto kernel metric 1024 pref medium
default via fe80::1 dev wlp2s0 proto ra metric 600 pref medium
据我所知,fe80::
是为了本地网络因此它不应该是默认情况下将请求路由到的位置。另一方面,2a00:d100:18e2:9f00::/56
是我的路由器声称的值前缀委托,但我不完全确定这意味着什么。我尝试将其设置为默认网关(使用sudo route add -A inet6 default gw 2a00:d100:18e2:9f00::
),但这也没有成功。
$ sudo route -A inet6
Kernel IPv6 routing table
Destination Next Hop Flag Met Ref Use If
2a00:d100:18e2:9f00::/64 [::] U 600 1 0 wlp2s0
fe80::/64 [::] U 1024 1 0 wlp2s0
[::]/0 _gateway UG 600 5 0 wlp2s0
localhost/128 [::] Un 0 7 0 lo
zenbook/128 [::] Un 0 3 0 wlp2s0
zenbook/128 [::] Un 0 2 0 wlp2s0
zenbook/128 [::] Un 0 3 0 wlp2s0
ff00::/8 [::] U 256 6 0 wlp2s0
[::]/0 [::] !n -1 1 0 lo
$ traceroute -6 google.com
traceroute to google.com (2a00:1450:4003:80f::200e), 30 hops max, 80 byte packets
1 * * *
2 * * *
3 * * *
[continues ...]
28 * * *
29 * * *
30 * * *
如果需要任何其他命令输出才能取得进展,请在评论中告诉我。如有任何帮助,我们将不胜感激。