Windows VirtualBox ゲストを Mac ホストの DNS 解決に従わせる

Windows VirtualBox ゲストを Mac ホストの DNS 解決に従わせる

ローカルテストに使用するMac のファイルにはすでにカスタム ドメイン名のエントリがあります/etc/hosts。 を使用してブラウザーから接続できますhttp://dev.mysite.co:5000

127.0.0.1 dev.mysite.co
127.0.0.1 localhost

Microsoft が提供する VirtualBox イメージの 1 つを使用して、Edge でサイトをテストしています。 を使用してローカルホストに接続する必要があるため、CORS の問題が発生しています。http://10.0.2.2:5000そのため、 のドメイン設定を再利用したいと思います/etc/hosts

ローカルホスト上のノード サーバーは をリッスンしています0.0.0.0:5000

http://dev.mysite.co:5000ゲスト OS がホストの DNS を使用するようにするこのコマンドを実行しましたが、 VM 内にロードできません。

VBoxManage modifyvm "MSEdge - Win10_preview" --natdnshostresolver1 on

このコマンドはまだ有効ですか? これを機能させるために他に何かする必要があるでしょうか?

答え1

/etc/hostsファイルは DNS リゾルバの一部ではありません。 をコピーするだけでもかまいません/etc/hostsが、VM の視点からはVM の IP (ループバック) であるC:\Windows\System32\drivers\etc\hostsため、機能しません。127.0.0.1

これを機能させるには、C:\Windows\System32\drivers\etc\hosts次の行を追加する必要があります。

 10.0.2.2       dev.mysite.co

dev.mysite.coこれにより、VM 内のすべてのリクエストがホストの IP に解決されます(これは想定内のことです10.0.2.2。たとえば、ホストの OS 上の VM アダプタの IP を確認してくださいifconfig vboxnet0)。

関連情報