WSL2访问Windows上的代理

2021/7/16 7:08:45

本文主要是介绍WSL2访问Windows上的代理,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

本文中的WSL2版本:

  NAME            STATE           VERSION
* Ubuntu-18.04    Running         2

在Windows上通过powershell运行下面的命令查询

wsl --list --verbose

问题

在国内,命令行克隆GitHub上的仓库,下载很慢,甚至几乎没有速度。
WSL2和Windows中都要使用代理,才能顺畅访问。

经过一顿google之后,发现WSL2可以通过配置访问Windows上的代理软件,把请求转发到代理上。

解决

前提:允许你的代理软件局域网访问

比如,在Trojan-qt5(版本为1.1.5)上,设置局域网访问

步骤

  1. 获取Windows的IP地址
# 在WSL2中的命令行运行这个命令,会显示Windows的IP地址,在后面的配置文件会用到这个命令
cat /etc/resolv.conf | grep nameserver | awk '{ print $2 }
  1. 在WSL2中添加配置
export ALL_PROXY="socks5://$hostip:port"
  1. .bashrc文件中,添加的完整的配置如下
host_ip=$(cat /etc/resolv.conf | grep nameserver | awk '{ print $2 })
export ALL_PROXY="socks5://$host_ip:port"
# port,你的socks5代理的端口,在代理软件中查阅

测试

  • 使用curl测试
curl www.google.com
  • 通过https克隆仓库
git clone https://github.com/vim-airline/vim-airline.git
  • 或者其他网络相关的命令进行测试

其他

本文只是按照我的需求(能够访问并下载GitHub的仓库)来进行配置,更多详细其他的情况,如WSL2和Windows网络的关系,可以参考:

  • WSL2 的一些网络访问问题
  • WSL2 中访问宿主机 Windows 的代理

参考链接

  • WSL2 的一些网络访问问题
  • WSL2 中访问宿主机 Windows 的代理
  • WSL2中使用代理


这篇关于WSL2访问Windows上的代理的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!


扫一扫关注最新编程教程