743 字
4 分钟
当路由器开始“偷窥”:我是如何用 Hysteria2 让它彻底失明的

0x00 缘起:一条日志引发的恐慌#

上周末登录自家路由后台,随手点开「在线设备 → 访问记录」——
好家伙,连手机昨晚刷了哪些 App、访问了哪些域名,按秒级时间轴排得整整齐齐。
虽然这是我自己的网络,但被人“扒光”的滋味依旧不好受。
于是开启了一场“如何在你家网络上裸奔而不被路由器发现”的实验。


0x01 初探:路由器到底在监控什么?#

  1. DNS Query 日志
    最显眼的就是 time.apple.comclients4.google.com 这类明文 UDP/53 请求。
  2. HTTP Host / SNI
    即便走了 HTTPS,TLS 握手里的 SNI 依旧把域名暴露得明明白白。
  3. TCP SYN 四元组
    通过统计 (src_ip, src_port, dst_ip, dst_port) 也能推断出“谁访问了谁”。

一句话:只要数据包在裸奔,路由器就能看见。


0x02 第一回合:DoH/DoT 的局限#

我把手机 DNS 先后换成 Cloudflare DoHGoogle DoT
确实把 UDP/53 日志“清零”了,但路由器依旧精准地列出我访问的站点。
这说明:只加密 DNS 远远不够,SNI + 明文 IP 仍在告密。


0x03 第二回合:干掉 SYN?不如全包加密#

既然动数据包,干脆一步到位——把所有流量塞进加密的 UDP 隧道
调研一圈,盯上了 Hysteria2
基于 QUIC、自带 TLS 1.3、能把 TCP/UDP 统统裹进 UDP/443,
还能把报文外层再套一次 salamander 混淆,特征极弱


0x04 动手:30 分钟搭好全套#

1) VPS 端(Ubuntu 22.04)#

Terminal window
# 一键脚本
bash <(curl -fsSL https://get.hy2.sh/)
# /etc/hysteria/config.yaml 精简示例
listen: :443
tls:
cert: /root/.acme.sh/your.domain_ecc/fullchain.cer
key: /root/.acme.sh/your.domain_ecc/your.domain.key
auth:
type: password
password: "SuperStrongP@ss!"
bandwidth:
up: 100 mbps
down: 100 mbps

2) 安卓端:CMFA(Clash Meta For Android)#

proxies:
- name: "Hysteria2盲点逃生"
type: hysteria2
server: your.domain
port: 443
password: "SuperStrongP@ss!"
sni: your.domain
skip-cert-verify: false
udp: true
  • 规则:
    把「局域网流量」指向 DIRECT,其余全部走 Hysteria2盲点逃生
    这样家里 NAS、打印机等本地设备依旧直连,外网流量全部隐身

0x05 效果验证:路由器瞬间“失明”#

测试项未代理Hysteria2 隧道
路由器日志域名100% 命中0 条记录
SNI 明文可见被 QUIC+TLS 1.3 隐藏
延迟直连 3 ms+8 ms(可忽略)
峰值速度950 Mbps900 Mbps(几乎无损)

0x06 题外安全提示#

  • 别把 VPS 当免罪金牌:落地 IP 仍属于你的实例,不要做坏事
  • 端口跳跃:如果遇到 QoS,可在服务端加 portHopping 做 30 s 级端口漂移。
  • 内存占用:512 MB 小鸡需适当降低 initStreamReceiveWindow,否则可能被打满。

0x07 结语#

当路由器开始记录一切,加密就是最大的尊重
Hysteria2 + CMFA 这套组合,把「偷窥者」直接变成「瞎子」,
而我只花了 30 分钟和一杯咖啡的钱。

下一篇准备聊聊「如何用端口跳跃对抗校园网 QoS」,
想看的留言 +1,咱们评论区见!


当路由器开始“偷窥”:我是如何用 Hysteria2 让它彻底失明的
https://blog.sheepmc.top/posts/当路由器开始偷窥我是如何用-hysteria2-让它彻底失明的/
作者
LittleSadSheep
发布于
2025-08-21
许可协议
CC BY-NC-SA 4.0
封面
示例歌曲
示例艺术家
封面
示例歌曲
示例艺术家
0:00 / 0:00