WSL2のネットワークが突然死んだ件
TL;DR
- 突然WSL2のネットワークが loopback だけになった
wsl.exe --install --no-distributionで治った(恐らくはコレが決め手)
突然WSL2のネットワークが loopback だけになった
$ ip addr
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
inet 127.0.0.1/8 scope host lo
valid_lft forever preferred_lft forever
inet 10.255.255.254/32 brd 10.255.255.254 scope global lo
valid_lft forever preferred_lft forever
inet6 ::1/128 scope host
valid_lft forever preferred_lft forever
CMD.exeから起動するとエラーが出ていた
$ wsl wsl: アクセスが拒否されました。 エラー コード: CreateInstance/CreateVm/ConfigureNetworking/HNS/E_ACCESSDENIED wsl: ネットワーク (networkingMode Nat) を構成できませんでした。ネットワークなしにフォールバックします。
とか
$ wsl wsl: VmSwitch 'wsl_switch' が見つかりませんでした。 エラー コード: CreateInstance/CreateVm/ConfigureNetworking/WSL_E_VMSWITCH_NOT_FOUND wsl: ネットワーク (networkingMode Bridged) を構成できませんでした。ネットワークなしにフォールバックします。
とか。
Hyper-V、Linux用Windowsサブシステム、Virtual Machine Platform は入っていて、これらをアンインストール&再インストールでも変わらなかった。
この辺はダメだった。
- Error code: Wsl/Service/CreateInstance/CreateVm/ConfigureNetworking/HNS/E_ACCESSDENIED · Issue #11980 · microsoft/WSL · GitHub
- WSL2 fails to start with Error code: Wsl/Service/CreateInstance/CreateVm/ConfigureNetworking/HNS/0x80070424 · Issue #10755 · microsoft/WSL · GitHub
解決
この記事だと「Hyper-Vとかを消せ」とあるけど wsl.exe --install --no-distribution だけで良かった。
信頼と実績の stack overflow (´ω`)