混合端口:客户端在本机开的那扇门
客户端一启动就在本机监听一个端口,默认常见是 7890。mixed-port 是说这一个端口同时收 HTTP 和 SOCKS5,进来哪种它自己认。老配置分开写 port 和 socks-port 也能用,混合端口只是少记一个数字。
mixed-port: 7890
allow-lan: false
门开着不等于有流量进来,得有程序主动把请求发到这个地址才算数。下面一条看它在不在听,一条看它能不能真出去;macOS 换 lsof -i :7890,Linux 换 ss -tlnp。curl 拿到 204 就说明链路没毛病。
netstat -ano | findstr 7890
curl -x http://127.0.0.1:7890 https://www.gstatic.com/generate_204 -I
合作推荐订阅链接从哪来?本站合作机场注册即送 1GB 香港高速体验流量,可直接一键导入。获取高速节点
系统代理:给操作系统留的一张便条
这个开关做的事比想象中少:把 127.0.0.1:7890 写进操作系统的代理设置,然后就没了。Windows 在「设置 → 网络和 Internet → 代理」看得到,macOS 在「系统设置 → 网络 → 详细信息 → 代理」。
- 浏览器都读它,Electron 打包的桌面应用跟着 Chromium 一起读,所以这两类最先通。
- 命令行工具多半不看系统设置,只认
http_proxy、https_proxy这类环境变量。 - UDP 不归它管。游戏、语音通话、部分 IM 的实时流量走 UDP,开着系统代理照样直连。
TUN:往系统里插一块虚拟网卡
TUN 不指望程序配合。内核建一块虚拟网卡,改路由表把默认出口指过去,机器上所有出站流量(含 UDP)都被抓进来按规则处理。程序认不认代理,它不问。
tun:
enable: true
stack: mixed
auto-route: true
dns-hijack:
- any:53
stack 常见取值是 system、gvisor、mixed,某个软件在 TUN 下不正常就换一个试。auto-route 是改路由表那一步,关掉它网卡建起来也没流量。代价是权限:Windows 要装后台服务,macOS 首次要输管理员密码。
摆在一起看差别
- 覆盖范围:端口只服务主动找上门的程序,系统代理多覆盖一层愿意读设置的程序,TUN 是全机接管。
- UDP:只有 TUN 稳。SOCKS5 里有 UDP 转发,但要程序自己实现,实际支持的不多。
- 权限:前两者普通用户就能跑,TUN 要管理员或后台服务,公司电脑上这项经常是灰的。
- 残留:端口随进程消失,系统代理是持久设置,客户端被强杀就可能留在那儿。
- 局域网:
allow-lan: true让同网段设备也能用这台机器的 7890,只对端口生效。
退出客户端后整机上不了网,多半是系统代理那行地址还在,端口却已经没人监听。尽量从托盘正常退出,别在任务管理器里结束进程;真碰上了手动关掉开关即可恢复。