みなさん、こんにちは。
VirtualBoxを使っていると、ホストOSとゲストOSの間で通信したい場面がよくありますよね。最も直感的なのはブリッジアダプターを使う方法で、ホストとゲストがLAN上で独立したデバイスとして振る舞うため、他の端末からもゲストOSにアクセスできて非常に便利です。
しかし、「ゲストOSと通信できる端末をホストOSのみに限定したい」というセキュリティ上の要件や、ネットワーク構成上の都合でブリッジ接続が難しい場合もあります。
そんなときに役立つのが、「ホストオンリーアダプター」 または 「NAT+ポートフォワーディング」 です。
今回は、これらの設定方法を解説し、それぞれの特徴や使い分けについてもご紹介します。
設定を始める前に – VirtualBox拡張パックのインストール
今回ご紹介するネットワーク設定の一部は、VirtualBoxの拡張パック(Extension Pack) の機能を利用します。まだインストールしていない場合は、事前にインストールしておきましょう。
- お使いのVirtualBoxのバージョンに合わせたExtension Packを公式サイトからダウンロードします。
- 通常はダウンロードしたファイルをダブルクリックするだけでインストールが開始されます。
【Linuxユーザーの方へ】
環境によっては、ダブルクリックやVirtualBoxのGUI画面からのインストールで権限エラーが発生する場合があります。私はBodhi Linux 7.0.0で試したのですが、うまくインストールできませんでした。その場合は、以下のコマンドを使ってインストールしてみてください。
sudo VBoxManage extpack install --replace Oracle_VM_VirtualBox_Extension_Pack-7.1.10.vbox-extpack
(Oracle_VM_VirtualBox_Extension_Pack-7.1.10.vbox-extpack
の部分は、ダウンロードしたファイル名に合わせて適宜変更してください。)

1. ホストオンリーアダプターを使う方法
ホストオンリーアダプターは、その名の通りホストOSとゲストOS間、およびゲストOS同士での通信を可能にするアダプターです。ゲストOSは単体ではインターネットに接続できませんが、NATアダプターと併用することでインターネット接続も実現できます。
特徴
- ホストOS ⇔ ゲストOS 間で通信可能
- ゲストOS同士でも通信可能
- ゲストOS単体ではインターネット接続不可(NATと併用で解決)
設定手順
ステップ1:ホストオンリーネットワークの作成
まず、VirtualBoxマネージャーでホストオンリーネットワークを作成します。
- VirtualBoxマネージャーを開き、メニューバーの「ツール」 → 「ネットワーク」 を選択します。
- 「ホストオンリーネットワーク」 タブを選択し、「作成」 ボタンをクリックします。
- ネットワーク名(例:
vboxnet0
)を任意で設定します。- ゲストOSにインターネット接続が必要な場合
- 「アダプターを手動で設定」 を選択し、DHCPサーバーを無効化します。 例: IPv4アドレス
192.168.56.1
/ サブネットマスク255.255.255.0
などを設定します。
- 「アダプターを手動で設定」 を選択し、DHCPサーバーを無効化します。 例: IPv4アドレス
- ゲストOSにインターネット接続が不要な場合
- 「アダプターを自動で設定」 を選択し、DHCPサーバーを有効化します。これにより、複数のVM間でIPアドレスが自動的に割り振られ、手軽に通信できるようになります。
- ゲストOSにインターネット接続が必要な場合

ステップ2:ゲストOSのネットワークアダプター設定
次に、通信したい仮想マシンの設定を変更します。
- 対象の仮想マシンを選択し、「設定」 → 「ネットワーク」 を開きます。
- インターネット接続が必要な場合:
- 「アダプター1」 は「NAT」 のままにします。
- 「アダプター2」 を有効化し、「ホストオンリーアダプター」 を選択します。
- 「名前」には、先ほど作成したホストオンリーネットワーク名(例:
vboxnet0
)を指定します。
- インターネット接続が不要な場合:
- 「アダプター1」 を「NAT」から「ホストオンリーアダプター」 に変更します。
- 「名前」には、先ほど作成したホストオンリーネットワーク名(例:
vboxnet0
)を指定します。
- インターネット接続が必要な場合:

