使用 sixxs 在 radvd 上配置 ipv6,路由不起作用

使用 sixxs 在 radvd 上配置 ipv6,路由不起作用

所以今天早上,我一直在尝试使用我在 reddit 上找到的指南在我的网络上配置 IPv6http://ipv6friday.org/blog/2012/06/ipv6-enabling-training/。现在乍一看,这似乎是可行的,但是,我正在测试的机器虽然正确地从范围内获取了一个地址,但却没有按照我期望的方式路由 IPv6,正如演示中所示:

[服务器]“ping6 -c 3 www.facebook.com”的输出

PING www.facebook.com(www6-slb-10-03-frc1.facebook.com) 56 data bytes
64 bytes from www6-slb-10-03-frc1.facebook.com: icmp_seq=1 ttl=47 time=133 ms
64 bytes from www6-slb-10-03-frc1.facebook.com: icmp_seq=2 ttl=47 time=132 ms
64 bytes from www6-slb-10-03-frc1.facebook.com: icmp_seq=3 ttl=47 time=133 ms

--- www.facebook.com ping statistics ---
3 packets transmitted, 3 received, 0% packet loss, time 2002ms
rtt min/avg/max/mdev = 132.464/133.152/133.669/0.506 ms

[客户端]“ping6 -c 3 www.facebook.com”的输出

PING www.facebook.com(www6-slb-10-03-frc1.facebook.com) 56 data bytes

--- www.facebook.com ping statistics ---
3 packets transmitted, 0 received, 100% packet loss, time 2016ms

相关配置的副本如下。我已将使用的范围部分匿名化:

[服务器] /etc/radvd.conf

interface eth0 {
    AdvSendAdvert on;
    MinRtrAdvInterval 3;
    MaxRtrAdvInterval 10;
    AdvHomeAgentFlag off;

    prefix 2a01:348:6:XXX::/64 {

        AdvOnLink on;
        AdvAutonomous on;
        AdvRouterAddr off;

    }; 

    RDNSS 2a01:348:6:XXX::2 {

        AdvRDNSSLifetime 30;

    };
};

[客户端]“sudo ifconfig”的输出

wlan0     Link encap:Ethernet  HWaddr xx:xx:xx:xx:xx:dd  
          inet addr:192.168.1.31  Bcast:192.168.1.255  Mask:255.255.255.0
          inet6 addr: 2a01:348:6:XXX:XXX:feff:fe81:70dd/64 Scope:Global
          inet6 addr: fe80::c617:XXX:XXX:70dd/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:99921 errors:0 dropped:0 overruns:0 frame:0
          TX packets:74457 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:103144730 (103.1 MB)  TX bytes:10523791 (10.5 MB)

[客户端]“ip -6 route show dev wlan0”的输出

2a01:348:6:XXX::/64  proto kernel  metric 256  expires 86405sec
fe80::/64  proto kernel  metric 256 
default via fe80::202:XXX:XXX:7345  proto kernel  metric 1024  hoplimit 64

现在我的想法是,默认情况下,这是尝试通过环回路由 IPv6,而不是使用通过 2a01 的其他路由。我的问题是,这里发生了什么,我如何更改默认路由?

提前致谢!

编辑

根据要求,从服务器到 Facebook 的跟踪路由:

[服务器]“traceroute -6 www.facebook.com”的输出

