Я хочу получить доступ к именованному виртуальному хосту на своем Mac из браузера Android, работающего на Genymotion. Genymotion — это оболочка для VirtualBox, поэтому само собой разумеется, что те же флаги и функции, которые доступны для VirtualBox, должны быть доступны для виртуальных машин Genymotion.
Первоначально (используя виртуальную машину Ubuntu для тестирования) я получил это для работы с сетевым подключением NAT, с оговоркой, что мне пришлось использовать псевдоним IP-адреса, отличного от 127.0.0.1, для моей локальной сети (потому что я полагаю, что в противном случае имя хоста будет разрешаться на 127.0.0.1 на виртуальной машине, где сайта нет).
sudo ifconfig lo0 alias 192.168.0.100 up
И с использованием следующего, который заставляет хост разрешать адреса для виртуальной машины (и, таким образом, использовать файл hosts хоста):
VBoxManage modifyvm "Nexus 5 - Android 5" --natdnsproxy1 on
VBoxManage modifyvm "Nexus 5 - Android 5" --natdnshostresolver1 on
Это сработало для виртуальной машины Ubuntu, но не для виртуальной машины Genymotion. Далее я попробовал это:
VBoxManage setextradata "Nexus 5 - Android 5" "VBoxInternal/Devices/virtio-net/1/LUN#0/Config/HostResolverMappings/ local-sites/HostIP" 192.168.0.100
VBoxManage setextradata "Nexus 5 - Android 5" "VBoxInternal/Devices/virtio-net/1/LUN#0/Config/HostResolverMappings/ local-sites/HostNamePattern" "*.local"
До сих пор нет радости. Он просто не разрешает DNS. Я отредактировал файл .vbox вручную, чтобы быть уверенным (я не уверен, что изменение настроек с помощью командной строки влияет на виртуальные машины Genymotion), но ничего.