Virtualbox ゲスト ネットワークにアクセスできません

Virtualbox ゲスト ネットワークにアクセスできません

ローカル マシンと、vSphere ESXi サーバーで仮想化された別のヘッドレス サーバーの両方で同じ ova イメージを使用しています。ローカル マシン
で VM を実行すると、NAT (localhost:2222) 経由とホストオンリー ネットワーク (192.168.56.111:22) 経由でゲストの SSH サーバーにアクセスできます。
ヘッドレス サーバーでゲストを実行すると、ホストオンリー ネットワークを使用してマシンに ping できません。NAT を使用しようとすると、ヘッドレス サーバーでポート 2222 が開いていますが、何も返されないため、ssh 接続がタイムアウトします。

vboxmanage showvminfo は、ゲストのネットワーク設定について次の情報を表示します (ローカル マシンとヘッドレス サーバーで同じ出力)。

NIC 1:           MAC: 080027788420, Attachment: NAT, Cable connected: on, Trace: off (file: none), Type: 82540EM, Reported speed: 0 Mbps, Boot priority: 0, Promisc Policy: deny, Bandwidth group: none
NIC 1 Settings:  MTU: 0, Socket (send: 64, receive: 64), TCP Window (send:64, receive: 64)
NIC 1 Rule(0):   name = Rule 1, protocol = tcp, host ip = , host port = 2222, guest ip = , guest port = 22
NIC 2:           MAC: 080027FBC41B, Attachment: Host-only Interface 'vboxnet0', Cable connected: on, Trace: off (file: none), Type: 82540EM, Reported speed: 0 Mbps, Boot priority: 0, Promisc Policy: deny, Bandwidth group: none

vboxmanage list hostonlyifs を実行すると、ローカル マシンとヘッドレス サーバーで同じ値が表示されます。

Name:            vboxnet0
GUID:            786f6276-656e-4074-8000-0a0027000000
DHCP:            Disabled
IPAddress:       192.168.56.1
NetworkMask:     255.255.255.0
IPV6Address:     fe80::800:27ff:fe00:0
IPV6NetworkMaskPrefixLength: 64
HardwareAddress: 0a:00:27:00:00:00
MediumType:      Ethernet
Wireless:        No
Status:          Up
VBoxNetworkName: HostInterfaceNetworking-vboxnet0

vboxmanage list natnets を実行すると、ローカル マシンとヘッドレス サーバーで同じ値が表示されます。

NetworkName:    NatNetwork
IP:             10.0.2.1
Network:        10.0.2.0/24
IPv6 Enabled:   No
IPv6 Prefix:    fd17:625c:f037:2::/64
DHCP Enabled:   Yes
Enabled:        Yes
loopback mappings (ipv4)
    127.0.0.1=2

ローカル マシンとヘッドレス サーバーの ifconfig では、同じ値を持つ vboxnet0 インターフェイスが表示されます。

ヘッドレス サーバー上のゲストの SSH サーバーにアクセスできない理由がわかりません。ご協力いただければ幸いです。

答え1

一般的に、VirtualBox の NAT は送信セッションにのみ使用します。受信セッションは問題があります。ただし、次のようにポート転送ルールを作成できます。

VBoxManage setextradata VMNameHere "VBoxInternal/Devices/pcnet/0/LUN#0/Config/guestssh/Protocol" TCP
VBoxManage setextradata VMNameHere "VBoxInternal/Devices/pcnet/0/LUN#0/Config/guestssh/GuestPort" 22
VBoxManage setextradata VMNameHere "VBoxInternal/Devices/pcnet/0/LUN#0/Config/guestssh/HostPort" 2222

ホストオンリー ネットワークは、その名の通り、ホスト専用です。つまり、ホスト上では使用できますが、他の場所では使用できません。そのため、次の 2 つのオプションがあります。

  • ホスト専用アダプタの代わりにブリッジアダプタを使用します。ブリッジアダプタは外部から利用できます。
  • ブリッジを作成する(Linuxの場合bridge-utils

ブリッジアダプタを使用します。

- 編集 -

ブリッジ アダプタは、OVA をネットワーク上に配置するのと同じです。ネットワークが DHCP を使用している場合は、DHCP サーバーのログに表示されるはずです。または、 を使用してnmapアドレスを見つけることもできます。

あるいは、2番目のアダプタをブリッジアダプタとして使用し、ホストにSSH接続して、サーバーがどのポートをリッスンしているかを判断します。netstat -an

関連情報