WSL2配置代理 记录下遇到的所有坑
WSL
Issues found on WSL
项目地址:https://gitcode.com/gh_mirrors/ws/WSL
免费下载资源
·
第一步: 开放windows对wsl2的防火墙
大家都知道wsl2和wsl1不一样, wsl2基本上就是一个虚拟机, 虚拟了一个linux的系统
主机之间是有防火墙的, 现在我们要关闭它
打开powershell7以管理员身份运行
PS C:\WINDOWS\system32> New-NetFirewallRule -DisplayName "WSL" -Direction Inbound -InterfaceAlias "vEthernet (WSL)" -Action Allow
这条命令单纯开放了主系统windows对wsl2的局域网访问权限, 无毒无害
如果成功你应该可以在 设置 -> 防火墙 -> 高级设置 -> 入站规则
中看到
第一步完成
第二步: 使用魔法
没有魔法肯定上不了不用想了 这里不敢细讲 我自用的是SDKDNS
第三步: 使用Clash for window软件代理
我的原本的代理软件貌似无法代理wsl2的环境, 我最后用了Clash for window
解决了, SDKDNS官网有配置这个的教程, 并给了一键配置的方案, 非常方便
如果你用的不是Clash for window
, 你应该更改代理的端口号, 一般代理软件会给出这些信息, 替换掉他们
比如你的代理软件在2333
端口那么第四步中的脚本的那一行就应该改一下
alias setss='export https_proxy="http://${hostip}:2333";export http_proxy="http://${hostip}:2333";export all_proxy="socks5://${hostip}:2333";'
第四步: WSL2的配置
以下方法引用自 这里
## 获取主机 IP
## 主机 IP 保存在 /etc/resolv.conf 中 wsl2需要通过这个ip访问windows
export hostip=$(cat /etc/resolv.conf |grep -oP '(?<=nameserver\ ).*')
然后粘贴下面的脚本并运行
export hostip=$(cat /etc/resolv.conf |grep -oP '(?<=nameserver\ ).*')
alias setss='export https_proxy="http://${hostip}:7890";export http_proxy="http://${hostip}:7890";export all_proxy="socks5://${hostip}:7890";'
alias unsetss='unset all_proxy'
上面的脚本只影响当前会话 大可不必担心会把wsl的网络搞崩 也就是你重新启动个shell
这些环境都没了
如果觉得每次粘贴麻烦 可以将这脚本粘贴到用户目录下的.zshrc
配置文件或bash的配置文件中
或保存为任意文件每次运行source <保存的脚本文件名>
第五步: enjoy😎
➜ ~ curl www.google.com
<!doctype html><html itemscope="" itemtype="http://schema.org/WebPage" lang="ja"><head><meta content="世界中のあらゆる情報を検索するためのツールを提供しています。さまざまな検索機能を活用して、お探
GitHub 加速计划 / ws / WSL
8
0
下载
Issues found on WSL
最近提交(Master分支:4 个月前 )
7ef20042
* Move pull-request permissions to the job instead of the workflow
* Use pull_request_target
* Undo test change 14 小时前
52d1e510
14 小时前
更多推荐
已为社区贡献1条内容
所有评论(0)