Teredo
Teredo - IPv4-Datagramme werden als Payload in IPv6-Paketen platziert
Beschreibung
- So genial wie komplex
- Teredo ist eine Entwicklung von Microsoft
- Es ist in der Lage, die verschiedensten Arten von NAT/PAT zu überwinden
- Die Teredo-Software, in aktuellen Versionen von Windows bereits eingebaut, stellt ein Interface mit einer IPv6-Adresse zur Verfügung

Der Standard sieht vor
- dass Teile der Adresse verschleiert werden
- indem die Bits der entsprechenden Teile invertiert werden
- Öffentliche Teredo-Server und Teredo-Relays im Internet erledigen die Konfiguration des Tunnels und wickeln den Datenverkehr ab
- Gleichzeitig sorgen sie auch dafür, dass die Verbindung in zwischengelagerten NAT/PAT-Routern nicht abläuft, indem sie regelmäßig sogenannte Bubbles versenden
Komplexität

Wenn ein Teredo-Relay Daten für einen Teredo-Node hat, informiert es den zuständigen Teredo-Server darüber, dessen IPv4-Adresse es der Teredo-Adresse des Nodes entnehmen kann
- Der Teredo-Server informiert dann den Teredo Node über die bestehende, mit Bubbles aktiv gehaltene, Verbindung über anstehende Daten
- Der Teredo-Node baut daraufhin von innen heraus eine Verbindung zum Teredo-Relay auf, welches auf dieser Verbindung dann die Daten ausliefert
- Ein einfaches IPv6-Paket, adressiert an einen TeredoNode, führt dazu, dass dieser die NAT/PAT-Router auf dem Weg zum Teredo-Relay von innen heraus aufbohrt.1 Die vermeintliche Sicherheit, die eine NAT/PAT-Installation unter IPv4 noch zu bieten schien, wird nicht zuletzt von Teredo ausgehebelt
- Wenn sich Nodes mit Teredo in einem IPv4-Netz befinden, muss davon ausgegangen werden, dass IPv6-Pakete bis zum Node vordringen können
- Auf natives IPv6 zu verzichten, kann also schlimmstenfalls zu weniger Sicherheit führen
Das Studium des Teredo-Standards, hinterlegt in RFC 4380 [Hui06], sei dem geneigten Leser empfohlen
Aus Sicht der IPv4-Endpunkte des Tunnels bildet IPv6 den Link-layer
- Die Konfiguration der Endpunkte geschieht statisch
Teredo ist ein IPv6-Übergangsmechanismus
- Dieses Kommunikationsprotokoll für den Datenverkehr mit dem Internet ist gemäß RFC 4380 Teredo: Tunneling IPv6 over UDP through Network Address Translations (NATs) spezifiziert. Implementierungen existieren insbesondere als Bestandteil von Microsoft Windows (Teredo) und für Unix-Systeme (Miredo)
Das Protokoll definiert eine Methode für den Zugriff auf das IPv6-Netzwerk hinter einem NAT-Gerät
Zweck
Die Knappheit an IPv4-Adressen hat dazu geführt, dass viele Firmen sowie Privatnutzer mittels NAT mit mehreren Endgeräten unter Nutzung von nur einer öffentlichen IP-Adresse auf das Internet zugreifen
- Das meistgenutzte Protokoll, um IPv6 direkt über IPv4 zu tunneln (Protokoll 41; siehe auch Tunnelbroker), erfordert, dass der Client eine öffentliche IP-Adresse hat (was aber nicht unbedingt nötig ist; gute Router kommen auch mit Protokoll 41 zurecht)
- Teredo macht es IPv4-Rechnern, die 6to4 nicht nutzen können, möglich, IPv6 über Tunnel zu nutzen
Gefahren
Durch die Tunnelung des IPv6 besteht die Gefahr, dass insbesondere die Sicherheitsfunktionalitäten NAT-basierter IPv4-Router vollständig ausgehebelt werden können
- Bei den durch Teredo erzeugten IPv4 UDP-Paketen handelt es sich um Pakete, bei denen die in diesem Szenario vorhandenen IPv4-Paketfilter wirkungslos bleiben, da dieser die IPv6-Pakete im Teredo-Paket ignoriert
- Es liegt seit 2007 eine Analyse durch Symantec vor, die diesen Sachverhalt bestätigt.
Heutige Firewalls bieten jedoch auch die Option, IPv6-Datenverkehr in Tunnelprotokollen zu filtern
Spezifikation
Teredo ist in RFC 4380 (Teredo: Tunneling IPv6 over UDP through Network Address Translations (NATs)) spezifiziert. Es ist hauptsächlich die Arbeit von Christian Huitema, einem Mitarbeiter von Microsoft, der an IPv6 arbeitet Im September 2010 erschien die Aktualisierung RFC 5991 (Teredo Security Updates)
Implementierungen
Microsoft Windows
- ein Teredo-Client ist bei Microsoft Windows XP und neuer eingeschlossen (erschien zuerst im Advanced Networking Pack im Service Pack 1) und standardmäßig aktiviert.
- Microsoft bietet für Microsoft Windows Server 2003 einen Teredo-Server und -Relay im Betastadium
Xbox
- Die Xbox One nutzt Teredo selbst in Netzen, in denen IPv6 zur Verfügung steht, um Portweiterleitungen zu vermeiden.
Linux
- Miredo ist eine quelloffene Implementierung für Linux und BSDs.
- NICI-Teredo besteht aus einem Teredo-Relay für den Linux-Kernel und einem Server für den Userspace
Alternativen
Andere Mechanismen, mit denen sich IPv6-Pakete in IPv4 tunneln lassen, sind unter anderem
Ein Vergleich der Tunnelmechanismen findet sich unter IPv6#Tunnelmechanismen
Anhang
Dokumentation
RFC
RFC | Titel | Jahr | Status |
---|---|---|---|
2473 | Generic Packet Tunneling in IPv6 Specification | 1998 | Proposed Standard |
Siehe auch
Links
Weblinks