Edited at

ローカル・ループバック・アドレスを使った何ちゃってVPN

More than 1 year has passed since last update.


TCP/IPが有効なコンピュータでは127から始まるIPアドレス(ipv4)はそのコンピュータ内で有効なアドレスである

ローカル・ループバック・アドレス(127.0.0.1)とは?

よって、ネットワークアダプタを暗黙的に実装し上記記載の無数のIPアドレスを持っているのでした。


この無数のIPアドレスを簡単なntVPNとしてwindowsOS下で設定した例

例えば、一つのコンピュータ内に複数のヴァーチャルマシン(例えば、VirtulBoxなど)が起動しておりその中に複数のサーバが起動している時、

外部から接続可能なIPアドレスがこれまた一つしか与えられていないと言う環境においては、


クライアント🆑へのサービス(サーバ)ポートを外部から接続可能なIPアドレス中のTCPポート上に重複する事は出来ない。

例えば

サーバマシンのIPは192.168.7.8

サーバマシン内のvmは192.168.137.2,3,4で

それぞれSSH接続を持つ時、

当然外部から接続可能なIPアドレスへポートフォワードしそれぞれのSSH(22)ポートをそのIPの重複しないポートへ割り当てる事になる。

①192.168.137.2:22←192.168.7.8:12022

②192.168.137.3:22←192.168.7.8:13022

③192.168.137.4:22←192.168.7.8:14022


🆑から①に繋ぐ場合には192.168.7.8のポート12022に接続すれば良いでは無いか?と言う人は以下を読む必要は有りません。


Netshで簡単ntVPN

netsh interface portproxy command

🆑の例えば127.0.0.2のポート22(これは🆑上で利用していないIPかつポートである事)を①向けの仮想IP、ポートとする

そしてこれへのTcpポートアクセスを192.168.7.8:12022へポートフォワード設定すれば良い訳です。

この設定も一発簡単、DOSプロンプトを管理者モードで開いて数行でした。

netsh set mode mode=online

netsh interface portproxy add v4tov4 listenaddress=127.0.0.2 listenport=22 connectaddress=192.168.7.8 connectport=12022
netsh commit


以上。