跳至内容

WSL2配置V2ray等http代理服务器

Karson Zhong · Posted on 2023-04-04 · 2411 Views

我草拟粑粑长城防火墙
拉个github仓库只有几kb速度

WSL2使用纯真Linux虚拟化,不再像WSL1那样套个皮就出来了,因此网络环境是独立的,无法使用127.0.0.1访问到本机网络。
本文介绍配置WSL2中http代理服务器,理论上稍作修改可以应用于本机一切http代理

以v2rayN为例

允许局域网连接代理

Windows: v2rayN客户端开启“允许来自局域网的连接”

配置WSL2 DNS

WSL2: 关闭自动更新dns
新建配置文件

vim /etc/wsl.conf

写入以下内容

[network]
generateResolvConf = false

编辑以下文件的nameserver为 8.8.8.8 1.1.1.1等常用不受污染的dns服务器

vim /etc/resolv.conf

防止每次启动resolv.conf被抹除或重置

chattr +i /etc/resolv.conf

配置WSL2代理

需要使用局预网的方式连接至宿主机。
以下脚本先查找宿主机虚拟网卡的IP地址,然后设置其为代理服务器结点

打开bash配置文件

vim ~/.bashrc

加入以下内容

# add for proxy
export hostip=$(ip route | grep default | awk '{print $3}')
export hostport=10811
alias proxy='
    export https_proxy="http://${hostip}:${hostport}";
    export http_proxy="http://${hostip}:${hostport}";
    export all_proxy="http://${hostip}:${hostport}";
    echo -e "Acquire::http::Proxy \"http://${hostip}:${hostport}\";" | sudo tee -a /etc/apt/apt.conf.d/proxy.conf > /dev/null;
    echo -e "Acquire::https::Proxy \"http://${hostip}:${hostport}\";" | sudo tee -a /etc/apt/apt.conf.d/proxy.conf > /dev/null;
'
alias unproxy='
    unset https_proxy;
    unset http_proxy;
    unset all_proxy;
    sudo sed -i -e '/Acquire::http::Proxy/d' /etc/apt/apt.conf.d/proxy.conf;
    sudo sed -i -e '/Acquire::https::Proxy/d' /etc/apt/apt.conf.d/proxy.conf;
'

其中hostport是v2rayN中http局域网代理的端口。默认应该是10811
如果你做过修改或使用其它客户端,请注意区别。一定是局域网可访问的代理端口

重新读取配置文件

source ~/.bashrc

启动代理

每次开启WSL2,都需要输入以下命令激活代理

proxy

输入unproxy关闭代理

测试

curl google.com

有回应就是成功

故障排除

如果你连不上全球通,请参考这些排查方法:

ping google

WSL中,测试是否能解析出IP地址

  • 如果没看到google.com的ip地址,请检查WSL的DNS是否正确配置
  • 如果没有回应,正常现象,不用管
ping google

代理服务器可用性

在Windows中尝试访问谷歌
如果你自己电脑都访问不了,那就拉闸了,换个结点吧哥们

代理服务器开放局域网

确保你的代理开放了局域网连接

然后检查防火墙设置,确保代理服务器通过了你Windows使用的防火墙

确保WSL2代理配置正确

WSL中,查看http代理的输出:

echo $HTTP_PROXY

留意两个地方:
– 有没有输出?(eg. x.x.x.x:10811)
– 端口是否为代理服务器的局域网开放端口

如果出问题,请重新修改~/.bashrc文件,并重新读取

程序员,热衷于游戏开发和软件制作。但也是一个杂食动物,喜欢探索各种赛博相关的奇技淫巧。

5 2 投票数
文章评分
订阅评论
提醒
guest

0 评论
内联反馈
查看所有评论

Nova - rebirth of a wonderful theme.

Theme Nova by KarsonJo

  • Serif
  • Sans Serif
切换主题 | SCHEME TOOL
Generic selectors
Exact matches only
Search in title
Search in content
Post Type Selectors
0
希望看到您的想法,请您发表评论x
0
希望看到您的想法,请您发表评论x