az login
私は自分のWindowsマシンのWSLからやっていました。次に、エラーが発生します。
Please ensure you have network connection. Error detail: HTTPSConnectionPool(host='login.microsoftonline.com', port=443): Max retries exceeded with url: /common/oauth2/token (Caused by NewConnectionError('<urllib3.connection.VerifiedHTTPSConnection object at 0x7f401d135630>: Failed to establish a new connection: [Errno -3] Temporary failure in name resolution',))
これがDNSの問題であることを願っています。/etc/resolv.conf
だから私はWSLをチェックしました:
# This file was automatically generated by WSL. To stop automatic generation of this file, remove this line.
nameserver 192.168.1.1
nameserver fcc0:0:0:ffff::1
nameserver fcc0:0:0:ffff::2
192.168.1.1 がデフォルト ゲートウェイです。
私が試したいくつかのコマンドの結果があります:
$ ping 192.168.1.1
PING 192.168.1.1 (192.168.1.1) 56(84) bytes of data.
64 bytes from 192.168.1.1: icmp_seq=1 ttl=128 time=0.351 ms
64 bytes from 192.168.1.1: icmp_seq=2 ttl=128 time=0.888 ms
64 bytes from 192.168.1.1: icmp_seq=3 ttl=128 time=0.883 ms
$ dig 192.168.1.1
; <<>> DiG 9.11.3-1ubuntu1.3-Ubuntu <<>> 192.168.1.1
;; global options: +cmd
;; connection timed out; no servers could be reached
$ nslookup 192.168.1.1
;; connection timed out; no servers could be reached
これらのコマンドは、問題を示す出力も提供します。
Ping google.com
dig google.com
これらのすべてのコマンド (またはその代替) は、Windows コマンド プロンプトから正しく機能します。
ここで回避策を見つけました:
次の行を /etc/resolv.conf に追加する必要があると書かれています。このように試してみると、うまくいきます。
nameserver 192.168.1.1
nameserver 8.8.8.8
nameserver fcc0:0:0:ffff::1
nameserver fcc0:0:0:ffff::2
この後、ping google.com
andは正常にdig google.com
動作します。しかし、解決に使用するネームサーバーは8.8.8.8
.
VPN に接続すると、独自のネームサーバーが /etc/resolv.conf に追加され、その後、URL の解決に問題はありません。VPN が切断されると、問題が再び発生します。
ノート:
以前はこのような問題はありませんでした。先日、新しい ISP の接続を使用するためにルーターを変更しましたが、その後、問題が発生しました。同じネットワーク内の他のマシンには、この問題はありません。
これが発生する理由と、WSL のこの問題を適切に修正するにはどうすればよいですか?
ネットワーク内の 1 台のマシンだけが ping を実行できるのに、デフォルト ゲートウェイにアクセスできないのはなぜですか?
アップデート:
ルーティング テーブルでデフォルトとしてマークされている 2 つのエントリがあることがわかります。
$ ip route show table all | grep default
none default via 192.168.0.1 dev wifi0 proto unspec metric 0
none default via 192.168.1.1 dev eth6 proto unspec metric 0