Veee的一些配置和操作

148 阅读3分钟

Veee 代理配置指南

配置概览

开启 Veee 后,网络流量分两层控制:

  • 系统层(浏览器、GUI 应用):由 macOS 系统代理设置控制
  • 终端层(curl、npm、git 等命令行工具):由 shell 环境变量控制

流量走向原理

 开着 Veee
     │
     ├─ 浏览器 / GUI 应用
     │      └─ macOS 系统代理 (127.0.0.1:15236)
     │              ├─ 域名在绕过列表?→ 直连
     │              └─ 不在列表?→ 走 Veee → 美国出口
     │
     └─ 终端 (curl / npm / git)
            └─ 环境变量 http_proxy / no_proxy
                    ├─ 域名在 no_proxy?→ 直连
                    └─ 不在 no_proxy?→ 走 Veee → 美国出口

终端层配置

配置文件位置

 ~/.zshrc(即 /Users/zkjmac/.zshrc)

配置内容说明(文件末尾)

 # Veee 监听端口
 _VEEE_PORT=15236
 _VEEE_PROXY="http://127.0.0.1:15236"
 ​
 # 不走代理的域名白名单(逗号分隔)
 _NO_PROXY="localhost,127.0.0.1,10.0.0.0/8,..."
 ​
 # proxy_on:开启当前终端代理
 proxy_on() {
   export http_proxy="$_VEEE_PROXY"
   export https_proxy="$_VEEE_PROXY"
   export all_proxy="$_VEEE_PROXY"
   export no_proxy="$_NO_PROXY"
   export NO_PROXY="$_NO_PROXY"
 }
 ​
 # proxy_off:关闭当前终端代理
 proxy_off() {
   unset http_proxy https_proxy all_proxy no_proxy NO_PROXY
 }
 ​
 # proxy_status:查看当前终端代理状态
 proxy_status() { ... }
 ​
 # 打开终端时自动检测 Veee 是否运行,是则自动开启代理
 if lsof -iTCP:15236 -sTCP:LISTEN -P &>/dev/null; then
   proxy_on
 fi

常用命令

命令作用
proxy_on当前终端开启代理
proxy_off当前终端关闭代理
proxy_status查看当前终端代理状态
source ~/.zshrc修改 .zshrc 后立即让当前终端生效

如何追加终端白名单域名

用编辑器打开 ~/.zshrc

 open ~/.zshrc       # 系统默认编辑器
 code ~/.zshrc       # VS Code
 nano ~/.zshrc       # 终端内编辑器

找到 _NO_PROXY= 这一行,在末尾的 " 之前添加 ,*.新域名

 # 修改前
 _NO_PROXY="...*.cn"
 ​
 # 修改后(追加 *.example.com)
 _NO_PROXY="...*.cn,*.example.com"

保存后执行 source ~/.zshrc 或重新打开终端生效。


系统层配置(浏览器 / GUI 应用)

查看当前绕过列表

 networksetup -getproxybypassdomains Wi-Fi

通过系统设置修改(可视化)

系统设置 → Wi-Fi → 详细信息 → 代理 → 绕过代理设置(填入域名,换行分隔)

通过命令行修改

⚠️ 注意:此命令是全量替换,必须把所有域名都写上,否则之前的会丢失。 建议先用 networksetup -getproxybypassdomains Wi-Fi 查看现有列表再操作。

 networksetup -setproxybypassdomains Wi-Fi \
   127.0.0.1 \
   localhost \
   192.168.0.0/16 \
   10.0.0.0/8 \
   172.16.0.0/12 \
   "*.local" \
   "*.crashlytics.com" \
   "<local>" \
   "10.1.42.2" \
   "*.cy.com" \
   "*.cyou-inc.com" \
   "*.cyouops.com" \
   "*.baidu.com" \
   "*.aliyun.com" \
   "*.aliyuncs.com" \
   "*.alibaba.com" \
   "*.taobao.com" \
   "*.tmall.com" \
   "*.qq.com" \
   "*.tencent.com" \
   "*.weixin.qq.com" \
   "*.163.com" \
   "*.126.com" \
   "*.netease.com" \
   "*.jd.com" \
   "*.zhihu.com" \
   "*.bilibili.com" \
   "*.weibo.com" \
   "*.sina.com.cn" \
   "*.sohu.com" \
   "*.iqiyi.com" \
   "*.youku.com" \
   "*.meituan.com" \
   "*.npmmirror.com" \
   "*.qcloud.com" \
   "*.myqcloud.com" \
   "*.huaweicloud.com" \
   "*.cn"

当前白名单涵盖范围

公司内网

域名 / IP说明

国内网络

域名覆盖服务
*.baidu.com百度
*.alibaba.com / *.aliyun.com / *.aliyuncs.com阿里巴巴 / 阿里云
*.taobao.com / *.tmall.com淘宝 / 天猫
*.qq.com / *.tencent.com / *.weixin.qq.com腾讯 / 微信
*.163.com / *.126.com / *.netease.com网易
*.jd.com京东
*.zhihu.com知乎
*.bilibili.comB站
*.weibo.com / *.sina.com.cn微博 / 新浪
*.sohu.com搜狐
*.iqiyi.com / *.youku.com爱奇艺 / 优酷
*.meituan.com美团
*.npmmirror.comnpm 国内镜像
*.qcloud.com / *.myqcloud.com腾讯云
*.huaweicloud.com华为云
*.cn所有 .cn 域名

常见问题

Q:修改 .zshrc 后当前终端不生效? A:执行 source ~/.zshrc,或重新打开一个终端窗口。

Q:某个国内网站还是走了代理? A:找到其主域名(如 abc.com),在 ~/.zshrc_NO_PROXY 末尾追加 ,*.abc.com,同时用 networksetup 命令追加到系统绕过列表。

Q:公司内网又加了新域名? A:同上,两个地方都追加一下。

Q:怎么验证某个域名是否走了代理?

 curl -v https://目标域名 2>&1 | grep -i proxy
 # 有输出说明走了代理,无输出说明直连

Q:代理端口变了(Veee 更新后)? A:打开 ~/.zshrc,修改 _VEEE_PORT=15236 中的端口号即可。