デフォルトのTeredo IPv6トンネルが有効になっているWindows7クライアントを使用してIPv6を実験しています。
PING -6を使用してIPv6ホスト(ipv6.google.comおよびwww.v6.facebook.com)に正常にアクセスできます。 Pythonスクリプト(IPv6ベースのソケットを使用))を使用して、これらのホストにHTTPリクエストを正常に送信することもできます。
Firefox/Chrome/IEを使用しても機能しません。パケットキャプチャは、これらのブラウザがDNS Aクエリを実行しているのに対し、my PythonスクリプトはAAAAクエリになり、Ipv6クエリを正常に解決することを示しています。
更新1:(非常に便利な) Mattが提案したリンク でテストし、次の情報を取得しました:
Teredoが有効になっているようです。このテスト中にIPv6サイトに正常に接続しました。ただし、Webサイト名ではなく、IPv6数値アドレスに接続して接続を強制する場合のみです。この設定は、IPv6 Webサイトに到達するための前進または支援には役立ちません。 Teredo(Windowsコンピューター用のトンネリングプロトコル)のアドバイスがまもなく投稿されます
更新2私の質問に対する答えは「IPv6でTeredoを使用しないこと」であると結論しました。 このページ の下部には次のステートメントが含まれています。
現在インターネット上にTeredoリレーが存在しないため、ネイティブIPv6アドレスへの接続がTeredoインターフェイス経由で成功する可能性はほとんどありません。 WSAConnectByNameが呼び出されると、Teredoが利用可能な唯一のIPv6対応インターフェイスである場合、Windows VistaはAAAAクエリを発行しません。これにより、ネイティブIPv6アドレスが宛先として取得されず、成功の可能性が最も高いIPv4を介して接続が試行されます。 Teredoが唯一のIPv6対応インターフェイスである場合にIPv6アドレスを取得するには、アプリケーションでAAAAレコードのDnsQuery APIを明示的に使用する必要があります。
つまり、アプリケーションがホスト名をIPアドレスに解決するとき、Teredoが利用可能な唯一のIPv6アクセスである場合、WindowsはIPv6レコード(AAAA)の要求を発行しませんアプリが特にIPv6アドレスを要求しない限り。ベストプラクティスはすべてのタイプのアドレスを照会することです(たとえば、AF_UNSPECをgetaddrinfoに渡すことにより)。
Hurricane Electric の無料サービスを使用して、代替IPv6トンネルアクセスをセットアップしました。IPv6を介して私のコンテンツにアクセスできます:-)
次のレジストリキーに移動します。
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\Dnscache\Parameters
DWORD値を追加します。
AddrConfigControl = 0
Teredoトンネルを介してDNS解決が行われます。
Firefoxでabout:config
に移動し、
network.dns.disableIPv6
デフォルトでfalse
に設定されていることを確認してください。
次に http://test-ipv6.com/ にアクセスしてテストします
Test-ipv6.comでのテストに合格しても、ダンス亀亀が得られない場合は、network.http.fast-fallback-to-IPv4
。私がそれをしたら、亀は kame.net に現れました