豚吐露@wiki

WSL2のDNS問題を解決する

最終更新:

ohden

- view
管理者のみ編集可

WSL2のDNS問題を解決する

Windows11 22H2(22621.2134)
Ubuntu 20.04.6 LTS on WSL2

DNS指定でpingが通らない

$ ping yahoo.co.jp
ping: yahoo.co.jp: Temporary failure in name resolution
が通らないけど、IP指定なら通る場合。
$ ping 8.8.8.8
PING 8.8.8.8 (8.8.8.8) 56(84) bytes of data.
64 bytes from 8.8.8.8: icmp_seq=1 ttl=114 time=18.2 ms
64 bytes from 8.8.8.8: icmp_seq=2 ttl=114 time=17.8 ms

DNSが上手く設定されてなくて、名前解決できてない状態。
WSL2になってnetworkの仕組みがHyper-V準拠したせいか発生する。

まず、DNSが自動で設定されないように設定変更。
まず"/etc/wsl.conf"の有無を確認。無かったら、以下を実行すれば勝手にwsl.confが作成される。
$ sudo sh -c "echo '[network]' > /etc/wsl.conf"
$ sudo sh -c "echo 'generateResolvConf = false' >> /etc/wsl.conf"

上記設定をしてないと、”/etc/resolv.conf"が自動生成されるので注意。

設定後、"/etc/resolv.conf"を編集。googleさんトコのDNSを設定。
$ sudo sh -c "echo 'nameserver 8.8.8.8' > /etc/resolv.conf"

名前指定でもpingが通るようになる。
$ ping yahoo.co.jp
PING yahoo.co.jp (182.22.16.251) 56(84) bytes of data.
64 bytes from 182.22.16.251 (182.22.16.251): icmp_seq=1 ttl=51 time=17.7 ms
64 bytes from 182.22.16.251 (182.22.16.251): icmp_seq=2 ttl=51 time=18.4 ms
64 bytes from 182.22.16.251 (182.22.16.251): icmp_seq=3 ttl=51 time=18.3 ms


更新日: 2023年08月20日 (日) 20時32分27秒

名前:
コメント:

すべてのコメントを見る
記事メニュー
目安箱バナー