Teredo-Adressen
Eine Teredo-Adresse besteht aus folgenden Komponenten:
Teredo-Präfix
Die ersten 32 Bits gelten für das Teredo-Präfix, das für alle Teredo-Adressen identisch ist. Windows XP und Windows Server 2003 verwendeten zunächst das Präfix 3FFE:831F::/32 Teredo. Das für Teredo in RFC 4380 definierte Präfix lautet 2001::/32 und ist das Präfix, das von Teredo in Windows Vista und Windows Server 2008 verwendet wird. Computer mit Windows XP und Windows Server 2003 verwenden das Teredo-Präfix 2001::/32, wenn sie mit dem Microsoft Security Bulletin MS06-064 aktualisiert werden.
IPv4-Adresse des Teredo-Servers
Die nächsten 32 Bit enthalten die öffentliche IPv4-Adresse des Teredo-Servers, mit der diese Teredo-Adresse konfiguriert wurde. Weitere Informationen finden Sie unter "Anfängliche Konfiguration für Teredo-Clients" in diesem Artikel.
Flags
Die nächsten 16 Bits sind für Teredo-Flags reserviert. Für Windows XP-basierte Teredo-Clients ist das einzige definierte Flag das Bit mit hoher Reihenfolge, das als Cone-Flag bezeichnet wird. Das Cone-Flag wird festgelegt, wenn der Teredo-Client hinter einem Kegel-NAT liegt. Die Bestimmung, ob die NAT, die mit dem Internet verbunden ist, eine Kegel-NAT ist, tritt während der Erstkonfiguration des Teredo-Clients auf. Weitere Informationen finden Sie unter "Anfängliche Konfiguration für Teredo-Clients" in diesem Artikel.
Für Windows Vista- und Windows Server 2008-basierte Teredo-Clients bieten nicht verwendete Bits im Feld "Flags" eine Schutzebene vor Adressüberprüfungen durch böswillige Benutzer. Die 16 Bits im Feld "Flags" für Windows Vista- und Windows Server 2008-basierte Teredo-Clients bestehen aus folgenden Komponenten: CRAAAAUG AAAAAAAA. Das C-Bit ist für die Kegelflagge. Das R-Bit ist für die zukünftige Verwendung reserviert. Das U-Bit ist für das Universelle/lokale Flag (auf 0 festgelegt) festgelegt. Das G-Bit ist "Einzel-/Gruppenflagge" (auf 0 festgelegt). Die A-Bits werden auf eine zufällig generierte 12-Bit-Zahl festgelegt. Durch Die Verwendung einer Zufallszahl für die A-Bits muss ein böswilliger Benutzer, der den Rest der Teredo-Adresse bestimmt hat, indem der anfängliche Konfigurationsaustausch von Paketen zwischen dem Teredo-Client und dem Teredo-Server erfasst wird, bis zu 4.096 (212) verschiedene Adressen ausprobieren müssen, um die Adresse eines Teredo-Clients während eines Adressscans zu ermitteln.
verdeckten externen Port
Die nächsten 16 Bit speichern eine verdeckte Version des externen UDP-Ports, die allen Teredo-Datenverkehr für diesen Teredo-Client entspricht. Wenn der Teredo-Client sein erstes Paket an einen Teredo-Server sendet, wird der UDP-Quellport des Pakets von der NAT einem anderen externen UDP-Port zugeordnet. Der Teredo-Client verwaltet diese Portzuordnung, sodass sie in der Übersetzungstabelle der NAT verbleibt. Daher verwendet der gesamte Teredo-Datenverkehr für den Host denselben externen, zugeordneten UDP-Port. Der externe UDP-Port wird vom Teredo-Server vom Quell-UDP-Port des eingehenden anfänglichen Pakets bestimmt, das vom Teredo-Client gesendet und an den Teredo-Client zurückgesendet wird.
Der externe Port wird durch XORingen des externen Ports mit 0xFFFF verdeckt. Die verdeckte Version des externen Ports 5000 im Hexadezimalformat lautet beispielsweise EC77 (5000 = 0x1388, 0x1388 XOR 0xFFFF = 0xEC77). Durch das Verschleiern des externen Ports wird verhindert, dass NATs den externen Port innerhalb der Nutzlast der Pakete übersetzen, die sie weiterleiten.
verdeckte externe Adresse
Die letzten 32 Bit speichern eine verdeckte Version der externen IPv4-Adresse, die allen Teredo-Datenverkehr für diesen Teredo-Client entspricht. Genau wie der externe Port wird, wenn der Teredo-Client sein erstes Paket an einen Teredo-Server sendet, die Quell-IP-Adresse des Pakets von der NAT einer anderen externen (öffentlichen) Adresse zugeordnet. Der Teredo-Client verwaltet diese Adresszuordnung, sodass sie in der Übersetzungstabelle der NAT verbleibt. Daher verwendet der gesamte Teredo-Datenverkehr für den Host dieselbe externe, zugeordnete, öffentliche IPv4-Adresse. Die externe IPv4-Adresse wird vom Teredo-Server aus der Quell-IPv4-Adresse des eingehenden anfänglichen Pakets bestimmt, das vom Teredo-Client gesendet und an den Teredo-Client zurückgesendet wird.
Die externe Adresse wird von XORing der externen Adresse mit 0xFFFFFFFF verdeckt. Beispielsweise ist die verdeckte Version der öffentlichen IPv4-Adresse 131.107.0.1 im Doppelpunkt-Hexadezimalformat 7C94:FFFE (131.107.0.1 = 0x836B0001, 0x836B0001 XOR-0xFFFFFFFF = 0x7C94FFFE). Durch das Verschleiern der externen Adresse wird verhindert, dass NATs die externe Adresse innerhalb der Nutzlast der Pakete übersetzen, die sie weiterleiten.