VirtualBox のNATネットワークについて
NATネットワークによるゲストOS間の通信はできたので、これについてもう少し調べてみた。
前回はこちら → NATネットワークでゲストOS間の通信を可能にする (VirtualBox)
導入環境
- Windwos 10 Pro
- VirtualBox (ver : 5.2.34)
- CentOS 7.7
- ローカルネットワーク:10.0.2.0/24
IP の割り当てられ方
ルータ(デフォルトゲートウェイ):10.0.2.1
Here, natnet1 is the name of the internal network to be used and 192.168.15.0/24 is the network address and mask of the NAT service interface. By default in this static configuration the gateway will be assigned the address 192.168.15.1, the address following the interface address, though this is subject to change. To attach a DHCP server to the internal network, modify the example command as follows: *1
ホストOS:10.0.2.2
明確な記載が公式ドキュメントにないため、根拠は不明。
ネット記事でホストOSにこの IP アドレスが割り当てられるよ、という記事がちらほらある程度。DHCPサーバ:10.0.2.3
C:\Program Files\Oracle\VirtualBox>VBoxManage.exe list dhcpservers
ゲストOS:10.0.2.4、10.0.2.5、…
DHCPによって、空いている番号が自動的に割り当てられる。
基本的には、ゲストOSを起動した順に IP アドレスが割り当てられる。
ネットワーク構成図
正確かはわからないけど、イメージとしてはこんな感じ。

ポートフォワーディング
ゲストOSに SSH をしたいとか考えた時に、ポートフォワーディングをして接続できるようにする。 ここでは、ゲストOSに SSH をできるようにする。
設定
- VirtualBox を開き、[ファイル] → [環境設定] をクリックします。

- [ネットワーク] をクリックします。

- [選択したNATネットワークを編集します] をクリックします。

- [ポートフォワーディング] をクリックします。

- [新規ポートフォワーディングルールを追加します] をクリックします。

- [名前] に"SSH 01"(任意)、[プロトコル] に"TCP"、[ホストIP] に"127.0.0.1"、[ホストポート] に"2200"(任意)、[ゲストIP] に"10.0.2.4"、[ゲストポート] に"22"を設定します。

- [OK] をクリックし、設定を保存します。
確認
- SSH クライアントにログイン情報を入力します。

- ログインできることを確認します。

終わりに
これで、ゲストOS間の通信もできるようになったし、ホストOS→ゲストOSの通信もできるようになったので、使える状態になっただろう。