WSL2で建てたWebアプリにLAN内のスマホからアクセスする方法
追記:ちょっと使ってたらIP Helperが暴走してCPUが100%に張り付いたからこの設定多分良くないわ
追記2:再起動したらとりあえず普通に動作してる。また同じ問題が起こるなら対策を考える。
作ったWebアプリをスマホから使おうと思ったらちょっと手こずったので備忘録。
0.0.0.0:9090でLISTENしている想定
import uvicorn
if __name__ == "__main__":
uvicorn.run(app=app, host="0.0.0.0", port=9090)
1. WSL2の設定 (%USERPFORILE%\.wslconfig)
[wsl2]
localhostForwarding=True
2. ポート転送 (PowerShell 管理者権限)
PS C:\\WINDOWS\\system32> netsh interface portproxy add v4tov4 listenaddress=0.0.0.0 listenport=9090 connectaddress=127.0.0.1 connectport=9090 protocol=tcp
PS C:\\WINDOWS\\system32> netsh interface portproxy show v4tov4
ipv4 をリッスンする: ipv4 に接続する:
Address Port Address Port
--------------- ---------- --------------- ----------
0.0.0.0 9090 127.0.0.1 9090
3. ファイアウォール
受信の規則
新しい規則
ポート
☑TCP ☑特定のローカルポート: 9090
接続を許可する
環境に合わせて設定
名前をつけて作成
4. 接続 (スマホン)
http://<windowsのIPアドレス>:9090