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-VLinuxWindowsサブシステム、Virtual Machine Platform は入っていて、これらをアンインストール&再インストールでも変わらなかった。

この辺はダメだった。

解決

windows subsystem for linux - WSL Networking Error code: Wsl/Service/CreateInstance/CreateVm/ConfigureNetworking/HNS/0x80070424 - Stack Overflow

この記事だと「Hyper-Vとかを消せ」とあるけど wsl.exe --install --no-distribution だけで良かった。

信頼と実績の stack overflow (´ω`)