374 字
2 分钟
WSL 网络与代理配置速查
这篇用来复制 WSL 网络和代理相关命令。
查看 WSL 版本
在 Windows PowerShell 执行:
wsl --list --verbose简写:
wsl -l -v关闭并重启 WSL
在 Windows PowerShell 执行:
wsl --shutdown然后重新打开 WSL 终端。
查看 WSL 内 IP
在 WSL 执行:
hostname -I或者:
ip addrWSL 获取 Windows 主机 IP
常用方式:
cat /etc/resolv.conf | grep nameserver提取 IP:
export WINDOWS_HOST=$(cat /etc/resolv.conf | awk '/nameserver/ {print $2; exit}')echo "$WINDOWS_HOST"WSL 使用 Windows 代理
如果 Windows 代理监听在 127.0.0.1:10808,WSL 里不一定能直接访问这个地址。更稳的方式是使用 Windows 主机 IP:
export WINDOWS_HOST=$(cat /etc/resolv.conf | awk '/nameserver/ {print $2; exit}')export http_proxy=http://$WINDOWS_HOST:10808export https_proxy=http://$WINDOWS_HOST:10808export all_proxy=socks5://$WINDOWS_HOST:10808测试:
curl -I https://github.com取消:
unset http_proxyunset https_proxyunset all_proxyWindows 访问 WSL 服务
在 WSL 启动服务时,尽量监听:
0.0.0.0而不是只监听:
127.0.0.1查看 WSL 服务监听:
ss -lntp如果服务监听 0.0.0.0:3000,Windows 通常可以访问:
http://localhost:3000查看 Windows 到 WSL 的端口
在 Windows PowerShell 中:
netstat -ano | findstr :3000DNS 异常检查
cat /etc/resolv.confnslookup github.com如果 DNS 临时异常,可以先重启 WSL:
wsl --shutdown.wslconfig 位置
Windows 用户目录:
C:\Users\<你的用户名>\.wslconfig常见示例:
[wsl2]memory=8GBprocessors=4swap=8GBlocalhostForwarding=true修改后需要:
wsl --shutdown常用参数解释
wsl -l -v:查看发行版、运行状态和 WSL 版本。
wsl --shutdown:关闭所有 WSL 实例。
hostname -I:输出当前 Linux 环境的 IP。
/etc/resolv.conf:DNS 配置文件,WSL 中常能看到 Windows 主机相关地址。
0.0.0.0:监听所有网卡,方便从 Windows 或局域网访问。
127.0.0.1:只监听本机回环地址。
localhostForwarding:WSL2 的 localhost 转发配置。