前回の方法とは違いmac addressは非固定ですが、仮想スイッチ(WSL)の接続種類を外部ネットワークにし/etc/wsl.confの追加と/etc/network/interfaces.d/eth0を記述するだけでIPv4/IPv6ともにWindows10 Proで固定させたのでそのメモです。なお繰り返しますがmac addressは非固定なのであまり実用的ではないやり方ですが...Winowd10のWSL2でアドレスを固定するやり方はほとんど見当たらなかったのでとりあえず挙げてみました。なお動作確認環境はWSL2がDebian11/Bullseye、Windows10はPro 22H2 build 19045.2913です。
まず最初にWSL2が使う仮想スイッチの接続種類をHyper-Vマネージャーにある仮想スイッチマネージャーにて内部から外部に変更します。
続いて、WSL2上の/etc/wsl.confを以下のように編集します。
設定がすんだら、Windows上でwsl --shutdownとしてから、WSL2を起動してください。以下のようになればOKです。
今回は以上です。それでは。
まず最初にWSL2が使う仮想スイッチの接続種類をHyper-Vマネージャーにある仮想スイッチマネージャーにて内部から外部に変更します。
続いて、WSL2上の/etc/wsl.confを以下のように編集します。
[boot] systemd=true [network] nenerateResolvConf = false最後に、/etc/network/interfaces.d/eth0を以下のようにします。
auto eth0 allow-hotplug eth0 iface eth0 inet static pre-up ip route del default pre-up ip addr del `ip a | grep 172 | awk '{print $2}'` dev eth0 pre-up echo nameserver 1.1.1.1 > /etc/resolv.conf pre-up echo nameserver 1.0.0.1 >> /etc/resolv.conf address 192.168.1.99 netmask 255.255.255.0 gateway 192.168.1.23 iface eth0 inet6 static address 2400:aaaa:bbbb:cccc::99/64 gateway 2400:aaaa:bbbb:cccc::1やっていることは単純で、systemdを起動させるように/etc/wsl.confで指定したので、/etc/network/interfaces.d/eth0が読み込まれます。そうするとWSL2が初期設定するルートとインターフェースアドレス(class B 172.16.0.0以下)を削除し、さらに/etc/resolv.confにnameserverを記述。最後に通常のstatic記述が読み込まれ固定IPが設定される、という流れです。
設定がすんだら、Windows上でwsl --shutdownとしてから、WSL2を起動してください。以下のようになればOKです。
$ip a 2: eth0:固定アドレス設定ができたらsshなどをインストールして外部から接続できることを確認してみてください。なお、再三申し上げますが、mac アドレスの固定は行っていませんのでdhcpにて固定アドレス配布できない単純なやり方なので、その点ご留意ください。mtu 1500 qdisc mq state UP group default qlen 1000 link/ether 00:15:5d:aa:bb:cc brd ff:ff:ff:ff:ff:ff inet 192.168.1.99/24 brd 192.168.1.255 scope global eth0 valid_lft forever preferred_lft forever inet6 2400:aaaa:bbbb:cccc::99/64 scope global valid_lft forever preferred_lft forever inet6 fe80::aaaa:bbff:fecc:dddd/64 scope link valid_lft forever preferred_lft forever
今回は以上です。それでは。
コメント
コメントを投稿