VMware Player 5で仮想マシンとして動作するCentOS 6のネットワーク設定
VMware Player 5の仮想マシンとしてインストールした直後のCentOS 6.4ではネットワーク的にどこにも繋がらない。
CentOS、VMware Playerのそれぞれでネットワークの設定をする。
(1)VMware Player 5のネットワーク設定
ネットワークの設定を変更するために、VMware Player 5の「仮想マシン設定」画面を開き、デバイス一覧より、「ネットワークアダプタ」をマウスでクリックする。
《VMware Player 5 仮想マシン設定 - ネットワークアダプタの設定画面で設定されていた内容》
デバイスのステータス
・「接続済み」チェックボックスにチェックあり
・「パワーオン時に接続」チェックボックスにチェックありネットワーク接続
・「NAT:ホストのIPアドレスを共有して使用」ラジオボタンにチェックあり
まだこの仮想マシンにはネットワーク設定を一度もしていないため、この設定が初期設定なのであろう。
「ネットワーク接続」は、「NAT:ホストのIPアドレスを共有して使用」から「ブリッジ:物理ネットワークに直接接続」にラジオボタンのチェックを変更する。
「物理ネットワーク接続の状態を複製」については、使い方がよく分からなかったので、チェックボックスのチェックは外したままにしておく。
[アダプタの設定 (F)]ボタンをクリックし、「ブリッジの自動設定」画面に表示される内容を確認する。
《「ブリッジの自動設定」画面に表示される内容》
Microsoft Virtual WiFi Miniport Adapter #2
Microsoft Virtual WiFi Miniport Adapter
Intel(R) WiFi Link 1000 BGN
Atheros AR8151 PCI-E Gigabit Ethernet Controller (NDIS 6.20)
何もしなくても、ネットワークアダプタのチェックボックス全てにチェックが入っていた。
全てにチェックが入った状態が初期設定であろう。
このまま特に何も変更せず、[キャンセル]をクリックする。
「仮想マシン設定」画面は、[OK]ボタンをクリックする。
以上で、VMware Player 5側のネットワーク設定は完了となる。
次に、CentOS 6側の設定をする。
(2)CentOS 6のネットワーク設定
CentOS 6.4の初期インストール直後で、何もネットワーク設定をしないままifconfigを実行すると、以下のような結果が返ってくる。
# ifconfig
lo Link encap:Local Loopback
inet addr:127.0.0.1 Mask:255.0.0.0
inet6 addr: ::1/128 Scope:Host
UP LOOPBACK RUNNING MTU:16436 Metric:1
RX packets:4 errors:0 dropped:0 overruns:0 frame:0
TX packets:4 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:336 (336.0 b) TX bytes:336 (336.0 b)
eth0の設定がない。
この設定では、ホストOSのWindows 7からは接続できない。
Windows 7には、192.168.0.4というIPアドレスが割り振られているので、とりあえず、CentOS 6には192.168.0.9というIPアドレス(私の自宅のネットワークでは使用されていないIPアドレス)を割り当てることとする。
# vi /etc/sysconfig/network-scripts/ifcfg-eth0
《修正前》
DEVICE=eth0
HWADDR=00:0C:29:B7:8C:6A
TYPE=Ethernet
UUID=31a061f6-25a0-4895-bbe1-6dfaf5cd095e
ONBOOT=no
NM_CONTROLLED=yes
BOOTPROTO=dhcp
《修正後》
DEVICE=eth0
HWADDR=00:0C:29:B7:8C:6A
TYPE=Ethernet
UUID=31a061f6-25a0-4895-bbe1-6dfaf5cd095e
ONBOOT=yes ※ゲストOS(CentOS 6)起動時にeth0のネットワーク設定を自動的に有効にする。
NM_CONTROLLED=yes
BOOTPROTO=none
IPV6INIT=no ※ゲストOS(CentOS 6)のeth0でIPv6対応はしないこととする。
IPADDR=192.168.0.9 ※ゲストOS(CentOS 6)のeth0に割り当てるIPアドレス。ネットワーク上で使用されていない値にする。
NETMASK=255.255.255.0 ※NETMASK(サブネットマスク)の設定。ホストOS(Windows 7)と同一の値にする。
GATEWAY=192.168.0.1 ※GATEWAY(デフォルトゲートウェイ)の設定。ホストOS(Windows 7)と同一の値にする。
テストで外部ネットワークへの接続を色々試したいので、DNSサーバの設定も行う。
# vi /etc/resolv.conf
nameserver 106.187.2.33 ※ホストOS(Windows 7)が使用しているDNSサーバと同一。
ネットワークサービスを再起動し、ネットワーク設定を反映させる。
# /etc/rc.d/init.d/network restart
インターフェース eth0 を終了中: [ OK ]
ループバックインターフェースを終了中 [ OK ]
ループバックインターフェイスを呼び込み中 [ OK ]
インターフェース eth0 を活性化中: [ OK ]
これで、eth0へのIPアドレス(192.168.0.9)の割り当てが完了している。
ifconfigを実行すると、以下のような結果が返ってくる。
# ifconfig
eth0 Link encap:Ethernet HWaddr 00:0C:29:B7:8C:6A
inet addr:192.168.0.9 Bcast:192.168.0.255 Mask:255.255.255.0
inet6 addr: 240f:a8:3aa3:1:20c:29ff:feb7:8c6a/64 Scope:Global
inet6 addr: fe80::20c:29ff:feb7:8c6a/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:10488 errors:0 dropped:0 overruns:0 frame:0
TX packets:2153 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:1018613 (994.7 KiB) TX bytes:219986 (214.8 KiB)lo Link encap:Local Loopback
inet addr:127.0.0.1 Mask:255.0.0.0
inet6 addr: ::1/128 Scope:Host
UP LOOPBACK RUNNING MTU:16436 Metric:1
RX packets:38 errors:0 dropped:0 overruns:0 frame:0
TX packets:38 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:2712 (2.6 KiB) TX bytes:2712 (2.6 KiB)
eth0の設定が増えていることを確認できる。
以上で、CentOS 6側のネットワーク設定は完了となる。
試しに、ホストOSのWindows 7のコマンドプロンプトから、ゲストOSのCentOS6宛にpingコマンドを実行すると、きちんと応答が返ってくることが確認できた。
C:\Users\neko>ping 192.168.0.9
192.168.0.9 に ping を送信しています 32 バイトのデータ:
192.168.0.9 からの応答: バイト数 =32 時間 <1ms TTL=64
192.168.0.9 からの応答: バイト数 =32 時間 <1ms TTL=64
192.168.0.9 からの応答: バイト数 =32 時間 <1ms TTL=64
192.168.0.9 からの応答: バイト数 =32 時間 <1ms TTL=64
※何らかの設定に問題があり、ホストOSとゲストOSがネットワーク的に接続できていない場合は、以下のようなエラーになる。
C:\Users\neko>ping 192.168.0.9
192.168.0.9 に ping を送信しています 32 バイトのデータ:
192.168.0.4 からの応答: 宛先ホストに到達できません。
192.168.0.4 からの応答: 宛先ホストに到達できません。
192.168.0.4 からの応答: 宛先ホストに到達できません。
192.168.0.4 からの応答: 宛先ホストに到達できません。192.168.0.9 の ping 統計:
パケット数: 送信 = 4、受信 = 4、損失 = 0 (0% の損失)、
このようなエラーになる場合は、色々と原因を探るしかない。
pingの応答がきちんと返ってきていれば、Windows 7から(Tera Term等を使用して)ゲストOSのCentOS 6にSSH接続することもできる。
デフォルトゲートウェイが正しく設定できていれば、ゲストOS(CentOS 6)から外部ネットワークのサーバ宛にpingコマンドを実行して応答を確認することもできる。
# ping www.yahoo.co.jp
PING www.g.yahoo.co.jp (124.83.187.140) 56(84) bytes of data.
64 bytes from f11.top.vip.ogk.yahoo.co.jp (124.83.187.140): icmp_seq=1 ttl=53 time=31.3 ms
※pingの宛先が確実に存在するにもかかわらず、「ping: unknown host」という結果が返ってきた場合は、DNSの設定が正しくできていない可能性を疑うこと。