Zum Inhalt springen

Teredo

Aus Foxwiki

Teredo - IPv4-Datagramme werden als Payload in IPv6-Paketen platziert

Beschreibung

Teredo ist eine Entwicklung von Microsoft

So genial wie komplex

  • 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
Bildung einer Teredo-Interfaces Adresse
Der Standard sieht vor

Teile der Adresse zu verschleiern

  • Bit werten invertiert

Ö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

Komplexität von Teredo

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.

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

  • Dabei werden IPv6-Pakete mit dem UDP über IPv4 gekapselt
  • Dies geschieht mittels Teredo-Servern

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

Implementierungen

Microsoft Windows

Seit Microsoft Windows XP ist ein Teredo-Client in Microsoft Windows enthalten

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

Alternativen

Andere Mechanismen, mit denen sich IPv6-Pakete in IPv4 tunneln lassen, sind unter anderem

Ein Vergleich der Tunnelmechanismen findet sich unter IPv6/Tunnel


Anhang

Dokumentation

RFC
RFC Titel Jahr Status
4380 Teredo: Tunneling IPv6 over UDP through Network Address Translations (NATs) 2006 Proposed Standard, Updated by: RFC 5991, RFC 6081, RFC 9601
5991 Teredo Security Updates 2010 Proposed Standard
6081 Teredo Extensions 2011 Proposed Standard
9601 Propagating Explicit Congestion Notification across IP Tunnel Headers Separated by a Shim 2024 Proposed Standard

Siehe auch



Links

Weblinks

  1. https://de.wikipedia.org/wiki/Teredo
  2. Überblick zu Teredo. Microsoft (deutsch)