Teredo-Adressen
Eine Teredo-Adresse besteht aus folgendem:
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 anfänglich das Teredo-Präfix 3FFE:831F::/32. 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 unter 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 Bits enthalten die öffentliche IPv4-Adresse des Teredo-Servers, der diese Teredo-Adresse konfiguriert hat. Weitere Informationen finden Sie unter "Erstkonfiguration für Teredo-Clients" in diesem Artikel.
Flags
Die nächsten 16 Bits für sind für Teredo-Flags reserviert. Für Windows XP-basierte Teredo-Clients ist das einzige definierte Flag das High-Order-Bit, das als Cone-Flag bezeichnet wird. Das Cone-Flag wird festgelegt, wenn sich der Teredo-Client hinter einer Kegel-NAT befindet. Die Bestimmung, ob die mit dem Internet verbundene NAT eine Kegel-NAT ist, erfolgt während der Erstkonfiguration des Teredo-Clients. Weitere Informationen finden Sie unter "Erstkonfiguration 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 einen Schutz 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 folgendem: CRAAAAUG AAAAAAAA. Das C-Bit ist für das Kegelflag. Das R-Bit ist für die zukünftige Verwendung reserviert. Das U-Bit ist für das Flag Universal/Local (auf 0 festgelegt) vorgesehen. Das G-Bit ist das Flag Individual/Group (auf 0 festgelegt). Die A-Bits werden auf eine zufällig generierte 12-Bit-Zahl festgelegt. Bei Verwendung einer Zufallszahl für die A-Bits muss ein böswilliger Benutzer, der den Rest der Teredo-Adresse durch Erfassen des anfänglichen Konfigurationsaustauschs von Paketen zwischen dem Teredo-Client und dem Teredo-Server ermittelt hat, bis zu 4.096 (212) verschiedene Adressen ausprobieren, um die Adresse eines Teredo-Clients während einer Adressüberprüfung zu ermitteln.
Verdeckter externer Port
Die nächsten 16 Bits speichern eine verdeckte Version des externen UDP-Ports, die dem gesamten Teredo-Datenverkehr für diesen Teredo-Client entspricht. Wenn der Teredo-Client sein anfängliches 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 Nat-Übersetzungstabelle verbleibt. Daher verwendet der gesamte Teredo-Datenverkehr für den Host denselben externen, zugeordneten UDP-Port. Der externe UDP-Port wird vom Teredo-Server aus dem UDP-Quellport des vom Teredo-Client gesendeten eingehenden Anfangspakets bestimmt und an den Teredo-Client zurückgesendet.
Der externe Port wird durch XORingen des externen Ports mit 0xFFFF verdeckt. Beispielsweise ist die verdeckte Version des externen Ports 5000 im Hexadezimalformat EC77 (5000 = 0x1388, 0x1388 XOR 0xFFFF = 0xEC77). Das Verschleiern des externen Ports verhindert, dass NATs den externen Port innerhalb der Nutzlast der Pakete übersetzen, die sie weiterleiten.
Verdeckte externe Adresse
Die letzten 32 Bits speichern eine verdeckte Version der externen IPv4-Adresse, die dem gesamten Teredo-Datenverkehr für diesen Teredo-Client entspricht. Genau wie der externe Port wird die Quell-IP-Adresse des Pakets vom NAT einer anderen externen (öffentlichen) Adresse zugeordnet, wenn der Teredo-Client sein anfängliches Paket an einen Teredo-Server sendet. Der Teredo-Client verwaltet diese Adresszuordnung, sodass sie in der Nat-Übersetzungstabelle 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 IPv4-Quelladresse des eingehenden Anfangspakets bestimmt, das vom Teredo-Client gesendet und an den Teredo-Client zurückgesendet wird.
Die externe Adresse wird durch XORingen 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). Das Verschleiern der externen Adresse verhindert, dass NATs die externe Adresse innerhalb der Nutzlast der Pakete übersetzen, die sie weiterleiten.