![]() |
宮島五重塔を望む |
WSL2「Windows Subsystem for Linux 2」をインストールし,Linuxディストリビューションを立ち上げると,次は「外部ネットワークからどうやってアクセスするか」という課題に直面します。
それは,WSL2がHyper-Vと呼ばれる仮想環境上でLinuxカーネルを動作させるため,Windowsが使うIPアドレスとは全く別のIPアドレスが付与されるからです。
そのため,パソコン外部からWindows経由でアクセスがあった場合,どのようにWSL2に伝えるかが課題になります。
具体的には「netsh」コマンドを使って,WindowsのIPアドレスポートで入って来た通信を,WSL2のIPアドレスポートでリッスン「listen」させることになります。
※「netsh」コマンドは、ネットワーク全般の制御用コマンドです。
そこで,今回はSSHリモート通信を例に,WSL2のIPアドレスにアクセスするためのオーソドックスな「ポートフォワーディング」方法を学習します。
※ポートフォワーディングとは特定ポート番号宛てに届いたパケットを、予め設定したLAN側の機器に転送する機能です。
なお,WSL2のIPアドレスは,Windowsが再起動される度に原則変わりますので,その都度,「netsh」コマンドを使ってネットワークを再設定させなければなりません。
それでは,「netsh」コマンドを使ったネットワーク設定について見ていきましょう。
【実証前提条件】
・パソコン : Windows11 pro 24H2 (IPアドレス:IPv4固定値とする)
・Linux ディストリビューション : Ubuntu-24.04 LTS 起動中
・WSL2 バーション : 2.4.10.0
・テキストエディター : Vim等でファイル内容を修正できる方
学習を始めます。