-->
./
<!-- フラ&#65533;ュが見れな&#65533;のためにここに何か書&#65533; --> フラ&#65533;ュがインス&#65533;&#65533;ルされて&#65533;&#65533;たいで&#65533;&#65533;&#65533;

2009年11月30日

VMware Player3.0.0でのnatネットワークの設定

注意:この方法を使うと、サスペンドからの復帰後、ネットワークが使えなくなる可能性があります。
  訂正部分にあるとおり192.168.44.2に変更したところ、不具合が解消しましたが、しばらく様子見です。デフォルトゲートウェイとDNSサーバのIP変更することで、サスペンド復帰後の仮想マシンでも、ネットワークデーモンの再起動だけで、インターネットに繋がるようになりました。

26日あたりから丸三日ほどかかって、ローカルのWindowsXPからゲストのLinuxに接続が可能になりました。bridgedの接続だったのですが、sambaをインストールしてからつながらないことに気がついたのです。ゲストからはインターネット接続もローカルネットの他の仮想マシンへの接続もホストへの接続も問題なくできていました。

 ゲストのLinuxからはなんなくホストのWindowsネットワーク接続ができていたのですが、ホストからLinuxのsambaの共有フォルダには接続ができず、あれこれやっているうちに、ネットワーク自体が壊れたり、ドライバが消えたりとさんざんな目に遭いました。あれこれとドライバを入れ替えたり、挙げ句はWindowsXPの再インストールまでやりました。

 結局のところ、sambaの設定の過程でおかしくなったのか、はじめからできていなかったのかもわかりません。最近になってネットワーク構成自体も変更しているので、あるいはその影響かもしれません。よく考えてみるとホストからゲストに接続する機会というのはあまりなかったはずです。あるとすれば、Cygwinのシェルからのssh接続ですが、これは問題なく出来ていたような気がします。いずれにせよ、VMware Playerを使ってきてネットの接続で問題が起こるようなことはこれまで一度もありませんでした。

 sambaだけでなく、sshもapacheにも接続できない状態で、接続を試みると長い時間応答なしの状態になっていました。pingは通っていたので通信自体は出来ているようだったのですが、それがかえって問題の絞り込みを悪くしました。

 ネットで調べるとむしろnatの方が問題が出るらしく、bridgedでは普通にホストからゲストに接続できているようでした。また、natの方が接続に時間がかかるような情報も散見されました。ルータの初期化から思いつく限りの方法を試して埒があかなかったので、やはりこれはネットの構成の問題が絡んでいるのかと考え、あきらめてnatでの接続に方針を切り替えました。

 ちなみにsambaの設定は、同じルータにつながった別のWindowsXPから全く問題なくつながることを確認し、ホストのWindowsXPからも同じルータにつながった別のLinuxのsambaに接続出来ていることを確認していました。ネットの構成はADSLモデムがYahooBBで、ルータにnat接続しています。今月の19日からYahooBBに切り替えました。

 設定の方法ですが、この先再設定を迫られ、丸三日もつぶすわけにはいかないのでメモをかねて書いておきます。個人用なので詳しくは書きませんが、よければ参考にしてください。また、この方法は、独自に編み出した部分があり、しかもずいぶんと荒っぽい方法です。別にコピーをとるなり注意を払った上で、やるときは自己責任でお願いします。


vmxファイルの編集
 まず、
ethernet0.connectionType = "bridged"

 26日あたりから丸三日ほどかかって、ローカルのWindowsXPからゲストのLinuxに接続が可能になりました。
ethernet0.connectionType = "nat"
に書き換えます。

.encoding = "Shift_JIS"
config.version = "8"
virtualHW.version = "3"
memsize = "1024"
numvcpus ="2"  # 2個のCPU デュアルコア

ide0:0.present = "TRUE"
ide0:0.fileName = "vm-ubuntu-910.vmdk"

ide1:0.present = "TRUE"
# CD-ROMを利用
#ide1:0.fileName = "C:\Program Files\VMware\VMware Player\linux.iso"
#ide1:0.deviceType = "cdrom-image"
# ISOイメージを利用する場合はこちらのコメントを外す
ide1:0.fileName = "C:\Program Files\VMware\VMware Player\linux.iso"
#ide1:0.fileName = "D:\QEMU\linux.iso"


#floppy0.fileName = "false"
ethernet0.present = "TRUE"
ethernet0.connectionType = "nat"
usb.present = "TRUE"
sound.present = "TRUE"
displayName = "40G  Ubuntu 9.10"
guestOS = "ubuntu"
nvram = "vm-ubuntu-910.nvram"
scsi0:0.redo = ""
ethernet0.addressType = "generated"
ide1:0.autodetect = "TRUE"
checkpoint.vmState = ""
tools.remindInstall = "FALSE"
ide0:0.redo = ""


 以外の部分をすっぱり削除します。このファイルはVMware Playerの起動やメニューでの設定変更に伴って随時書き換えが行われるので念のため初期化しました。共有フォルダの設定はそのままでも大丈夫かもしれませんが、メニューから再設定が簡単にできるので、自分は消しました。



