DNS non funziona in Bash (Ubuntu) su Windows usando VPN


10

Ho appena iniziato a provare "Bash su Ubuntu su Windows" e mi piace!

Solo, il problema è che ho bisogno di usare VPN per accedere ai nostri server di back-end e sviluppatori. E quando si tenta di (ad esempio) inviare ssh al nostro server di sviluppo con la shell di Windows Bash, non è possibile risolvere il nome host.

Nota che sono in grado di usare ssh usando l'indirizzo IP, e anche questi nomi host funzionano bene altrove in Windows. Come con stucco, cmd normale, Esplora file ecc.

Ho anche controllato il file /etc/resolv.conf e posso vedere il nostro nameserver di lavoro elencato lì.

Da qui in poi le mie capacità di networking sono carenti, specialmente con Linux, quindi per favore aiutatemi: D


Ho appena colpito lo stesso problema. Sei riuscito a risolvere il problema altrove?
Hugh,

Risposte:


1

È un problema di routing, non un bug di WSL. È molto probabile che la tua sottorete locale sia la stessa della sottorete remota. E suppongo che tu usi la VPN con bridge.

Ho riscontrato lo stesso problema. Uso OpenVPN per connettere il mio ufficio (remoto) e la mia casa (locale). Le due sottoreti sono entrambe 192.168.1.0, che è la più comune dove si trovano su molti router.

Alla fine ho risolto il problema con la seguente configurazione. Il mio obiettivo è utilizzare tun per ridurre le spese generali e reindirizzare solo il traffico in cui la destinazione è in ufficio. Tuttavia, questo funzionerebbe anche con la VPN con bridge.

;make the dhcp-option works on Windows 10.
script-security 2
;do not accept any pushed route command.
route-nopull
;make sure the connection still go through my home router. This line may not be necessary. You can try to remove this line and see it the VPN works.
route 192.168.1.1 255.255.255.0 net_gateway
;redirect the traffic where the destination is within the 192.168.1.0 subnet to OpenVPN gateway.
route 192.168.1.128 255.255.255.128
route 192.168.1.0 255.255.255.128
;set the DNS server which is in the office
dhcp-option DNS 192.168.1.254
dhcp-option DNS 192.168.1.253
dhcp-option DOMAIN my.company.domain

0

Ciò non risolve il problema con il DNS non funzionante, ma è una soluzione alternativa che sembra funzionare.

È possibile modificare il file hosts (su / etc / hosts) e aggiungere una voce per il nome host che si desidera utilizzare.

Aggiungi una voce con l'indirizzo IP seguito da uno spazio e dal nome host.

123.456.1.1 target.host.net

Nota, avrai bisogno del sudotuo comando di modifica.sudo vi /etc/hosts

Per me, la modifica si attacca alle sessioni della shell bash. Suppongo sia un bug che Microsoft risolverà, si spera, in futuro. Per ora, uso solo questa soluzione alternativa.


-1

Ho lo stesso problema. Ho temporaneamente modificato /etc/resolv.conf con un solo nameserver e un dominio di ricerca (per la rete VPN) e ho risolto i nomi host su quella rete. Questa modifica non è persistente, quindi uscire e riavviare Bash su Ubuntu su Windows ripristinerà /etc/resolv.conf alle impostazioni predefinite.


1
"ma vorrei davvero sapere come impostare correttamente le interfacce di rete per Bash su Ubuntu su Windows in modo che stabilire una connessione VPN in Windows configuri automaticamente il DNS." - Dovresti rimuovere questo commento dalla tua risposta.
Ramhound,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.