在全新 Debian 12 安装中调试 IPv6 连接

在全新 Debian 12 安装中调试 IPv6 连接

语境

几天前,我在我的机器上安装了 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 地址,wgetcurl无法建立连接。这也表明 DNS 不是这里的问题,因为 IPv6 地址已成功解析。

设置

如前所述,我的设置是最近安装的带有 GNOME 的 Debian 12。这意味着网络由网络管理器处理,其中 IPv6 方法设置为autoip6-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  * * *

如果需要任何其他命令输出才能取得进展,请在评论中告诉我。如有任何帮助,我们将不胜感激。

相关内容