このページの2つのバージョン間の差分を表示します。
両方とも前のリビジョン 前のリビジョン 次のリビジョン | 前のリビジョン | ||
wsl2:interop [2020/12/27 19:28] y2sunlight [WSL2のリスニングポート] |
wsl2:interop [2020/12/27 20:17] y2sunlight [WLS2の仮想ネットワーク] |
||
---|---|---|---|
行 89: | 行 89: | ||
> 複数のWSL2ディストリビューションは同じネットワーク名前空間を使用し、ネットワークの分離はありません。'' | > 複数のWSL2ディストリビューションは同じネットワーク名前空間を使用し、ネットワークの分離はありません。'' | ||
- | \\ | + | === WSL2のリスニングポート === |
- | + | ||
- | + | ||
- | ==== WSL2のリスニングポート | + | |
WSL2では、仮想マシン側でリスニングされているポート番号と同じポート番号を、ホスト側で動作しているwslhost.exeがリスニングします。 | WSL2では、仮想マシン側でリスニングされているポート番号と同じポート番号を、ホスト側で動作しているwslhost.exeがリスニングします。 | ||
例えば、仮想マシン側でポート80をリスニングしていると、ホスト側でも wslhost.exe がポート80をリスニングします。そして、 wslhost.exe は、受け取ったパケットを仮想ホスト側の同じポート番号に転送します。つまり、ホスト側がlocalhostの(仮想ホスト側がリスニングしていると同じ)ポート番号にアクセスすると、仮想ホスト側のネットワークサービスからは、eth0からのアクセスのように見えます。 | 例えば、仮想マシン側でポート80をリスニングしていると、ホスト側でも wslhost.exe がポート80をリスニングします。そして、 wslhost.exe は、受け取ったパケットを仮想ホスト側の同じポート番号に転送します。つまり、ホスト側がlocalhostの(仮想ホスト側がリスニングしていると同じ)ポート番号にアクセスすると、仮想ホスト側のネットワークサービスからは、eth0からのアクセスのように見えます。 | ||
+ | |||
+ | === localhost === | ||
+ | |||
+ | IPv4では、ネットワークアドレス '' | ||
+ | |||
+ | WSL2が稼働しているとき、仮想マシン上の特定のポート番号をリスニングしている、HTTPサーバなどのTCP/ | ||
+ | |||
+ | \\ | ||
行 112: | 行 117: | ||
\\ | \\ | ||
- | ==== localhost ==== | ||
- | |||
- | > TODO: | ||
- | |||
- | IPv4では、単独のアドレスではなく、127.0.0.0という特殊なネットワーク全てがlocalhostで、慣例的に「127.0.0.1」を自分自身のIPアドレスの数値表現として使う(ただし「127.0.0.0」に属するIPアドレスは全て自分自身を表す)。基本的にどんなシステムでも、localhostという名前は、DNSサーバなどの外部の名前解決プロトコルを使わずに「127.0.0.1」に解決できる。IPv6では、「:: | ||
- | |||
- | 通常のIPアドレスやドメイン名を指定できるところであれば、localhostは指定可能だ。例えば、Webサーバが動作しているマシンで、Webブラウザから「http:// | ||
- | |||
- | WSL 2が稼働しているとき、特定のポート番号で待ち受け(リッスン)している、HTTPサーバなどのTCP/ | ||
- | |||
- | \\ | ||
===== WindowsからのLinuxコマンドを実行する ===== | ===== WindowsからのLinuxコマンドを実行する ===== |