ステップ3:ゲストOSのIPアドレス設定
ゲストOSを起動し、OS側でIPアドレスを設定します。
- ネットワークカードが1つの場合
- 「アダプター1」をNATにした場合でもホストオンリーアダプターにした場合でも、IPアドレスの取得方法は自動(DHCP) を選択します。
- ネットワークカードが2つの場合
- 「アダプター1」はNATなので自動(DHCP) に設定し、「アダプター2」はホストオンリーアダプターなので、手動でIPアドレスを設定します。
- 例: ホストOSが
192.168.56.1
の場合、ゲストOSは192.168.56.2
など。
この際、ホストオンリーアダプター側のネットワークカードのデフォルトゲートウェイは空欄にしてください。 デフォルトゲートウェイはDHCP側で設定されるためです。
【Linux系サーバーでCUI操作の場合】
nmcli
コマンドや nmtui
ツールを使って設定できます。
ステップ4:通信確認
設定が完了したら、ホストOSからゲストOSへの通信を確認してみましょう。
ホストOS(例: 192.168.56.1
)から、ゲストOSのIPアドレス(例: 192.168.56.2
)に対してping
コマンドを実行したり、ssh
で接続できることを確認します。
この場合、ホストOSからゲストOSへは、まるで通常のLAN接続のように通信できます。
2. NAT+ポートフォワーディングを使う方法
NAT(Network Address Translation) は、ゲストOSがホストOSのネットワークを通じてインターネットに接続するための一般的なアダプターです。
通常、NATアダプターを使っているとホストOSからゲストOSへの直接的な通信はできませんが、ポートフォワーディングを設定することで、特定のサービスにのみアクセスできるようになります。
特徴
- ゲストOSはインターネットに接続可能
- ホストOS → ゲストOSへの通信はポートフォワーディングで実現
- ポートフォワーディングを設定した特定のサービスのみホストOSからゲストOSへ通信可能
設定手順
- 仮想マシンの「設定」 → 「ネットワーク」 を開き、「アダプター1」 を「NAT」 に設定します(通常はデフォルトで設定されています)。
- 「ポートフォワーディング」 ボタンをクリックして設定画面を開きます。
- 新しいルールを追加します。
例: ホストOS(127.0.0.1
)の1888
番ポートへのアクセスを、ゲストOS(NATによって割り振られたIPアドレス10.0.2.15
)の1880
番ポートへ転送する場合。
名前 | プロトコル | ホストIP | ホストポート | ゲストIP | ゲストポート |
---|---|---|---|---|---|
node-red | TCP | 127.0.0.1 | 1888 | 10.0.2.15 | 1880 |
ゲストIPは環境により異なります。OSにログインして確認してください。
通信確認
設定したポートフォワーディングが機能するか確認します。
ホストOSから localhost:1888
でアクセスし、ゲストOSで起動している 1880
ポートのサービス(例えばNode-REDなど)にアクセスできることを確認します。

この方法では、ポートフォワーディングを設定したゲストOSの特定のサービスにしか、ホストOSから通信できないため、セキュリティを確保しつつ必要なサービスにアクセスできます。
ネットワークアダプターの種類と通信可否(抜粋)
アダプター種別 | ホスト-ゲスト通信 | インターネット | ゲスト間通信 |
ホストオンリー | ○ | × | ○ |
NAT | △(要PF) | ○ | × |
ブリッジ | ○ | ○ | ○ |
まとめ
VirtualBoxでホストOSとゲストOS間でセキュアに、または特定の条件下で通信したい場合、ブリッジアダプター以外にも強力な選択肢があります。
- ホストOSとゲストOS間で直接通信したい場合は、「ホストオンリーアダプター」 を追加し、必要に応じてNATと併用しましょう。IPアドレスの割り当てやネットワークの有効化も忘れずに行ってください。
- ゲストOSはインターネットに接続させつつ、ホストOSからゲストOSの特定のサービスにだけアクセスさせたい場合は、「NAT+ポートフォワーディング」 が便利です。
今回ご紹介した設定を参考に、みなさんのVirtualBox環境をより快適で安全なものにしてくださいね。
本日も最後までお読みいただきありがとうございました。
それでは、よいVirtualBoxライフを!