VirtualBoxのネットワーク設定がいまいち理解してるのかわからない…
ので自分なりにまとめ。
※全然理解してない人なので、間違えあればごめんなさい。参考にする場合は自己責任で。
#ステップ1 (何もないとき)
初期段階を見てみた
CentOS7.2でサーバー(GUI)でインストール。
初期設定でネットワーク設定なし。
仮想NICは何も差していない状況です。
こんな感じで仮想マシンを起動してあげると
中身はこうなります。
virbr0という接続情報がデバイスvirbr0に紐づいている。
早速、これなに。
Google先生に聞くと以下のサイトで分かりやすい図があり。
http://www.orangetakam.com/blog/archives/1034
「分かりそう」で「分からない」でも「分かった」気になれるIT用語辞典はわかった気になれる。
http://wa3.i-3-i.info/word12032.html
virbr0を消してきれいにする
この仮想ブリッジを消すには以下。
なくなった~。
#ステップ2 (NATのとき)
NAT
NATってなーにを確認。以下Google翻訳使用。
https://www.virtualbox.org/manual/ch06.html#network_nat
-
NATを有効にした仮想マシンは、ルータ経由でインターネットに接続する実際のコンピュータのように機能する。
-
「ルータ」はVirtualBoxネットワークエンジンで、仮想マシンとの間でトラフィックを透過的にマッピングします。
-
NATモードの欠点は、仮想マシンは外部から見えず、到達不能であること。(ポートフォワーディング設定により回避可能)
-
ゲストオペレーティングシステムによって送信されたネットワークフレーム
↓
VirtualBoxのNATエンジンによって受信。TCP / IPデータを抽出。
↓
ホストオペレーティングシステムを使用して再送信
(VirtualBoxがホスト上の特定のポートをリッスンし、そこに到着するすべてのパケットを同じポートまたは別のポート上で再送信することを意味) -
仮想マシンは、VirtualBoxに統合されたDHCPサーバーからプライベートネットワーク上のネットワークアドレスと構成を受信します。最初のカードはプライベートネットワーク10.0.2.0に接続されます。
NATの説明の通りですね。
先ほどの説明にあったようにこの時、ゲストマシンからホストのアドレスにping疎通でき、インターネットに接続可能。
しかし、ホストからは10.0.2.15/24には到達しない。
##NAT設定で、ホストからゲストにSSH接続
ホストからtelnet localhost 1024で、tcpdumpでパケットが来てることを確認。
入れた~。
#ステップ3 (NATネットワークのとき)
##NATネットワーク
- NATサービスは、内部ネットワークに接続されています。
- ネットワークアドレス変換(NAT)サービスは、ホームルータと同様に動作し、ネットワークを使用してシステムをグループ化
- 仮想マシンを使用する仮想マシンは、その内部ネットワークに接続する必要があります。
NATと違いは、VirtualBoxのほかの仮想マシンとも疎通が取れること。
同じNATサービスに接続しているため、論理的に同じネットワークに属する。
仮想マシンをクローンして、Host1とHost2を作成。
以下のようなネットワーク設定になり、両方のゲストマシンから疎通が取れる。