ipv6 forward funktioniert nicht

0

Ich habe folgendes Problem.

Ich versuche, ein IPv6-Netzwerk zu Hause einzurichten, indem ich meinen Server mit einem IPv6-Tunnel als Gateway verwende.

Hier ist mein Setup

SERVER :

Serverschnittstellen:

he-ipv6   Link encap:IPv6-in-IPv4  
          inet6 addr: 2001:xxx:xx:xxx::x/64 Scope:Global

eth1      Link encap:Ethernet  HWaddr 00:22:3f:f0:2a:a1  
          inet addr:172.16.1.1  Bcast:172.16.1.255  Mask:255.255.255.0
          inet6 addr: 2002:c000:203::1/64  ##self assign ipv6 address for my home lan

IPv6-Routing-Tabelle:

ip -6 route
2001:470:6e:40f::1 dev he-ipv6  metric 1024 
2002:xxxx:xxx::/64 dev eth1  proto kernel  metric 256 
default dev he-ipv6  metric 1024

ping google versuch:

ping6 google.com
PING google.com(mil02s06-in-x00.1e100.net) 56 data bytes
64 bytes from mil02s06-in-x00.1e100.net: icmp_seq=1 ttl=56 time=103 ms
64 bytes from mil02s06-in-x00.1e100.net: icmp_seq=2 ttl=56 time=103 ms

--- google.com ping statistics ---
2 packets transmitted, 2 received, 0% packet loss, time 1000ms

So weit, ist es gut

Klient

Client-Schnittstelle:

en1: flags=8863<UP,BROADCAST,SMART,RUNNING,SIMPLEX,MULTICAST> mtu 1500
ether d8:30:62:61:73:39 
inet6 2002:c000:203::3 prefixlen 64 
inet 172.16.1.134 net mask 0xffffff00 broadcast 172.16.1.255

Ping-Server-Versuch: ping6 2002: c000: 203 :: 1 PING6 (56 = 40 + 8 + 8 Byte) 2002: c000: 203 :: 3 -> 2002: c000: 203 :: 1 16 Byte ab 2002: c000: 203 :: 1, icmp_seq = 0 hlim = 64 time = 0.516 ms

ping google versuch:

ping6 google.com
PING6(56=40+8+8 bytes) 2002:c000:203::3 --> 2a00:1450:400c:c09::66

--- google.com ping6 statistics ---
3 packets transmitted, 0 packets received, 100.0% packet loss

Das Mysterium:

Wenn ich einen tcpdump auf meinem Server durchführe, während ich von meinem Client aus pinge.

tcpdump -i eth1 -vv ip6
23:41:03.957019 IP6 (flowlabel 0x84719, hlim 64, next-header ICMPv6 (58) payload length: 16)         2002:c000:203::3 > mil01s18-in-x01.1e100.net: [icmp6 sum ok] ICMP6, echo request, seq 0
23:41:04.959517 IP6 (flowlabel 0x84719, hlim 64, next-header ICMPv6 (58) payload length: 16) 2002:c000:203::3 > mil01s18-in-x01.1e100.net: [icmp6 sum ok] ICMP6, echo request, seq 1
23:41:05.957182 IP6 (flow label 0x84719, hlim 64, next-header ICMPv6 (58) payload length: 16) 2002:c000:203::3 > mil01s18-in-x01.1e100.net: [icmp6 sum ok] ICMP6, echo request, seq 2

Irgendeine Hilfe? Danke im Voraus

Pan Pan
quelle

Antworten:

1

Die Adressen, die mit beginnen, 2002:sind 6 bis 4 Adressen. Dies sind IPv6-Adressen der besonderen Art und nicht das, was Sie mit Ihrem Tunnel erhalten haben. Sie sollten stattdessen die Adressen verwenden, die Sie mit dem Tunnel erhalten haben. Normalerweise erhält man einen gerouteten Block wie eine / 48 mit dem Tunnel. Verwenden Sie / 64 aus diesem Block für Ihre LANs.

Im Allgemeinen sollten Sie sich von 6to4 fernhalten, es sei denn, Sie wissen, was Sie tun.

Sander Steffann
quelle
Vielen Dank für Ihre Antwort. Tunnel senden Sie mir einen gerouteten 64-Block zurück, damit ich ein 68-Subnetz verwende und jetzt alles gut funktioniert.
Pan Pan
1
Verwenden Sie a nicht /68in einem LAN. Verwenden /64Sie immer ein, es sei denn, Sie wissen wirklich, was Sie tun. Wenn Sie nur ein LAN benötigen, verwenden /64Sie das, das Sie haben. Wenn Sie mehr LANs benötigen, fordern Sie einfach ein Routing /48von Ihrem Tunnelanbieter an. IPv6 bietet Ihnen mehr Adressraum, als Sie jemals benötigen werden. So ist es aufgebaut, also benutze es so: /64in jedem LAN ☺
Sander Steffann