[fli4l] IPv6 über Fritzbox zum Fli4L als Ethernet-Router möglich?

Christoph Schulz fli4l at kristov.de
Di Nov 6 22:12:50 CET 2012


Hallo!

Am 06.11.2012 18:45, schrieb Ante Auber:
> Hallo liebe Gruppe,
> für mich unheimlich kompliziert, von einige von euch sicherlich einfach:
>
> zwischen Internet und Fli4L soll eine Fritzbox 7270 als Telefon-Anlage
> und als Router funktionieren. Alles geht, nur IPv6 nicht.
> Ich muss vorausschicken, dass der HE-Tunnel für IPv6 mit dem
> Fli4L-Router *ohne* Fritzbox problemlos funktioniert.
> [...]

Ich versuche mal eine verständliche Antwort ;-)

Ein SixXs-Tunnel ist hinter einer Fritz!Box oder einem beliebigen 
anderen Router einfach einzurichten, denn SixXs erfordert zur 
Aufrechterhaltung des Tunnels ein bestimmtes Protokoll (Heartbeat), bei 
dem in regelmäßigen Abständen IPv4-Datenpakete über den IPv4-Teil des 
Tunnels versandt werden. Dabei bekommt SixXs dank IPv4-Masquerading auf 
der Gegenseite (also der PoP) mit, welche externe IPv4-Adresse benutzt 
wird, und weiß damit also, wohin genau er die in IPv4 eingekapselten 
IPv6-Pakete schicken soll. Das einzige, was man in einem möglicherweise 
verwendeten externen Router (wie der Fritz!Box) einstellen muss ist, 
wohin dieser Router IPv6-in-IPv4-Pakete schicken muss (in der Regel 
heißt eine solche Einstellung "Exposed Host" o.ä., wo man dann die 
IPv4-Adresse des fli4l-Routers eingeben muss).

Ein Hurricane Electric-Tunnel hingegen nutzt _kein_ Heartbeat-Protokoll. 
Vielmehr muss man beim Aktivieren des Tunnels die externe IPv4-Adresse 
mit Hilfe eines bestimmten HTTP-Requests dem HE-PoP mitteilen. Das geht 
aber natürlich nur, wenn diese externe IPv4-Adresse *bekannt* ist! Wenn 
der fli4l-Router für die Einwahl zuständig ist, ist das keine Hexerei, 
deswegen funktionieren HE-Tunnel auch problemlos in einem solchen 
Szenario. Wenn der fli4l jedoch _hinter_ einem anderen Router (z.B. der 
Fritz!Box) hängt, weiß der fli4l die externe Adresse _nicht_. Somit weiß 
der fli4l auch nicht, welche Adresse er dem HE-PoP mitteilen muss, und 
somit kann der Tunnel auch nicht funktionieren.

Es ist _angedacht_, zukünftig in fli4l ein Framework anzubieten, mit dem 
man die externe Adresse auf verschiedene Weisen ermitteln kann (z.B. via 
http://automation.whatismyip.com/n09230945.asp). Bislang ist das aber 
noch nicht umgesetzt worden. Und da du in spline.fli4l postest, gehe ich 
davon aus, dass du auch keine Weekly-Tarball-Version verwendest, sondern 
die 3.6.2.

> [...]
> Immer ein Tunnelprotokoll für die IPv6-Anbindung nutzen  *ich möchte
> gern einen HE-Tunnel benutzen, der unter Fli4l ohne Fritzbox auch sehr
> gut funktioniert*
>
> Wählen Sie ein Tunnelprotokoll
> 6to4
> SixXS
> 6RD
> 6in4

Das Problem mit diesen Einstellungen ist, dass deine Fritz!Box zwar den 
Tunnel aufbauen kann (Einstellung 6in4) und auch ein entsprechendes 
IPv6-Subnetz-Präfix erhält (bzw. dieses konfiguriert werden kann), aber 
dieses Präfix dann nur als /64-Subnetz an deinen fli4l weiterleitet. Und 
dieser kann mit einem /64-Subnetz nichts anfangen, weil er dieses nicht 
weiter zerstückeln kann. Außerdem müsste der fli4l das empfangene 
Subnetz auch aktiv "zerstückeln" können, was er momentan leider noch 
nicht kann (ist auf meiner TODO-Liste). Sowohl mit der stabilen 3.6.2 
als auch mit dem Weekly-Tarball funktioniert in deiner Konfiguration nur 
ein SixXs-Tunnel problemlos. Für alles andere muss das IPv6-Paket in 
seiner Funktionalität erweitert werden.

Sorry, ich weiß, dass du mit SixXs auf dem Kriegsfuß stehst, aber ich 
kann dir momentan keine bessere Auskunft geben :-/


Viele Grüße,

Christoph


Mehr Informationen über die Mailingliste Fli4L