创建/etc/wsl.conf,写入以下内容,默认为true,true 将 WSL 设置为生成 /etc/resolv.conf
[network] generateResolvConf=false
resolv.conf是/run/resolvconf/resolv.conf(generateResolvConf=true的时候自动生成)符号链接文件,需要先删除;DNS列表自行设置
rm /etc/resolv.conf echo "nameserver 114.114.114.114" > /etc/resolv.confip配置脚本
这个脚本每次ubuntu 重新启动都需要重新运行一遍
@echo off
rem 设置网段
set localnet=192.168.174
rem 设置子系统的ip
set ip=%localnet%.2
rem 需要设置的子系统名称
set linux=Ubuntu-18.04
wsl -d %linux% -u root ip addr del $(ip addr show eth0 ^| grep 'inetb' ^| awk '{print $2}' ^| head -n 1) dev eth0
wsl -d %linux% -u root ip addr add %ip%/24 broadcast %localnet%.255 dev eth0
wsl -d %linux% -u root ip route add 0.0.0.0/0 via %localnet%.1 dev eth0
powershell -c "Get-NetAdapter 'vEthernet (WSL)' | Get-NetIPAddress | Remove-NetIPAddress -/confirm/i:$False; New-NetIPAddress -IPAddress %localnet%.1 -PrefixLength 24 -InterfaceAlias 'vEthernet (WSL)'; Get-NetNat | ? Name -Eq WSLNat | Remove-NetNat -/confirm/i:$False; New-NetNat -Name WSLNat -InternalIPInterfaceAddressPrefix %localnet%.0/24;"



