Teredo の実装
Teredo のプログラミングを変更する必要はありませんが、開発者は、 Teredo インターフェイスを最も効率的に使用する小さな変更を行うことをお勧めします。
- IPv6 トラフィックのみが可能なアプリケーションで Teredo を利用できます。 ただし、アプリケーション プロトコルの開発中は、IPv4 トラフィックと IPv6 トラフィックの両方の処理を考慮する必要があります。 アプリケーションは、ソケット オプションでAF_INET6またはAF_UNSPECにバインドする必要があります。
- Windows ファイアウォール内でネットワーク アドレス変換 (NAT) トラバーサル オプションを有効にするには、インターネットからの未承諾のトラフィックをリッスンできるアプリケーションが必要です。 これは、"Edge Traversal" オプションを VARIANT_TRUE に設定して INetFwPolicy2 API を呼び出すことによって実現されます。 Windows Vista では、アプリケーションで必要なときに Teredo アドレスを使用できるようになります。 その結果、Teredo インターフェイスを使用すると、Teredo アドレスが自動的に安定します。 アプリケーションで Teredo アドレスが安定していることを確認する場合は、 NotifyStableUnicastIpAddressTable API を呼び出すと Teredo がトリガーされ、安定した状態に遷移します。
- アプリケーションでは 、IPV6_PROTECTION_LEVEL Winsock ソケット オプションを使用して保護レベルを設定することもできます。これにより、未承諾の受信トラフィックがファイアウォールを通過できるようになります。 詳細については、「 Teredo 経由の未承諾トラフィックの受信 」を参照してください。
特定の Teredo 関数のインターネット プロトコル ヘルパー (IP ヘルパー) 実装は、Teredo アドレスを検証してアプリケーションで使用できるようにする方法の例として機能します。 詳細については、「 IP ヘルパーでの Teredo の使用」を参照してください。