家庭で仮想マシンを使った環境を構築しようと思うと大体VirtualBoxかVMware Workstation Playerに落ち着くのかなぁと勝手に思っています。開発やるならWSLが手っ取り早そうですね。
そんな中、私のような「ああこのLinuxディストリビューション試しに動かしてみたいなぁ」くらいのライトユーザーが迷いそうなことランキング個人的1位がネットワークアダプターのタイプだと思います。
今回はそんなアダプタータイプにさらっと触れていきたいと思います。
※お断り:申し訳ないことにVirtualBoxをほとんど使ったことが無いのでVMwareを例に紹介しています。VBやHyper-Vにも名称が異なる同じような設定はあると思います。多分ですが。
ブリッジ:
↑のような用途でVMを作成した際に一番無難になりそうな選択肢です。
仮想ネットワークスイッチ(デフォルトだとVMnet0)を介して仮想NICとホストの物理NICを接続します。仮想マシンにはホストと同じセグメントのIPアドレスが割り当てられ、インターネットの他、ホストPCやLAN内のNASにアクセスもできるし、印刷も普通にできます。
イメージとしてはパソコンを新しく買って来て家に設置したようなものです。まぁシンプル!
NAT:
NATのイメージを誤解を恐れず表現するなら、ホストPCの中にもう一つのLANがあるといった感じでしょうか。
仮想マシンにはDHCPによってプライベートアドレスが割り当てられ、VM同士、VM-ホスト間の通信が可能です。外部と通信する際は仮想のNATデバイスによってアドレス変換を行い、物理NICと同じIPで通信をします。
ホスト-VM間の通信ではホストも仮想NICを使ってやり取りします。また外部との通信を行う際はNATデバイスとホストは同じ物理NICを共有します。
ホストオンリー:
NATの外と接続できない版というイメージです。
閉じた仮想環境がほしい時に便利そうです。
LANセグメント:
LANセグメントでは仮想マシン間のみでの接続を行うことが出来ます。
ホストとは完全に隔離されています。
一応仮想マシンに複数のNICを設定してそれぞれにLANセグメントを割り当てれば別セグメント間でも通信することが出来ます。
図だとVRouterにNATかブリッジに設定したNICを追加すればインターネットにも接続できるはずです。
カスタム:
Workstation Proでは(たしか)VMnet10まで作成できたはずですが、カスタムでは仮想マシンのNICに対して任意のVMnetを割り当てることが出来ます。それらを組み合わせて柔軟なネットワークを構築でき、頑張ればとんでもない環境を構築できそうです。
私はそんなスキル持ち合わせていないので一度も使ったことがありませんが。
最近...でもないですがHyper-V環境とVMware環境を両立できるようになったのでWSLとVMwareの二者択一状態が改善されてとても過ごしやすくなりました。いい時代だなぁと思います。
参考URL:
https://docs.vmware.com/jp/VMware-Workstation-Pro/17/com.vmware.ws.using.doc/GUID-0CE1AE01-7E79-41BB-9EA8-4F839BE40E1A.html