Teredo-adressen
Een Teredo-adres bestaat uit het volgende:
teredo-voorvoegsel
De eerste 32 bits zijn voor het Teredo-voorvoegsel, dat hetzelfde is voor alle Teredo-adressen. Windows XP en Windows Server 2003 gebruikten aanvankelijk het voorvoegsel 3FFE:831F::/32 Teredo. Het voorvoegsel dat is gedefinieerd voor Teredo in RFC 4380 is 2001::/32 en is het voorvoegsel dat wordt gebruikt door Teredo in Windows Vista en Windows Server 2008. Op computers met Windows XP en Windows Server 2003 wordt het voorvoegsel 2001::/32 Teredo gebruikt wanneer dit wordt bijgewerkt met Microsoft Security Bulletin MS06-064.
IPv4-adres van teredo-server
De volgende 32 bits bevatten het openbare IPv4-adres van de Teredo-server waarmee dit Teredo-adres is geconfigureerd. Zie 'Initiële configuratie voor Teredo-clients' in dit artikel voor meer informatie.
vlaggen
De volgende 16 bits zijn gereserveerd voor Teredo-vlaggen. Voor Teredo-clients op basis van Windows XP is de enige gedefinieerde vlag de hoge order bit die bekend staat als de Cone-vlag. De cone-vlag wordt ingesteld wanneer de Teredo-client zich achter een kegel-NAT bevindt. De bepaling of de NAT die is verbonden met internet een kegel-NAT is, vindt plaats tijdens de initiële configuratie van de Teredo-client. Zie 'Initiële configuratie voor Teredo-clients' in dit artikel voor meer informatie.
Voor Teredo-clients op basis van Windows Vista en Windows Server 2008 bieden ongebruikte bits in het veld Vlaggen een niveau van beveiliging tegen adresscans door kwaadwillende gebruikers. De 16 bits in het veld Vlaggen voor Windows Vista- en Windows Server 2008-gebaseerde Teredo-clients bestaat uit het volgende: CRAAAAUG AAAAAAAA. De C-bit is voor de Cone-vlag. De R-bit is gereserveerd voor toekomstig gebruik. De U-bit is voor de universele/lokale vlag (ingesteld op 0). De G-bit is een afzonderlijke/groepsvlag (ingesteld op 0). De A-bits worden ingesteld op een willekeurig gegenereerd getal van 12 bits. Door een willekeurig getal voor de A-bits te gebruiken, moet een kwaadwillende gebruiker die de rest van het Teredo-adres heeft vastgesteld door de eerste configuratie-uitwisseling van pakketten tussen de Teredo-client en teredo-server te proberen maximaal 4096 (212) verschillende adressen om het adres van een Teredo-client te bepalen tijdens een adresscan.
verborgen externe poort
In de volgende 16 bits wordt een verborgen versie van de externe UDP-poort opgeslagen die overeenkomt met alle Teredo-verkeer voor deze Teredo-client. Wanneer de Teredo-client het oorspronkelijke pakket naar een Teredo-server verzendt, wordt de bron-UDP-poort van het pakket door de NAT toegewezen aan een andere, externe UDP-poort. De Teredo-client onderhoudt deze poorttoewijzing zodat deze in de vertaaltabel van NAT blijft. Daarom gebruikt al het Teredo-verkeer voor de host dezelfde externe, toegewezen UDP-poort. De externe UDP-poort wordt bepaald door de Teredo-server van de bron-UDP-poort van het binnenkomende eerste pakket dat door de Teredo-client wordt verzonden en teruggestuurd naar de Teredo-client.
De externe poort wordt verborgen door XORing met 0xFFFF. De verborgen versie van de externe poort 5000 in hexadecimale indeling is bijvoorbeeld EC77 (5000 = 0x1388, 0x1388 XOR 0xFFFF = 0xEC77). Als de externe poort wordt verborgen, voorkomt u dat NAT's de externe poort vertalen binnen de nettolading van de pakketten die ze doorsturen.
verborgen extern adres
De laatste 32 bits slaan een verborgen versie van het externe IPv4-adres op dat overeenkomt met alle Teredo-verkeer voor deze Teredo-client. Net als bij de externe poort, wanneer de Teredo-client het oorspronkelijke pakket naar een Teredo-server verzendt, wordt het bron-IP-adres van het pakket door de NAT toegewezen aan een ander, extern (openbaar) adres. De Teredo-client onderhoudt deze adrestoewijzing zodat deze in de vertaaltabel van NAT blijft. Daarom gebruikt al het Teredo-verkeer voor de host hetzelfde externe, toegewezen, openbare IPv4-adres. Het externe IPv4-adres wordt bepaald door de Teredo-server van het bron-IPv4-adres van het binnenkomende eerste pakket dat door de Teredo-client wordt verzonden en teruggestuurd naar de Teredo-client.
Het externe adres wordt verborgen door XORing het externe adres met 0xFFFFFFFF. De verborgen versie van het openbare IPv4-adres 131.107.0.1 in de dubbele hexadecimale indeling is bijvoorbeeld 7C94:FFFE (131.107.0.1 = 0x836B0001, 0x836B0001 XOR-0xFFFFFFFF = 0x7C94FFFE). Als het externe adres wordt verborgen, voorkomt u dat NAT's het externe adres vertalen binnen de nettolading van de pakketten die ze doorsturen.