質問

私の友人は、プロキシ サーバーを使用せずに 2 つのプライベート IP を接続する方法があると教えてくれました。このアイデアは、両方のコンピューターがパブリック サーバーに接続されており、サーバーがどのようにしてプライベート接続に参加し、それ以上帯域幅を使用しないかというものでした。

これは本当ですか?このテクニックの名前は何ですか?

役に立ちましたか?

解決

というテクニックがあります。パンチング」は、「Cone」NAT とうまく動作します (Cone はルーターの技術ファミリーです)。これは 100% 確実な技術ではありませんが、現在ではルーターの約 80% で UDP でうまく動作します。

ホールパンチを実現するためのライブラリの実装がいくつかあります。 気絶 (ウィキペディア)

他のヒント

これは本当です。それが方法です フォグクリーク副操縦士 作品

Joel のアイテム 2 をご覧ください。 コパイロット 2.0 ポスト.

あなたの友人は VIP (仮想 IP) について言及している可能性があります。私の理解では、VIP は通常、ルーターなどのハードウェアによって制御され、2 つのプライベート IP のいずれかにリダイレクトされます。これを VIP の背後にあるマシンのクラスターで使用します。私はネットワークの専門家ではないので、私の知識の範囲はこれくらいです。

2 つのプライベート ネットワーク (NAT の背後にあるマシンの 2 つのネットワーク) に参加することを検討している場合、これを行うための最良の方法は、 VPN. 。これを実現するために利用できる機器は数多くあります。

それがあなたが考えていることかどうかはわかりませんが、ssh トンネリングでも同様のことができます。10.1.2.3/24 の userA が 192.168.0.3/24 の userB の mysql サーバーに接続したいとします。2 つのネットワーク間には直接のネットワーク接続はありませんが、両方のマシンがパブリック インターネット上のサーバー A に接続できます。

userB は次のコマンドを実行します。

ssh -R localhost:13306:localhost:3306 username@serverA

userA は次のコマンドを実行します。

ssh -L 3306:localhost:13306 username@serverA

これで、userA は任意のツールを使用してローカルホスト上の mysql に接続できるようになり、cxn はサーバー A を経由して、userB のマシンのローカルホストで実行されている mysql デーモンにトンネリングされます。

(タイプミスがないことを祈ります。生後 2 日目の娘を抱きながら片手で入力しました =))

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top