Ipv6

IPv6 鏈路本地路由

  • August 29, 2015

連結本地地址

路由器不轉發具有鏈路本地地址的數據包。

我想知道的是:如果目標是連結本地地址,那是有道理的,但是如果我有一個只有連結本地地址的盒子試圖到達全域/站點範圍地址怎麼辦?流量可以返回,還是會失敗,因為返回的數據包將發往鏈路本地地址?

路由器永遠不會轉發具有源單播鏈路本地 IPv6 地址的數據包。

請看一下這個例子:只有連結本地地址的 linux 機器試圖 ping ipv6.google.com(google 的全域範圍 ipv6 地址):

root@u1010:~# ifconfig -a

eth0      Link encap:Ethernet  HWaddr 00:0c:29:2d:ff:26
         inet addr:172.16.1.130  Bcast:172.16.1.255  Mask:255.255.255.0
         inet6 addr: fe80::20c:29ff:fe2d:ff26/64 Scope:Link
         UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
         RX packets:408884 errors:0 dropped:0 overruns:0 frame:0
         TX packets:43885 errors:0 dropped:0 overruns:0 carrier:0
         collisions:0 txqueuelen:1000
         RX bytes:151390854 (151.3 MB)  TX bytes:6098973 (6.0 MB)
         Interrupt:19 Base address:0x2000

root@u1010:~# ping6 ipv6.google.com
PING ipv6.google.com(pw-in-x68.1e100.net) 56 data bytes
From fe80::223:33ff:fe71:6827 icmp_seq=1 Destination unreachable: Beyond scope of source address
From fe80::223:33ff:fe71:6827 icmp_seq=2 Destination unreachable: Beyond scope of source address
From fe80::223:33ff:fe71:6827 icmp_seq=3 Destination unreachable: Beyond scope of source address
From fe80::223:33ff:fe71:6827 icmp_seq=4 Destination unreachable: Beyond scope of source address

並在路由器上調試 ipv6 數據包顯示以下內容…

Mar  5 14:14:17.240: IPv6: Looking up 2001:XXXX:20::2 [Source FE80::20C:29FF:FE2D:FF26] in FIB
Mar  5 14:14:17.240: IPv6: FIB lookup for 2001:XXXX:20::2 succeeded. if=Tunnel0, nexthop 2001:XXXX:20::2
Mar  5 14:14:17.240: IPV6: source FE80::20C:29FF:FE2D:FF26 (Vlan200)
Mar  5 14:14:17.240:       dest 2001:XXXX:20::2 (Tunnel0)
Mar  5 14:14:17.240:       traffic class 0, flow 0x0, len 81+14, prot 17, hops 63, forwarding
Mar  5 14:14:17.240: IPv6-Fwd: Beyond scope of source address

引用自:https://serverfault.com/questions/243602