Writer: noda 更新日:2019/08/27
こんにちは、野田です。
案件の中でVMWareを使う機会があり、
その際ネットワーク設定をいろいろ調べながらいじったので
備忘としてまとめていきます。
今回使用した環境は以下です。
・ホストOS:windows 10 Home
・ゲストOS:CentOS 7
・VMWare Work Station 15
ゲストOSのCentOSにはWebサーバーを構築しています。
ネットワーク設定は以下の3つを選択できます。
・ブリッジ
・NAT
・ホストオンリー
簡単にそれぞれの構造を説明します。
【ブリッジ】
ゲストOSは物理NICに直接IPアドレスを保有し、外部ネットワークに直接接続できます。
外部からはホストOSとゲストOSの2つのアドレスが見えます。
【NAT】
仮想のネットワーク環境が作られ、ホストOSとゲストOS間は通信可能です。
ゲストOSのIPアドレスはVMWareのDHCPサーバにより割り振られます。
ゲストOSが外部と通信する際は、NATによりIPアドレスを変換して通信します。
今回の記事はこの辺の設定になります。
【ホストオンリー】
ホストOSとゲストOS間は通信可能です。
ゲストOSと外部の通信はできません。
閉ざされたネットワークになります。
ここからさきほどのNATの設定方法です。
仮想ネットワークでIPを固定し、外部からも接続できるようにしてみます。
尚、設定ファイルを修正する際は、メモ帳などのテキストエディタを管理者として起動し、ファイルを開きます。
1、ネットワークモードを「NAT」にする
VVMWareでゲストOSの仮想マシン設定を開き、「NAT」を選びます。
2、ゲストOSのIPアドレスを固定する
C:ProgramData\VMware\vmnetdhcp.conf
にて仮想ネットワークのDHCPサーバの設定ができます。
エクスプローラの表示設定で隠しフォルダと隠しファイルが見えるようにしておく必要があります。
vmnetdhcp.confを開くと、以下のようになっています。
NATモードで設定するのはVMnet8 の方なので、そこだけ抜粋します。
# Virtual ethernet segment 8
# Added at 07/11/12 06:42:18
subnet 192.168.224.0 netmask 255.255.255.0 {
range 192.168.144.128 192.168.144.254; # default allows up to 125 VM's
option broadcast-address 192.168.144.255;
option domain-name-servers 192.168.144.2;
option domain-name "localdomain";
option netbios-name-servers 192.168.144.2;
option routers 192.168.144.2;
default-lease-time 1800;
max-lease-time 7200;
}
host VMnet8 {
hardware ethernet XX:XX:XX:XX:XX:XX;
fixed-address 192.168.144.1;
option domain-name-servers 0.0.0.0;
option domain-name "";
option routers 0.0.0.0;
}
# End
↑のrangeで始まる行がDHCPで割り振られるIPアドレスの範囲です。
この範囲外で任意のIPを設定します。
# Endの上に追記します。
host VMnet8 {
hardware ethernet YY:YY:YY:YY:YY:YY;
fixed-address 192.168.144.100;
}
YY:YY:YY.......の箇所はゲストOSのmacアドレスです。
ゲストOS上でifconfigコマンドで確認します。
fixed-addressに先ほど確認した範囲外で任意でIPを記述します。
保存したらwindowsを再起動します。
3、NAT設定
続いてNAT設定です。
外部からゲストOSのWebサーバにアクセスできるようにします。
C:\ProgramData\VMware\vmnetnat.conf
を開きます。
途中に[incomingtcp]という記述があります。
その下に以下を追記。
80 = 192.168.114.100:80
この例では、ホストOSの80番ポートにきたアクセスを
ゲストOS(192.168.114.100)の80番ポートに転送するという内容です。
保存したら、VMWare NAT Serviceを再起動します。
Power Shellで以下のコマンドを打ちます。
net stop "VMWare NAT Service"
net start "VMWare NAT Service"
4、確認
CentOSを起動したら、実際外部からアクセスできるか確認します。
ホストOSと同じLAN内にあるPCのブラウザから
「192.168.1.14:80」でアクセスします。
192.168.1.14はホストPCのIPアドレスです。
アクセスできました。
用途に合わせていろいろと使い道がありそうです。
これでまた一つネットワークについて、理解が深まりました。
さらに勉強していき、ネットワークについて知識を増やしていこうと思います。