Teredo トンネリング
6to4はパブリックIPv4アドレスを必要とするが、各トンエルエンドポイント毎に大きな48ビットIPv6プレフィックスが提供され、カプセル化オーバーヘッドが比較的低い。ポイント・ツー・ポイント・トンネルは Teredo より信頼性も追跡性も高く、典型的にはトンネルエンドポイントのIPv4に依存しない永続的IPv6アドレスが提供される。いくつかのポイント・ツー・ポイント・トンネル事業者(英語版)はNATトラバースのためのUDPカプセル化をサポートする(たとえばAYIYA(英語版)プロトコルではこれが可能である)。一方で、ポイント・ツー・ポイント・トンネルの利用には通常、登録が必要である。ポイント・ツー・ポイント・トンネルの利用を簡便化するための自動化ツール(AICCU(英語版)など)もある。
フラグその他のビットを保持する。これらの16ビットのフォーマットはMSBを先頭として "CRAAAAUG AAAAAAAA" の通りである。"C" ビットは Teredo クライアントが cone NAT 越しであれば1、そうでなければ0となる。しかし、RFC 5991 では他人にその情報を知られることを防ぐために常に0と変更された。"R" ビットは、現在は不使用で常に0が送られる。"U" および "G" ビットは、MACアドレスの "Universal/local" ビットと "Group/individual" ビットをエミュレートするために0とされる。12個の "A" ビットは元々の RFC 4380 仕様では0だったが、RFC 5991 ではTeredo クライアントが生成する乱数に変更された。これは、IPv6ベースのスキャニング攻撃を避けるためである。
Teredo では、いくつかのノード種別が定義されている。
Teredo プロトコルはいくつかの機能を実行する。
UDP over IPv4 (UDPv4) 接続が利用可能であるか診断し、(簡略化されたSTUNプロトコルの代替を用いて)NAT機器の存在を検知する。
グローバルにルーティング可能なユニークIPv6アドレスを各ホストに割り当てる
IPv6データグラムをUDPv4データグラム内にカプセル化し、IPv4ネットワーク越しに送信する(NAT traversal も行う)。
Teredo ホスト同士およびネイティブ(もしくは Teredo 以外のトンネリングプロトコルを利用している)IPv6ホストとのルーティングを行う。