matthew@192:~$ traceroute -6 www.facebook.com
traceroute to www.facebook.com (2a03:2880:2110:3f03:face:b00c::), 30 hops max, 80 byte packets
 1  gw-1459.lon-02.gb.sixxs.net (2a01:348:6:5b2::1)  80.071 ms  81.407 ms  81.361 ms
 2  gblon02.sixxs.net (2a01:348:0:4:0:3:1:1)  81.271 ms  95.160 ms  109.436 ms
 3  ge-0-0-5-20.cs0.thw.uk.goscomb.net (2a01:348:0:4:0:3:0:1)  109.430 ms  109.065 ms  109.004 ms
 4  xe-0-1-1.cs0.the.uk.goscomb.net (2a01:348::36:1:1)  108.915 ms  108.905 ms  108.815 ms
 5  xe-0-1-0.cs0.gs2.uk.goscomb.net (2a01:348::24:1:1)  110.143 ms  110.089 ms  110.033 ms
 6  xe-0-1-0-0.cs1.gs2.uk.goscomb.net (2a01:348::40:1:1)  109.943 ms  46.947 ms  47.509 ms
 7  xe-0-1-0.cs0.sov.uk.goscomb.net (2a01:348::41:1:1)  53.724 ms  53.645 ms  54.847 ms
 8  ge-1-1-5.rt0.sov.uk.goscomb.net (2a01:348::17:0:1)  56.107 ms  58.176 ms  59.559 ms
 9  lonap.he.net (2001:7f8:17::1b1b:1)  63.359 ms  63.270 ms  65.433 ms
10  2001:7f8:4::80a6:1 (2001:7f8:4::80a6:1)  175.217 ms  142.380 ms  174.992 ms
11  xe-3-3-0.bb02.iad2.tfbnw.net (2620:0:1cff:dead:beef::24d)  146.202 ms  148.312 ms  149.878 ms
12  ae9.bb02.frc1.tfbnw.net (2620:0:1cff:dead:beef::d6)  126.861 ms  127.347 ms  128.946 ms
13  ae2.dr01.frc1.tfbnw.net (2620:0:1cff:dead:beef::97)  129.830 ms ae2.dr02.frc1.tfbnw.net (2620:0:1cff:dead:beef::9b)  130.823 ms  132.602 ms
14  2620:0:1cff:dead:beee::163 (2620:0:1cff:dead:beee::163)  134.811 ms 2620:0:1cff:dead:beee::15d (2620:0:1cff:dead:beee::15d)  137.022 ms 2620:0:1cff:dead:beee::153 (2620:0:1cff:dead:beee::153)  139.157 ms

并从仍启用 IPv6 的客户端通过 radvd

[客户端]“traceroute -6 www.facebook.com”的输出

matthew@matthew-laptop:~$ traceroute -6 www.facebook.com
traceroute to www.facebook.com (2a03:2880:2110:3f01:face:b00c::), 30 hops max, 80 byte packets
 1  * * *
 2  * * *
 3  * * *
 4  * * *
 5  * * *
 6  * * *
 7  * * *
 8  * * *
 9  * * *
10  * * *
11  * * *
12  * * *
13  * * *
14  * * *
15  * * *
16  * * *

答案1

您实际上请求的是子网,而不仅仅是隧道吗?您需要将另一个子网路由到隧道端点,您不能直接使用隧道子网:

https://www.sixxs.net/faq/connectivity/?faq=usingsubnet

https://www.sixxs.net/home/requestsubnet/

如何与子网上的其他主机建立连接?

使用子网的最简单方法是为每个网络分配一个 /64,然后设置路由器广告服务器。由于 SixXS 为每个隧道提供 /48(所谓的站点前缀)作为子网,因此您可以在站点内拥有 65535 个 /64,从而拥有子网。/48 是终端站点,因此不应委托给其他管理员。

在 Linux 下,此路由器通告 (RA) 服务器称为 radvd,*BSD (KAME 堆栈) 将其称为 rtadvd。然后可以使用 RFC 2462(又称“IPv6 无状态地址自动配置”)配置客户端。

请注意,在 /64 的隧道中,只有 ::1(PoP)和 ::2(您的端点)可供使用,因为其余部分未被路由。

但是,“默认路由 /64”是一个路由子网,它被路由到隧道的端点,因此可以直接用于连接隧道后面单独链路上的主机。但是,如果您需要在端点后面提供多个 /64,则需要请求一个子网。

站点被定义为具有单一管理的网络。一旦管理发生变化,站点就会发生变化。因此,如果您有一栋建筑由管理组 X 管理,另一栋建筑由管理组 Y 管理,那么它们就是两个站点。当然,当管理组 X 和 Y 都属于 A 组时,它们仍然可以被视为一个站点。

相关内容