在WSL使用Cargo时,会有需要用到外网的情况。假设我们在windows开了一个端口为10809的HTTP代理。我们的目标是让WSL中的cargo build使用到这个代理。

查看WSL访问windows的IP地址

cat /etc/resolv.conf

可以看到类似的输出

# This file was automatically generated by WSL. To stop automatic generation of this file, add the following entry to /etc/wsl.conf:
# [network]
# generateResolvConf = false
nameserver 172.22.96.1

其中的nameserver就是windows的IP地址,我们可以将代理设置为http://172.22.96.1:10809,这样WSL就可以使用到架设在windows里的代理服务。

要注意到这个IP地址是不是会发生改变,因为WSL2和代理服务不兼容的BUG,我们经常需要使用netsh winsock reset重置网络,这时候这个IP地址可能会发生变化,导致代理设置失效

得到IP地址后,打开~/.cargo/config.toml
写入以下字段

[http]
debug = true
proxy = "172.22.96.1:10809"

CTi_
4 声望0 粉丝

Fell asleep when the light is on