首页 > 其他分享 >WSL2配置代理

WSL2配置代理

时间:2024-03-30 20:23:24浏览次数:35  
标签:HTTP 配置 代理 echo PROXY https WSL2 unset proxy

新建proxy.sh文件,内容如下:

#!/bin/sh
hostip=$(cat /etc/resolv.conf | grep nameserver | awk '{ print $2 }')
wslip=$(hostname -I | awk '{print $1}')
port=7890
 
PROXY_HTTP="http://${hostip}:${port}"
 
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 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
  • source ./proxy.sh set:开启代理
  • source ./proxy.sh unset:关闭代理
  • source ./proxy.sh test:查看代理状态

第四步对任意路径开启代理

~/.zshrc中添加
alias proxy="source ~/proxy.sh"
刷新环境变量
source ~/.zshrc

  • proxy set:开启代理
  • proxy unset:关闭代理
  • proxy test:查看代理状态

第五步自动添加代理(可选)

~/.zshrc中加入. ~/proxy.sh set

标签:HTTP,配置,代理,echo,PROXY,https,WSL2,unset,proxy
From: https://www.cnblogs.com/moguw/p/18105969/wsl2-clash

相关文章

  • 同一个主机配置多个SSH key
    使用git时,我们可能一个git客户端使用多个git服务器,比如github,自建gitlab,gitee,为了防止提交混乱,所以需要一一对应生成公私钥。第一步:使用ssh-keygen生成多对密钥对,比如:ssh-keygen-trsa-C'随意注解三者不一样就好'-f~/.ssh/id_rsa_githubssh-keygen-trsa-C'......
  • Spring Boot基本配置之定制Banner
    在SpringBoot快速搭建中已经使用了SpringBoot框架,在启动的时候会有一个默认的启动图案如下:这个图案是可以修改为自定义项目定制的Banner,具体操作如下:1、在src/main/resources下新建一个banner.txt。2、......
  • 湖州腾讯云代理商:腾讯云服务器618活动什么时候开始的
    湖州腾讯云代理商:腾讯云服务器618活动什么时候开始的简介:飞机@luotuoemo本文由(腾讯云国际站代理商:【金推云】www.jintui.cn)撰写湖州腾讯云代理商:腾讯云服务器618活动什么时候开始的1.腾讯云优势腾讯云作为国内领先的云计算服务商,拥有强大的技术实力和丰富的云产品线。......
  • 漫谈网络隐私:通过网络代理和Tor访问ProtonMail
    在数字时代,隐私保护已成为互联网用户面临的一大挑战。每天,我们的在线活动—从浏览网页到发送电子邮件—都有可能被监控和记录。在这种背景下,保护个人信息的安全不仅是一种权利,也是一种必要的防御措施。本文将探讨如何通过网络代理和Tor(洋葱)浏览器访问ProtonMail,来增强你的网......
  • skynet非单点类型节点的管理(一):玩家代理节点
    单个skynet进程,或者说单台机器的承载业务能力是有上限的,对于负责玩家主要业务的节点,横向扩展以提高游戏承载能力是必须的。对于滚服架构,玩家角色与指定业务节点(单服)固定对应,连接游戏业务前通过中央后台获取到指定信息进行连接。承载能力通过新增单服完成,这里我们只对世界服架构做......
  • AUTOSAR MCAL基础配置(实操)
    一、用EB配置工程操作流程:1、在EBTresos配置工具中新建MCAL配置工程,添加MCU和PORT模块,分别对其进行配置。2、对MCU时钟进行配置,时钟源为外部8M晶振,经过40倍倍频,再经过二分频得到160MHz的PLL输出时钟。最终得到80M内核时钟,40M总线时钟,20M的flash时钟3、在EBTresos配置......
  • Spring Boot框架中的JDK动态代理实践及其应用场景
    引言在Java编程中,JDK动态代理是一种强大的设计模式,它允许我们在运行时动态地创建并实现代理类,从而对目标对象的行为进行增强或控制。这种机制主要由Java标准库java.lang.reflect.Proxy类和java.lang.reflect.InvocationHandler接口提供支持。在诸如SpringBoot这样的企业级开......
  • spring boot 配置文件值注入
        利用配置文件将属性注入到bean程序里面去,下面是各个情况的总结:    首先我先新建一个bean(beans.User类)来完成演示:packageorg.example.springbootdemo.beans;importlombok.Data;importorg.springframework.boot.context.properties.ConfigurationPro......
  • 在VMware虚拟机软件中安装Centos7.9及网络配置
    目录一、使用软件创建虚拟机二.安装操作系统三、系统网络配置四、结语一、使用软件创建虚拟机1.菜单选择新建虚拟机2.安装导航向导创建 在这一步选择相应的操作系统,如系统类型是Windows则选择Windows,是Linux则选择Linux;然后选择自己所要安装的系统版本,我这里选择Li......
  • yii2 配置bootstrap使用
    yii2配置bootstrap使用配置config/web.php添加people<?php...$config=[...'bootstrap'=>['log','people'],...'components'=>['people'=>['class'......