qshinoの日記

Powershell関係と徒然なこと

virtualbox nic

VirtualBoxでは最大4つまでのネットワークアダプタを設定することが出来ます。


VirtualBoxのネットワーク設定の画面


アダプタ
アダプタごとにタブが用意されています。


ネットワークアダプタを有効化
チェックを付けることでこのネットワークアダプタを有効にすることができます。


割り当て
ネットワークアダプタのモードを設定します。以下のモードが用意されています。

 

未割り当て
ネットワークカードはあるけど、ネットワークに接続できないそんなモードです。デフォルトのモードです。

 

NAT
NATではホストOSが使っているネットワークとは別の、VitualBoxの内部に用意されたネットワークがゲストOSのネットワークとして割り当てられます。VirtualBoxがホストOSとゲストOSの間に立ち、ルーターの役割を果たします。
後述するポートフォワーディングの設定ができます。

 

NATネットワーク

4.3で追加されたネットワークモードです。通常のNATではそれぞれの仮想マシンが独立したネットワークとなっていたために、NAT接続の仮想マシン同士は通信できませんでした。それに対しNATネットワークは1つのNATネットワークに複数の仮想マシンを接続することで、相互の通信がとれるNAT接続です。NATネットワークにした場合は接続するNATネットワークを選択します。このNATネットワークは環境設定の項目で複数作成することが可能です。

 

ブリッジ アダプター
ゲストOSがホストOSと同じネットワークを使用します。ネットワークからは全く別のマシンが存在することになります。

 

内部ネットワーク
ゲストOS同士だけで通信ができる閉じたネットワークです。外部との通信はできません。

 

ホストオンリー アダプター
ゲストOSとホストOS間のみ通信ができる閉じたネットワークです。外部との通信はできません。

 

汎用ドライバー
UDPトンネルとVDEを使えるようにするモードです。ほとんどの人には関係ありませんし、この機能を使用するにはVirtualBoxをソースからコンパイルしてインストール必要があります。

 


初心者の方はホストOSと同じように扱えるブリッジアダプターをおすすめします。


名前
ブリッジアダプタを選択しているときに、ホストマシン上のどのネットワークアダプタを使うかを選択します。
アダプタタイプ
アダプタタイプには
PCNet PCI II (Am79C970A)
PCNet FAST III (Am79C973)
Intel PRO/1000 MT Desktop (82540EM)
Intel PRO/1000 T Server (82543GC)
Intel PRO/1000 MT Server (82545EM)
準仮想化ネットワーク (virtio-net)
の6つが用意されています。
デフォルトのPCNet FAST IIIはほとんどのゲストOSで追加のドライバ無しで使用できます。ホストマシンがGigabitのNICを使っているならPRO/1000を使った方が良いでしょう。しかし別途ドライバを用意しなければならならいので、FAST III使ってPRO/1000のドライバをダウンロードしてからPRO/1000に切り替えるようにしてください。VirtualBox3.1から、Windows/Linuxゲスト限定ですが、ネットワークアダプタに準仮想化ネットワーク(virtio-net)を選択できるようになりました。
他のアダプタの完全仮想化よりも、準仮想化の方がエミュレーションのオーバーヘッドが少なくなるため、ネットワークのパフォーマンスの向上が期待できます。Linuxでは2.6.25以上のカーネルであればサポートしていますが、Windowsの場合はKVMプロジェクトのページからドライバをダウンロードしてインストールする必要があります。
いわゆるJumbo FrameもIntelアダプタタイプ限定でゲストOSで扱えるようですが、パケットドロップする可能性があるのでVirtualBoxはおすすめしていません。


プロミスキャスモード
ブリッジアダプ・内部ネットワーク・ホストオンリーアダプタを選択時に設定できます。スイッチングではない所謂バカHubを使用している時に、自身のネットワークカードに到達する自分宛以外のパケットも受信するモードです。
他のホスト同士の通信の解析などで使用します。まぁ、つまり「傍受」です。

 

拒否
プロミスキャスモードを使用しません。

 

許可したVM
他のゲストマシンの通信のみ受信します。

 

許可
自身のネットワークカードに到達するすべての通信を受信します。


MACアドレス
ネットワークカードに設定するMACアドレスを指定します。右側の緑のアイコンをクリックすると、ランダムに生成されたMACアドレスが表示されます。

 

ケーブル接続
VirtualBoxはネットワークケーブルの接続状態もエミュレートします。チェックを付ければケーブルを接続した状態になり、チェックを外せばケーブルを抜いた状態になります。これは仮想マシンが起動した状態でも操作可能です。


ポートフォワーディング
割り当てをNATにした場合に設定できます。NATの場合ゲストマシンはVirtualBox内の仮想ルーターに接続されるため、ホストマシンが所属するネットワークとは通信を行うことができません。そこでゲストマシンが接続する仮想ルーターにフォワーディング設定を行うことで、ゲストマシンからホストマシンのネットワーク、ホストマシンのネットワークからゲストマシン、のように通信を通すことができます。このへんのNATとポートフォワーディングの仕組みについては各自ググッてください。


VirtualBoxのネットワーク設定-ポートフォワーディングの画面

 

設定は非常に簡単です。
まずはフォワーディングのルール名を設定し、プロトコル、ホストマシンのIP、ホストマシンのポート、ゲストマシンのIP、ゲストマシンのポートを設定するだけです。以前はこのフォワーディングの設定をVboxmanageコマンドで行っていましたが、現在ではGUIで行えるようになりました。