私の友人は、プロキシ サーバーを使用せずに 2 つのプライベート IP を接続する方法があると教えてくれました。アイデアは、両方のコンピューターがパブリックサーバーに接続され、サーバーがプライベート接続に参加し、それ以上帯域幅を使用しないというものでした。
これは本当ですか?この技の名前は?
私の友人は、プロキシ サーバーを使用せずに 2 つのプライベート IP を接続する方法があると教えてくれました。アイデアは、両方のコンピューターがパブリックサーバーに接続され、サーバーがプライベート接続に参加し、それ以上帯域幅を使用しないというものでした。
これは本当ですか?この技の名前は?
「Cone」NAT (Cone はルーターの技術的なファミリー) でうまく機能する「 Hole Punching 」と呼ばれる手法があります。これは 100% 確実な手法ではありません。現在、ルーターの約 80% で UDP とうまく機能しています。
これは本当です。それがFogCreek Copilotの仕組みです
Joel のCopilot 2.0 投稿の項目 2 を見てください。
あなたの友人は、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 つのネットワーク間に直接のネットワーク接続はありませんが、両方のマシンがパブリック インターネット上の serverA に接続できます。
userB は次のコマンドを実行します。
ssh -R localhost:13306:localhost:3306 username@serverA
userA は次のコマンドを実行します。
ssh -L 3306:localhost:13306 username@serverA
これで、userA は任意のツールを使用して localhost の mysql に接続でき、cxn は serverA を介してトンネリングされ、userB のマシンの localhost で実行されている mysql デーモンに送信されます。
(タイプミスがないことを願っています。生後 2 日の娘を抱えながら片手で入力しました =))