VirtualBox - Gast Ubuntu verliert DNS, wenn der Host eine Verbindung zum VPN herstellt

11

Ich habe ein Ubuntu-Gastbetriebssystem in VirtualBox, das Standard-NAT für eth0 verwendet.

Funktioniert gut im Büro und zu Hause, AUSSER im Büro-VPN von zu Hause aus.

Wenn das Host-Betriebssystem (Windows 7) mit dem VPN verbunden ist, funktionieren DNS-Suchvorgänge im Virtualbox-Gast nicht. DNS-Lookups sind auf dem Host in Ordnung. Innerhalb von Virtualbox kann ich IPs sowohl innerhalb als auch außerhalb des VPN direkt anpingen, sodass dies kein Konnektivitätsproblem darstellt.

Es sieht so aus, als würde der Ubuntu-Gast laut /etc/resolv.confund localhost als DNS-Einstiegspunkt verwenden nslookup. Es sieht also so aus, als würde etwas lokal an andere zugrunde liegende DNS gesendet.

Wie behebe ich das?

wrschneider
quelle
Was verwenden Sie für VPN? Haben Sie Zugriff auf die VPN-Einstellungen auf dem Gerät, mit dem diese Computer eine Verbindung herstellen? Normalerweise beziehen die Computer, die eine Verbindung zum VPN herstellen, ihre Einstellungen vom VPN-Gerät.
jmreicha
Um zu verdeutlichen, dass die DNS-Suche auf dem Host einwandfrei funktioniert, ist nur der Virtualbox-Gast betroffen.
Wrschneider

Antworten:

17

Das hat aus irgendeinem Grund funktioniert

C:\...\VirtualBox\VBoxManage modifyvm "VM name" --natdnshostresolver1 on

Ich vermute, es liegt daran, dass der Host bei aktivem VPN etwas Besonderes für DNS-Suchvorgänge ausführt und nicht nur Anforderungen an die angegebenen DNS-Server weiterleitet, die VirtualBox aus der Windows-Konfiguration abgerufen hat.

wrschneider
quelle
1
Du hast den Tag gerettet, Alter.
CantGetANick
Hat perfekt für mich funktioniert!
Hai Minh Nguyen
1

Ich hatte eine sehr ähnliche Situation mit Lubuntu 16.04 (sollte in anderen Ubuntus identisch sein), aber dieses Update hat die Situation nicht verbessert. Zumindest mit 16.04 scheint das Problem zu sein, dass NetworkManager einen lokalen DNS-Proxy (dnsmasq) verwendet, und dies funktioniert bei VPN-Verbindungen zumindest in der Standardkonfiguration nicht gut.

Kommentieren / Löschen von dns = dnsmasq in /etc/NetworkManager/NetworkManager.conf

[main]
plugins=ifupdown,keyfile,ofono
# dns=dnsmasq

Es gibt wahrscheinlich eine Möglichkeit, dnsmasq zu konfigurieren, aber dies gibt (mir) einen gleichwertigen Zugriff auf den Host (DNS usw.), sodass ich nicht nachgeforscht habe. YMMV.

AntonOfTheWoods
quelle