🤖
LAN内の別デバイスからWSL2上のアプリケーションに接続する方法
概要
WSL2上に構築したアプリケーションにスマホ等から接続するときに必要な設定を記します。
前提条件
- 同一LAN内に接続元端末(スマホ等)と接続先端末(WSLが動作するWindows端末)があること
環境
ホストOS:Windows11
WSL2:Ubuntu22.04.3
手順
IPアドレス確認
- WSL2(Ubuntu)のIPアドレス確認
bash
ip addr show eth0
- ホストOSのIPアドレス確認
powershell
ipconfig
ポートフォワーディング設定
powershell
# 設定
netsh.exe interface portproxy add v4tov4 listenaddress=${HOST_IP} listenport=${HOST_PORT} connectaddress=${WSL_IP} connectport=${WSL_PORT}
# 確認
netsh.exe interface portproxy show v4tov4
# 削除
netsh.exe interface portproxy delete v4tov4 listenaddress=${HOST_IP} listenport=${HOST_PORT} connectaddress=${WSL_IP} connectport=${WSL_PORT}
ファイアウォールの設定
ホストOS上でファイアウォールの設定をします。
-
Win + S>セキュリティが強化された Windows Defender ファイアウォール -
受信の規則>新しい規則の順にクリック -
ポートを選択し次へ -
TCPを選択し次へ -
特定のローカルポートを選択し、許可するポートを入力し次へ -
接続を許可するを選択し次へ -
パブリックを選択し次へ ※皆さんの環境に合わせてください -
名前に分かりやすい名前を入力し、完了
接続確認
接続元端末からhttp://${HOST_IP}:${HOST_PORT}へ接続できることを確認します。
Discussion