WSLで外部ネットワークからアクセスできるようにしていたのですが
Windows UpdateでWSLのバージョンアップ(2.0.9.0になった)にともなって設定の変更が必要になったので変更内容を備忘録がわりに投稿してみます
● 以前(多分WSL 1.x.x.x)
Windows上のインターネット接続用のアダプタとは別にWSL用のネットワークアダプタ(名前をwslAdapterとします)を用意
(このアダプタは「コントロールパネル」の「アダプタの設定の変更」でのプロパティをすべてoff)
(Windowsで使用しているAdapterをWSLで共有するのはなんか気持ち悪いのでアダプタを別に用意して実現するほうがいいかなと)
WSL起動後にPowerShell(管理者用)で下記のコマンドで強制的にWSL上のネットワークをwslAdapterに変更
Set-VMSwitch -name "WSL" -NetAdapterName "wslAdapter" -AllowManagementOS $true
そのあとWSL上でIPアドレスをリフレッシュ
sudo ip addr flush dev eth0
sudo dhclient eth0
● WSL 2.0.9.0上
Hyper-Vマネージャー上で仮想スイッチを新規に作成("WSLswitch")し外部でwslAdapterのアダプタを割付
PowerShellでwsl --shutdownあと
.wslconfigに
[wsl2]
networkingMode=bridged
vmSwitch=WSLswitch
を追加
この状態でWSLを起動するととりあえず外部のIPアドレスが割りついているところまでは確認
(どの程度動くかはこれからですが)
参考にしたサイト
@shimoe(k shimoe)