VariantConst
374 字
2 分钟
WSL2 如何解决 clash 代理问题
2024-02-14

更新:如果想保持 CFW 增强模式的开启状态,参考在 WSL2 中使用 Clash for Windows 代理连接

确认WSL版本#

不同的 WSL 版本需要不同的配置方法。为了确认 WSL 版本:

  1. 打开 PowerShell 或命令提示符:首先,打开一个 PowerShell 窗口或命令提示符。

  2. 检查 WSL 版本:在 PowerShell 或命令提示符中输入以下命令:

    wsl --version
  3. 查看输出信息:执行上述命令后,你会看到类似于下面的输出信息:

    WSL 版本: 2.1.1.0
    内核版本: 5.15.146.1-2
    WSLg 版本: 1.0.60
    MSRDC 版本: 1.2.5105
    Direct3D 版本: 1.611.1-81528511
    DXCore 版本: 10.0.25131.1002-220531-1700.rs-onecore-base2-hyp
    Windows 版本: 10.0.22631.3155
  • 如果显示的是 “WSL 版本: 2.0” 或更高版本,那么你应该按照 “WSL2 2.0 及之后的版本” 的指导来配置。
  • 如果是更早的版本,则按照 “WSL2 2.0 之前的版本” 的步骤操作。

WSL2 2.0 之前的版本#

在 Clash for Windows (以下简称 CFW) 中启用 TUN 模式。

WSL2 2.0 及之后的版本#

  1. 在 Clash for Windows (以下简称 CFW) 中关闭 TUN 模式。

  2. 在 Windows 的 %UserProfile%\.wslconfig 文件中添加以下内容:

    [experimental]
    autoMemoryReclaim=gradual
    networkingMode=mirrored
    dnsTunneling=true
    firewall=true
    autoProxy=true
    sparseVhd=true

    这些设置将 WSL 的网络模式设置为 mirrored,这意味着它将复制 Windows 主机的网络配置,包括代理设置。配置还同时开启了自动内存回收、DNS 隧道、防火墙、自动代理和稀疏 VHD 等 WSL2 2.0 新加入的试验性功能。

  3. 重启 WSL:PowerShell 或 cmd 执行

wsl --shutdown
WSL2 如何解决 clash 代理问题
https://blog.variantconst.com/posts/wsl2-clash/
作者
VariantConst
发布于
2024-02-14
许可协议
CC BY-NC-SA 4.0