- ベストアンサー
VirtualBox Host Guest 間通信について
- VirtualBoxを使用し、GuestOSがLANにNAT設定で接続されている状態で、HostとGuest間の通信について質問です。
- 現在、HostからGuestへの通信はできない状態であり、Route設定を行っても改善されません。
- NAT設定ではHostからGuestへの通信はできないのでしょうか?正しい設定方法を教えてください。
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
何のためにVirtualBoxでのNATモードが必要なのか分かりませんが、VMware PlayerならNATモードでも問題なくホスト、ゲスト間で双方向の通信が可能です。 Windows OSのネットワーク共有も問題なく動作します。 但し、VirtualBoxとVMware Playerの双方がインストールされるとネットワークで不具合があるようです。 尚、ゲストOSを複数起動しても相互の通信で問題ありません。
その他の回答 (2)
- bunjii
- ベストアンサー率43% (3589/8249)
>そんな気はしてるんですが質問に書いてるように >肝心のGatewayがどれになるのかが分からないんです >どれがGatewayに相当するのでしょうか? ゲストOSのネットワークがNATモードのときはホストOSがルーターの役割になりますので、ホストOSからゲストOSにpingの要求してもポートが閉じているとゲストOSまでパケットが届かないのではないでしょうか。 ゲストOS側にHost-Onlyのアダプターを追加すればホストOSからゲストOSへの要求が通ります。 但し、ホストOSの実ネットワークにある他の実PCとゲストOSの相互通信は不可能です。 Guest環境 WindowsXP(SP3) GuestAdditions インストール済み LAN1 10.0.2.15 サブネット 255.255.255.0 Gateway 10.0.2.2 DHCP 10.0.2.2 DNS 192.168.1.1 LAN2としてHost-Onlyを追加すると以下のようになると思います。 LAN2 192.168.56.101 サブネット 255.255.255.0 Gateway ブランク DHCP 192.168.56.100 DNS ブランク
お礼
>ホストOSの実ネットワークにある他の実PCとゲストOSの相互通信は不可能です。 今回それは考えていません(あくまでHOST OSとGuest OS間で1:1通信が目的) でもってその後こちらでも調べていたのですがある程度予感していた >NAT設定ではHost->Guest通信できないのが当たり前 (VirtualBoxの仕様)ということのようです 以下とりあえずの参考資料 http://www.hakutai.org/blog/2010/08/19 http://nextindex.jp/virtualbox/centos_network.html http://tech.lampetty.net/tech/index.php/archives/375 何処だか忘れましたが思い切り HOST -> Guest は通信できない と明記してるところもありました(上記URL以外) Host-Only アダプタとの併用では普通に通信確認可能でした (意識的にRouteコマンド実行しなくても通信可) ※ わざわざ2個設定するぐらいならブリッジのほうが早いかなと 個人的には影響受けませんがGuestOS複数起動したりすると NATだけでもまた厄介な話が出てきたりするようです (複数Guestで同じIPになるとかなんとか) 分からないからブリッジ設定で使ってたって選択はそれほど間違いでもなかったようです (そのほうが簡単だと書かれてるURLもありました) >ホストOSがルーターの役割になりますので、ホストOSから >ゲストOSにpingの要求してもポートが閉じていると >ゲストOSまでパケットが届かないのでは に関しては すぐ確認できないのですが 念のため後程Ping以外で コネクションが張れるか確認してみたいと思います (全てPingで確認してたのと NatではPing通過できないというような内容の記事も確かにあるので) 結果については確認後補足させていただこうかと思っています
補足
Pingではなく直接コネクション張れるか見てみましたがやはり無理のようです 更にこの前出来てたRoute add 10.0.2.0 MASK 255.255.255.0 192.168.1.*(HOST PCのIP) もなぜかパラメータエラーに・・・なんか勘違いしてるかな でも冷静に考えればPC1台だけでソフト構成して構築してるのに 別途Routeコマンド打たないとルーティングできないってのもあり得ない気がしてきました その意味では以前できたほうがおかしいのかもしれません(深く追求するのはやめました) Vrt4ではポートフォワード設定が追加されているようなので多少期待が持てるかも (使いたいのは特定ポート間通信) と思っているのですがアップデート中に固まるようで(辛抱が足りないのかもしれません) 急ぎ仮想環境使うために為再度3に戻したりといった状態で悩んでます (今は先にやらなきゃいけないことができたためこれも後回し状態)
- bunjii
- ベストアンサー率43% (3589/8249)
>試にHOST OS側で >Route add 10.0.2.0 MASK 255.255.255.0 192.168.56.1 と設定してみましたが >状況は変わりませんでした ルーティングの宛先が違っています。 192.168.56.1 はGest OSがHost-Onlyのモードを選択したときに指定する宛先になります。 代わりに 10.0.2.2 を 10.0.2.0/24 宛の Gateway に指定してください。 検証していませんが論理的に辻褄が合う設定をすれば通信が出来るはずです。
お礼
書き忘れたので補足の補足です 127.0.0.1を設定しようとするとパラメータエラー 10.0.2.* をやると以下のようなエラーとなります (10.0.2.0下のゲートウェイ設定で10.0.2.*設定しようとしてるから当たり前だと思うけど) The route addition failed: Either the interface index is wrong or the gateway do es not lie on the same network as the interface. Check the IP Address Table for the machine.
補足
>ルーティングの宛先が違っています。 >192.168.56.1 はGest OSがHost-Onlyのモードを選択したときに指定する宛先になります。 >代わりに 10.0.2.2 を 10.0.2.0/24 宛の Gateway に指定してください。 そんな気はしてるんですが質問に書いてるように 肝心のGatewayがどれになるのかが分からないんです どれがGatewayに相当するのでしょうか? PC上に出てるIP情報は記載したものが全てです と思い立って Route add 10.0.2.0 MASK 255.255.255.0 192.168.1.*(HOST PCのIP) をやってみましたが状況に変化なし 127.0.0.1 や 10.0.2.* をやるとコマンドでエラーが出ます
お礼
>VirtualBoxでのNATモードが必要なのか なんか分かりにくい仕様のようです Guest自体が簡単に外部通信できるようにってことに主眼が置かれているようなイメージらしいです 自前でルータ用意できるんであればブリッジでつなげばいいからNAT不要だし 他のハード一切用意出来なくてIP1個しか取れない環境だけどGuestでも WEBアクセスしたいという意味では確かに便利だとは思いますが ちょっと変わったことをやろうとするとハマるということに改めて気が付かされました >VMware PlayerならNATモードでも問題なく 確かにソフトを変えるという手もあるのですがいかんせん慣れが・・・・ 仮想環境導入時に何種類かのソフトを試したのですが個人的に VirtualBoxが一番使いやすかったので >ゲストOSを複数起動 現状32ビットOS使っているためメモリ3Gしか使えないのと 仮想環境は結構な負荷がかかるようなのでそこまでは求めてません 普段XP日本語環境使ってるんですがソフト作成にあたり(OS/言語の違いで) 作った画面のレイアウトが崩れることがありその確認の為だけに 再起動が面倒だとかいった理由で導入してます (PC用意するのが結構大変だったりしますのであくまでその場しのぎ) どうしても必要になった場合は他のソフトへの移行も再度検討したいと思います