
VirtualBox で非常に奇妙な問題が発生しています。
ほとんどの場合、私のラップトップはイーサネット接続に有線接続されています。時々、デスクから離れているときは、Wi-Fi 以外の選択肢がありません。Wi-Fi に接続すると、ホスト コンピューター (Windows 10) は、問題なく数秒でネットワークにアクセスできます。ただし、ゲスト (Windows XP SP3) は、まだオフラインであるかのように動作します。
VirtualBox での私のネットワーク構成は次のとおりですNAT
。
奇妙なことに、これはワイヤレスでのみ発生します。コンピューターを有線接続すると、ホストOSが一度もないもっているどれでもネットワーク接続の取得に関する問題。ゲスト OS がインターネットにアクセスできるようにする必要があるため、NAT として設定しましたが、ホスト外部のクライアントがゲスト OS に接続することは望ましくありません。また、ゲスト マシンを有線ネットワーク カードまたは無線ネットワーク カードのいずれかに結び付けたくありませんでした。そうすると、どちらか一方しか機能しなくなるためです。
逆に、Wi-Fiに接続すると、いつもゲストからのインターネット接続に関する問題。
一度問題が発生したとき、入力したらipconfig /flushdns
突然すべてが機能するようになりました。それ以来、それだけでは不十分です。DNS をフラッシュするだけでは、Wi-Fi で機能させるのに十分ではありません。
強制的に動作させる唯一の方法は、ゲストのVirtualBox設定でネットワークアダプタを から に変更することですNAT
。Bridged
この時点ではまだ動作しません。ただし、今ipconfig /flushdns
(ゲストで)と入力すると、突然すべてが機能するようになります。ネットワークにアクセスできます。さらに奇妙なのは、これを元に戻せるようになったことですNAT
。突然、機能しなくなりますが、その後、ipconfig /flushdns
また、 それが動作します。
言い換えれば、私は完全に円環を描いて、NAT
ようやく機能する接続に戻ったのです。開始状態と終了状態は全く同じなので、ゲストが独自にネットワーク接続できない理由がわかりません。Wi-Fi に接続するたびに入力するだけで済むのであれば、それはそれでよいのですが、ゲストを終了してアダプタをからipconfig /flushdns
に変更し、その後 に戻し、コマンドを入力しなければならないのは本当に面倒です。NAT
Bridged
NAT
なぜこのようなことが起こるのでしょうか。そして、もっと重要なのは、これを修正して、有線接続の場合と同じようにシームレスに動作させるにはどうすればよいのでしょうか。(ipconfig /flushdns
たとえば、Wi-Fi からイーサネットに戻るときに入力したり、アダプタの設定を変更したりする必要はありません)。
以下は、最近のトラブルシューティング セッションからのコマンド プロンプトの出力です。
Wi-Fi に接続しただけで、ネットワークにアクセスできません:
Microsoft Windows XP [Version 5.1.2600]
(C) Copyright 1985-2001 Microsoft Corp.
C:\Documents and Settings\InterLinked>ping google.com
Ping request could not find host google.com. Please check the name and try again
.
C:\Documents and Settings\InterLinked>ping google.com
^C
C:\Documents and Settings\InterLinked>ipconfig /flushdns
Windows IP Configuration
Successfully flushed the DNS Resolver Cache.
C:\Documents and Settings\InterLinked>ping google.com
Ping request could not find host google.com. Please check the name and try again
.
NAT
に変更してBridged
もう一度お試しください:
C:\Documents and Settings\InterLinked>
C:\Documents and Settings\InterLinked>ping google.com
早期に終了したため出力がありませんが、DNS をフラッシュするまで ping は失敗します。
^C
C:\Documents and Settings\InterLinked>ipconfig /flushdns
Windows IP Configuration
Successfully flushed the DNS Resolver Cache.
C:\Documents and Settings\InterLinked>ping google.com
Pinging google.com [172.217.7.14] with 32 bytes of data:
Reply from 172.217.7.14: bytes=32 time=15ms TTL=48
Reply from 172.217.7.14: bytes=32 time=13ms TTL=48
Reply from 172.217.7.14: bytes=32 time=15ms TTL=48
Reply from 172.217.7.14: bytes=32 time=20ms TTL=48
Ping statistics for 172.217.7.14:
Packets: Sent = 4, Received = 4, Lost = 0 (0% loss),
Approximate round trip times in milli-seconds:
Minimum = 13ms, Maximum = 20ms, Average = 15ms
C:\Documents and Settings\InterLinked>
Bridged
次のように変更しますNAT
:
C:\Documents and Settings\InterLinked>ping google.com
Pinging google.com [172.217.7.14] with 32 bytes of data:
Reply from 172.217.7.14: bytes=32 time=15ms TTL=47
Destination host unreachable.
Destination host unreachable.
Destination host unreachable.
Ping statistics for 172.217.7.14:
Packets: Sent = 4, Received = 1, Lost = 3 (75% loss),
Approximate round trip times in milli-seconds:
Minimum = 15ms, Maximum = 15ms, Average = 15ms
C:\Documents and Settings\InterLinked>ipconfig /flushdns
Windows IP Configuration
Successfully flushed the DNS Resolver Cache.
C:\Documents and Settings\InterLinked>ping google.com
Pinging google.com [172.217.7.14] with 32 bytes of data:
Reply from 172.217.7.14: bytes=32 time=12ms TTL=47
Reply from 172.217.7.14: bytes=32 time=6ms TTL=47
Reply from 172.217.7.14: bytes=32 time=188ms TTL=47
Reply from 172.217.7.14: bytes=32 time=14ms TTL=47
Ping statistics for 172.217.7.14:
Packets: Sent = 4, Received = 4, Lost = 0 (0% loss),
Approximate round trip times in milli-seconds:
Minimum = 6ms, Maximum = 188ms, Average = 55ms
C:\Documents and Settings\InterLinked>
答え1
示唆されているように、VirtualBox DNS リゾルバを有効にすることが解決策です。
具体的な手順は次のとおりです。
- VM をシャットダウンします。マシンがオンのときは DNS リゾルバーをオンにすることはできません。
- VirtualBoxディレクトリに移動しますホストコマンドプロンプトから:
cd C:\Program Files\Oracle\VirtualBox
- 次のコマンドを実行します。
VBoxManage modifyvm "<VM name>" --natdnshostresolver1 on
<VM name>
は VM の名前であり、実行することVBoxManage list runningvms
でも見つけることができます。