WindowsXPの設定
 [スタート]→[コントロールパネル]→[ネットワーク接続]
 「ローカルエリア接続]を右クリック、プロパティを選択
 「詳細設定」タブをクリック「インターネット接続の共有」で2カ所にチェックを入れ、「OK」

 sambaを使う場合は、「Windowsファイアウォール」の設定をクリック。
 「例外」タブをクリック。「ファイルとプリンタの共有」を選択。
 「編集」をクリック。表示された画面で「スコープの変更」をクリック。「カスタムの一覧」を選んで、次のように記入。
例: 192.168.44.0/255.255.255.0

 「OK」ボタンを押しながら、[ネットワーク接続]に戻る。
 「VMware Network Adapter VMnet8」を選択して右クリック、プロパティ。
 「インターネットプロトコル(TCP/IP)を選択して、[プロパティ]をクリック。
 ここで、IPアドレスとサブネットマスクを確認。IPアドレスが「192.168.44.1」となっていれば、これがゲストOSでの、「デフォルトゲートウェイ」と「DNSサーバ」になります。
「192.168.44.2」が正しいようです。「vmnetcfg.exe」を使うとデフォルトゲートウェイのアドレスが確認できますが、バージョン3.0.0では標準でインストールされていません。


仮想マシンでの設定
 次のような感じで設定します。
Ubuntuの場合
root@u9-desktop:/home/a9# cat  /etc/network/interfaces
auto eth0
iface eth0 inet static
address 192.168.44.20
netmask 255.255.255.0
#gateway 192.168.44.1
#dns-nameservers 192.168.44.1
gateway 192.168.44.2
dns-nameservers 192.168.44.2

root@u9-desktop:/home/a9# cat /etc/resolv.conf
# Generated by NetworkManager
nameserver 192.168.44.2

Fedora12の場合
[root@vmf fu]# cat /etc/sysconfig/network
NETWORKING=yes
HOSTNAME=vmf.hirono.net
GATEWAY=192.168.44.2

[root@vmf fu]# cat /etc/resolv.conf
# Generated by NetworkManager
nameserver 192.168.44.2

[root@vmf fu]# cat /etc/sysconfig/network-scripts/ifcfg-eth0
DEVICE=eth0
BOOTPROTO=none
ONBOOT=yes
IPADDR=192.168.44.92
NETMASK=255.255.255.0
TYPE=Ethernet
PREFIX=24
NAME="System eth0"
UUID=9fc06bd0-0ab0-7ffb-45f1-d7edd65f3e03
GATEWAY=192.168.44.2
DNS1=192.168.44.2
IPV6INIT=no
USERCTL=no
 
 通常なら、
# /etc/init.d/network restart
などと(これはFedora)、ネットワークの再起動をすればよいはずですが、システムの再起動をする必要がありました。
 順番としては、ゲストOSのネットワークの設定を変更し、シャットダウンさせ、それからホストの設定に取りかかった方がいいと思います。



 一通りの設定が終わったら、vmdkとvmx以外のファイルをすべて削除します。vmxは仮想マシンの設定ファイルであり、vmdkは仮想マシンのハードディスクの内容になっているはずです。それ以外のファイルを消し去ったことで、新たなハードウェア構成で、立ち上げることが出来るはずです。
 これで大丈夫だと思うのですが、結構ヤマカンでやったので、後々不具合がでるかどうかは、まったく保証の限りではなく、理屈の上で大丈夫そうだと判断してやりました。他にネットでも似たような方法を見たことがないので、本当に保証はできません。
 なお、nvramという拡張子のファイルはBIOSの設定内容になるそうです。これらの情報は起動の度にVMware Playerが適切に作ってくれているみたいです。


  設定ファイル内容はあくまで参考です。環境に応じてどこを置き換えるかは、これも理解と知識が必要になると思いますので、事前に調べてから実行した方がいいと思います。
 
  なお、VMware Player3.0.0からは、VMware Player独自でISOイメージを読み込み仮想マシンの作成が出来るようになっているそうです。知らなかったので自分はQEMUでvmdkファイルを作成しました。
 

Powered by ScribeFire.

posted by hirono at 08:34| Comment(0) | TrackBack(0) | 日記
この記事へのコメント
コメントを書く
お名前:

メールアドレス:

ホームページアドレス:

コメント:

この記事へのトラックバックURL
http://blog.sakura.ne.jp/tb/33931703

この記事へのトラックバック