1.在用户文件夾 %USERPROFILE% 新建一個 .wslconfig 文件,寫入一下內容:
[experimental] autoMemoryReclaim=gradual # gradual | dropcache | disabled networkingMode=mirrored dnsTunneling=true firewall=true autoProxy=true
設置完執行 wsl --shutdown 重啓一下wsl就可以了
2.如果wsl安裝xfce之類的桌面,桌面打開的Terminal等也想要使用代理,則可以修改 ~/.bashrc 文件,在末尾加入如下內容:
# WSL 代理自動繼承(如果 autoProxy=true + mirrored 有效,但圖形 session 可能不繼承,這裏手動補) if [ -z "$http_proxy" ] && [ -z "$WSL_DISTRO_NAME" ]; then # 嘗試從 Windows 拉取(mirrored 模式下 wsl.exe env 可見) export PATH="$PATH:/mnt/c/Windows/System32" # proxy_lines=$(wsl.exe -- env | grep -i proxy | tr -d '\r') proxy_lines=$(wsl.exe -- env | grep -i proxy 2>/dev/null) echo "$proxy_lines" if [ -n "$proxy_lines" ]; then echo "找到代理設置,正在加載..." eval "$(printf '%s\n' "$proxy_lines" | sed 's/^/export /' | sed 's/=\(.*\)$/="\1"/' | sed 's/\r$//')" echo "代理加載完成:http_proxy = ${http_proxy:-未設置}" else echo "Windows 環境變量中未找到任何 proxy 設置" fi fi
設置成功後效果如下:

真希望國內開發不需要代理的那天能早日到來