惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

Microsoft Azure Blog
Microsoft Azure Blog
Engineering at Meta
Engineering at Meta
CTFtime.org: upcoming CTF events
CTFtime.org: upcoming CTF events
F
Fortinet All Blogs
博客园 - 叶小钗
T
Tailwind CSS Blog
Security Archives - TechRepublic
Security Archives - TechRepublic
T
The Exploit Database - CXSecurity.com
Blog — PlanetScale
Blog — PlanetScale
T
Tenable Blog
人人都是产品经理
人人都是产品经理
D
DataBreaches.Net
A
Arctic Wolf
P
Proofpoint News Feed
S
SegmentFault 最新的问题
C
CERT Recently Published Vulnerability Notes
T
Threatpost
Y
Y Combinator Blog
WordPress大学
WordPress大学
L
LINUX DO - 热门话题
酷 壳 – CoolShell
酷 壳 – CoolShell
V
Vulnerabilities – Threatpost
AWS News Blog
AWS News Blog
小众软件
小众软件
U
Unit 42
云风的 BLOG
云风的 BLOG
美团技术团队
S
Securelist
C
Cybersecurity and Infrastructure Security Agency CISA
L
LangChain Blog
G
GRAHAM CLULEY
P
Proofpoint News Feed
I
Intezer
Security Latest
Security Latest
L
Lohrmann on Cybersecurity
NISL@THU
NISL@THU
Threat Intelligence Blog | Flashpoint
Threat Intelligence Blog | Flashpoint
The Hacker News
The Hacker News
Cisco Talos Blog
Cisco Talos Blog
T
The Blog of Author Tim Ferriss
H
Heimdal Security Blog
T
Tor Project blog
MongoDB | Blog
MongoDB | Blog
The Cloudflare Blog
T
Troy Hunt's Blog
Know Your Adversary
Know Your Adversary
博客园 - 司徒正美
Google Online Security Blog
Google Online Security Blog
V
V2EX
Application and Cybersecurity Blog
Application and Cybersecurity Blog

博客园 - zakun

Gitlab CI 本地开发部署 Golang grpc 实践 Mongo 聚合演示 真・一键激活 JetBrains 全家桶! Kafka 分区细说 解决国内Homebrew安装 Homebrew How to Install PHP Install Elasticsearch with Docke wsl2 网络相关设置 php docker image nginx 反向代理常用设置说明 Golang常见的并发模式 Gin框架的几种热加载方法 协程 Mysql Full-Text Index 介绍 gitlab runner 使用摘要 Gitlab Docker 使用摘要 Docker 简介 linux-查看文件夹大小 Linux 如何删除乱码文件-inode删除 Nginx反爬虫: 禁止某些User Agent抓取网站 PHP添加$_SERVER服务器环境变量
适配 WSL 的 proxy 完整脚本
zakun · 2026-07-18 · via 博客园 - zakun

适配 WSL 的 proxy 完整脚本

创建脚本

#!/bin/bash
# WSL专用自动获取Windows主机代理IP
WIN_HOST=$(cat /etc/resolv.conf | grep nameserver | awk '{print $2}')
# 修改为你Windows代理软件端口,常见7890、10809
PROXY_PORT="7890"
PROXY_URL="http://${WIN_HOST}:${PROXY_PORT}"
NO_PROXY_LIST="localhost,127.0.0.1,10.0.0.0/8,172.16.0.0/12,192.168.0.0/16,.local"

function proxy_on {
    export http_proxy=$PROXY_URL
    export https_proxy=$PROXY_URL
    export ftp_proxy=$PROXY_URL
    export no_proxy=$NO_PROXY_LIST

    export HTTP_PROXY=$PROXY_URL
    export HTTPS_PROXY=$PROXY_URL
    export FTP_PROXY=$PROXY_URL
    export NO_PROXY=$NO_PROXY_LIST

    echo -e "\033[32m✅ WSL代理已开启\033[0m"
    echo "Windows主机地址: $WIN_HOST"
    echo "代理地址: $PROXY_URL"
    echo "不走代理: $NO_PROXY_LIST"
    if curl -s -I https://www.google.com >/dev/null; then
        echo -e "\033[32m🌐 外网连通正常\033[0m"
    else
        echo -e "\033[31m❌ 代理无法连通,请检查Windows代理软件端口/允许局域网连接\033[0m"
    fi
}

function proxy_off {
    unset http_proxy https_proxy ftp_proxy no_proxy
    unset HTTP_PROXY HTTPS_PROXY FTP_PROXY NO_PROXY
    echo -e "\033[31m❌ 代理已关闭\033[0m"
}

function proxy_status {
    echo "==== WSL 当前代理环境变量 ===="
    env | grep -i proxy
}

case "$1" in
    on)
        proxy_on
        ;;
    off)
        proxy_off
        ;;
    status)
        proxy_status
        ;;
    *)
        echo "用法:"
        echo "  source ~/proxy.sh on    开启代理"
        echo "  source ~/proxy.sh off   关闭代理"
        echo "  source ~/proxy.sh status 查看状态"
        ;;
esac

配置快捷别名(推荐)

echo "alias proxy='source ~/proxy.sh'" >> ~/.bashrc
source ~/.bashrc

使用命令

# 开启代理
proxy on

# 关闭代理
proxy off

# 查看当前代理
proxy status