2

私の ISP はサポートしていないためIPv6、IPv4 アドレスしか持っていません。http://tunnelbroker.net/に1 つのアカウントがあり、http://www.sixxs.net/に 1 つのアカウントがあるとします。これらの各リソースは、IPv4 から IPv6 へのトンネリングを提供し、私が理解している限り、出力ではそれぞれ IPv6 ネットワークと IPv6 アドレスにアクセスできます。

質問は次のとおりです。2 つのスレッドを持つアプリケーションが必要です。それぞれが、サーバー IPv4 アドレス、利用可能な DNS リゾルバーなどの独自のトンネリング オプションを使用します。明らかに、スレッドは並行して動作する必要があります。それらのうちの2つ以上。netsh でグローバル Windows 設定を変更せずにこれを整理することは可能ですか? で行われているように、スレッドのみのトンネリング オプションを設定する方法があるかもしれませんHttpWebRequest

HttpWebRequest.Proxy = new WebProxy(); //

では、下位レベルの API に進む場合、デフォルトの HttpWebRequests/Responses をそのようなトンネル内に配置するにはどうすればよいでしょうか (正しく理解できれば、ofc)。

*編集済み

これらは、tunnelbroker.com がデフォルトのトンネリングを機能させるために適用することを推奨する設定です。

netsh interface teredo set state disabled
netsh interface ipv6 add v6v4tunnel IP6Tunnel my_ip_here server_ip_here
netsh interface ipv6 add address IP6Tunnel 2001:470:18:201::2
netsh interface ipv6 add route ::/0 IP6Tunnel 2001:470:18:201::1

低レベルのネットワークプログラミングは初めてなので、実際にはヒントを探しています。

4

1 に答える 1

1

6to4 トンネルは、マシンに実際の IPv6 アドレスを与えます。複数の 6to4 を使用でき、複数の IPv6 アドレスを取得できます。どちらを使用するかを指定するには、ソケットを必要な IP にバインドする必要があります。

ほとんどの高レベル API は、バインド先の IP の設定をサポートしていません。ここでは、完全に API の開発者に翻弄されて、かなり運が悪いです。ほとんどの API は、特定のアドレス自体にバインドしようとさえせず、代わりに OS に選択を処理させます。ちょっと変わったリクエストなので、彼らを責めるのは難しいです :)

于 2012-12-18T21:37:09.523 に答える