WSL2配置网络代理

这篇具有很好参考价值的文章主要介绍了WSL2配置网络代理。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

注意:本文参考自文章:WSL2配置代理,是对原文的补充,使其适用于河对岸云服务代理。

1 开启Windows代理

1.1 开启代理软件的局域网访问权限

请注意:本文的WSL2代理配置,需要Windows的代理软件已经能够正常工作

以河对岸云服务为例,购买相关服务。开启软件之后,右键高级设置,在Core: basic settings页面中,可以查看到河对岸当前监听的端口号协议,记录下端口和协议,下面配置会用到。
WSL2配置网络代理
然后,在heduian settings页面中,开启Allow connections from the LAN选项(默认不开启),让我们的代理软件允许来自局域网络的连接,注意选中后需要点击下方的OK
WSL2配置网络代理

1.2 开放防火墙对代理软件的限制

由于本文作者已经关闭了Win11的防火墙,因此不需要做额外的配置。如果您希望在开放防火墙的条件下继续配置,请参考原文第1.2节。

2 WSL2配置

2.1 编写脚本

/etc目录下创建scripts文件夹,在其中创建我们自己的配置脚本。

mkdir /etc/scripts
cd /etc/scripts
vim proxy.sh

编写proxy.sh脚本的内容。注意:这里您可能需要修改的参数有两个:一个是port;一个是PROXY_HTTP中的协议部分,如果您的代理软件基于HTTP规则,请通过开启/关闭注释的方式进行协议切换

#!/bin/sh

# 注意:这个 ip 地址和我们在 windows 中通过 ipconfig 获取的地址等价
hostip=$(cat /etc/resolv.conf | grep nameserver | awk '{ print $2 }')
# WSL 自身的 ip
wslip=$(hostname -I | awk '{print $1}')
# Windows 上代理软件监听的端口,河对岸为 10808,注意要选中河对岸的 "Allow connections from the LAN"
port=10808

# 注意代理有两种方式,一种基于 http,一种基于 socket5,河对岸是基于 socket5 的
PROXY_HTTP="socks5://${hostip}:${port}"
# PROXY_HTTP="http://${hostip}:${port}" # 如果是基于 http 的代理,则使用该命令

# 开启代理
set_proxy(){
    export http_proxy="${PROXY_HTTP}"
    export HTTP_PROXY="${PROXY_HTTP}"
    
    export https_proxy="${PROXY_HTTP}"
    export HTTPS_proxy="${PROXY_HTTP}"
    
    export ALL_PROXY="${PROXY_SOCKS5}"
    export all_proxy=${PROXY_SOCKS5}
    
    # 配置 git 的代理
    git config --global http.https://github.com.proxy ${PROXY_HTTP}
    git config --global https.https://github.com.proxy ${PROXY_HTTP}
    
    echo "Proxy has been opened."
}

# 关闭代理
unset_proxy(){
    unset http_proxy
    unset HTTP_PROXY
    unset https_proxy
    unset HTTPS_PROXY
    unset ALL_PROXY
    unset all_proxy
    git config --global --unset http.https://github.com.proxy
    git config --global --unset https.https://github.com.proxy
    
    echo "Proxy has been closed."
}

# 测试代理是否开启成功
test_setting(){
    echo "Host IP:" ${hostip}
    echo "WSL IP:" ${wslip}
    echo "Try to connect to Google..."
    resp=$(curl -I -s --connect-timeout 5 -m 5 -w "%{http_code}" -o /dev/null www.google.com)
    if [ ${resp} = 200 ]; then
        echo "Proxy setup succeeded!"
    else
        echo "Proxy setup failed!"
    fi
}

# 根据我们的输入来执行代理的开启、关闭和测试过程
if [ "$1" = "set" ]
then
    set_proxy
elif [ "$1" = "unset" ]
then
    unset_proxy
elif [ "$1" = "test" ]
then
    test_setting
else
    echo "Unsupported arguments."
fi

2.2 测试脚本能否正常工作

注意:执行下面三个命令之前,请确保您在Windows已经能够在您配置的代理软件上正常进行代理转发

您需要通过下面三个命令来测试脚本能否完成工作:

  • source /etc/scripts/proxy.sh set:开启代理;
  • source /etc/scripts/proxy/sh test:测试代理能否正常工作。如果您的代理可以正常工作,您将会看到消息:Proxy setup succeeded!;否则,您将会看到控制台输出:Proxy setup failed!
  • source /etc/scripts/proxy.sh unset:关闭代理。

2.3 配置别名简化操作流程

现在,如果您可以通过上述三个指令成功的完成测试,说明您已经配置成功了。下面的配置是可选项,可以帮助您更快的完成代理的启动/关闭/测试操作。

首先, 修改用户目录下的.bashrc文件。

vim ~/.bashrc

在文件的最后添加对source /etc/scripts/proxy.sh操作的别名,我们这里配置为proxy

# proxy alias
alias proxy="source /etc/scripts/proxy.sh"

编写完成后,我们通过source指令让修改立即生效。

source ~/.bashrc

现在,我们可以通过下面三个方式进行快速的代理操作:

  • proxy set:开启代理;
  • proxy unset:关闭代理;
  • proxy test:测试代理。

