web-dev-qa-db-ja.com

VPNを使用するWindows上のBash(Ubuntu)でDNSが機能しない

「Bash on Windows on Bash」のテストを開始したばかりで、気に入っています。

問題は、バックエンドサーバーと開発者サーバーにアクセスするためにVPNを使用する必要があることです。 (たとえば)Windows Bash Shellを使用して開発サーバーにsshしようとすると、ホスト名を解決できません。

Ip-addressを使用してsshを実行でき、これらのホスト名はWindowsの他の場所でも問題なく機能することに注意してください。 PuTTYと同様に、通常のコマンド、ファイルエクスプローラーなど。

/etc/resolv.confも確認しました。そこに仕事用ネームサーバーが表示されています。

ここからは、特にLinuxの場合、ネットワーキングスキルが足りないので、助けてください:D

10

これはルーティングの問題であり、WSLのバグではありません。ローカルサブネットがリモートサブネットと同じである可能性が非常に高いです。そして、私はあなたがブリッジドVPNを使用していると想定しています。

同じ問題が発生しました。 OpenVPNを使用して、オフィス(リモート)と自宅(ローカル)を接続しています。 2つのサブネットはどちらも192.168.1.0です。これは、多くのルーターで見られる最も一般的なサブネットです。

私は最終的に次の設定で問題を解決しました。私の目標は、オーバーヘッドを減らし、宛先がオフィスにあるトラフィックのみをリダイレクトするためにtunを使用することです。ただし、これはブリッジされたVPNでも機能します。

;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
1
Jason Chueh

これでDNSが機能しない問題は解決しませんが、DNSが機能しているように見える回避策です。

ホストファイル(/ etc/hostsにあります)を編集して、使用するホスト名のエントリを追加できます。

IPアドレスの後にスペースとホスト名が続くエントリを追加します。

123.456.1.1 target.Host.net

注、編集コマンドをSudoする必要があります。 Sudo vi /etc/hosts

私にとって、編集はbashシェルセッション全体にとどまります。マイクロソフトが将来うまくいけばバグを修正できると思います。今のところ、私はこの回避策を使用します。

0
Steve M