下图是一个范例,如果您通过执行上述命令得到下图类似的结果,说明配置成功!
WSL2配置网络代理文章来源地址https://www.toymoban.com/news/detail-431105.html

到了这里,关于WSL2配置网络代理的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 【WSL2】在Windows和wsl2中互相网络访问的优雅做法,不用再手动写死IP了

    目前在windows与windows的wsl系统之间,还无法通过相对较固定的方式来互相网络访问,通常需要使用各自的ip来互相访问,而ip可能不是很直观并且可能会有变更,当前教程解决了这个问题,通过hosts映射的方式打通wsl与windows宿主机之间的访问。 脚本的原理:在linux启动时或she

    2024年04月17日
    浏览(33)
  • WSL2下的Docker配置和使用

    在Windows的Linux子系统(Windows Subsystem for Linux)WSL2中安装、配置和使用 Docker,可以参考官方教程:WSL上的Docker远程容器入门. 重要步骤总结如下: 确保你的计算机运行的是 Windows 10(更新到版本 2004,内部版本 18362 或更高版本)。 安装 WSL,并为在 WSL 2 中运行的 Linux 发行版设

    2024年02月07日
    浏览(44)
  • WSL2中配置docker运行环境

    不在windows中直接安装docker的原因是,windows中安装的docker,在创建linux容器以后,带宽会急剧下降,只能达到 7M/s(局域网,非外网),而在wsl中安装的docker,创建容器后,带宽性能丝毫不受影响。 网上有很多大神,关于安装wsl2的文章,这里就不详述。贴一个链接 Winux之路-

    2024年02月15日
    浏览(45)
  • win10+WSL2+docker配置历程

    不管是为了以后多一个工具还是多一份知识,单纯觉得应该了解应该学习。记录一下并不顺利的docker配置之路。 首先附上我的万能师兄的搭建之路,指导意义那是顶呱呱。 ZzPwn01:属于2023年的Pwn环境搭建(Docker in WSL) - 简书 (jianshu.com) 同样是师兄推荐,Docker从入门到实践,

    2024年01月19日
    浏览(50)
  • WSL2安装Ubuntu,配置机器学习环境

    WSL全称Windows Subsystem for Linux,适用于Linux的Windows子系统,WSL有WSL1和WSL2两个版本,最新的wsl2已可媲美真实操作系统。 WSL2拥有完整的Linux内核。对于跨OS文件系统的性能,微软也给出了解决办法:可通过将项目文件存储在与处理项目时运行的工具相同的操作系统上进行处理,并

    2024年02月12日
    浏览(42)
  • WSL2-Ubuntu20.04-配置

    wsl --install wsl -l -v # 版本查看 默认的都是 wsl2 (如果是wsl1 就自行升级 wsl --update ) 官方教程 安装wsl2之后 就可以直接去 Microsoft Store下载 # VScode连接Ubuntu20.04 wsl2-ubuntu20.04没有GUI,还是vscode方便。下载Extension:WSL # CUDA-Toolkit 安装 一般运行 `nvidia-smi`是可以的,如果不可以也别慌

    2024年01月16日
    浏览(50)
  • 在 Windows 中配置 WSL2 与 Debian 的全流程

    这篇文章记录了我在 Windows 10 上配置 WSL2 与 Debian 的全部流程与参考资料。希望对困扰于 WSL 相关问题的读者提供些许帮助。 谢绝转载。 整体流程如下: 确认 Windows 是否支持 WSL2 安装 Debian 完整 Debian 的基础配置,起码得能用。 确认 Windows 版本为 Windows 10 版本 $$geq$$ 2004 (内部

    2024年02月19日
    浏览(31)
  • win10 WSL2 Ubuntu图像化界面安装和配置

    打开虚拟机安装许可 2、开启开发者模式 我这里使用的是20.04.5LTS版本 1、打开win11的命令行,在下拉三角下标,打开,可以看到有Ubuntu 的选项,点击即可进入linux命令行(首次一般都会有些报错,往下看有解决办法) 2、处理报错 错误1:WslRegisterDistribution failed with error: 0x800

    2024年02月01日
    浏览(47)
  • Win10+WSL2+Ubuntu22.04 +图形化桌面配置

    如何在 Windows 10 上安装 WSL 2 - 知乎 用IDM能加速下载,去官网下载22.04的appxbundle,后缀改为zip,这个包含各种操作系统的Ubuntu22.04的appx。我们选择x64解压就行了,后缀改为zip,然后参考下面的文章安装到D盘。 ubuntu 22.04国内镜像阿里云/163源/清华大学/中科大  WSL2配置xrdp一键启

    2024年02月20日
    浏览(53)
  • Windows 10 安装配置WSL2(ubuntu20.04)教程 超详细

    超详细windows安装配置WSL2(ubuntu20.04)步骤 Windows上快速安装WSL2教程 windows wsl2安装 Windows Subsystem for Linux(简称WSL),Windows下的Linux子系统,是一个在Windows 10上能够运行原生Linux二进制可执行文件(ELF格式)的兼容层。它是由微软与Canonical公司合作开发,其目标是使纯正的Ubu

    2024年02月12日
    浏览(94)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包