Skip to content

Latest commit

 

History

History
41 lines (36 loc) · 3.01 KB

GLOSSARY.md

File metadata and controls

41 lines (36 loc) · 3.01 KB

术语速查

网络与封锁

名词 大白话
域名 / IP 地址 域名是"名字",IP 是"门牌号"。github.com 是名字,140.82.112.3 是门牌
DNS 查号台:把名字翻译成门牌。查号台可被投毒(给你假门牌)——本程序不问它,内置了真门牌表
TCP 连接 电话拨通。拨不通 = 这个 IP 当下不可用
TLS 握手 / HTTPS 电话接通后先对暗号、换加密频道,之后通话内容外人听不懂
SNI 握手第一句里明文写的"我要找 xx 域名"。审查就盯着这一句看
ALPN / h2 对暗号时顺便约定讲哪种方言(HTTP/2 还是老的 1.1)。GitHub 边缘要求必须协商出 h2
RST 掐断电话:连接被中途强制挂断
黑洞 石沉大海:包发出去永远没有回音
CONNECT 隧道 浏览器对 HTTPS 站点的方式:代理只负责"接通电话然后搬运加密箱",箱里是什么看不见
MITM(中间人) 代理持有本地钥匙,把箱子拆开看明文、必要时换条路重发,再重新装箱给浏览器。需要浏览器信任代理自办的 CA 证书
CA 证书 自办工作证。ca.crt 装进系统"受信任的根"后,浏览器才认代理现签的证书
指纹(JA3) TLS 握手第一句的"笔迹"。本程序用 BoringSSL(Chrome 在用的 TLS 库),笔迹天然是 Chrome 同款
封锁 原理 本程序的绕法
DNS 污染 查号台给假门牌 不查号,内置真 IP 表
SNI 阻断 盯握手第一句的明文域名 伪装 SNI:第一句写 baidu.com,证书按真域名验证。例外:185.199.x.133 边缘伪装会被挂起,只能真名
IP 黑洞 门牌本身被断路 串发换 IP:按表逐个试,坏的垫底换下一个
风控 服务器故意回拦截页(403 restricted / 400 Whoa) gh_defuse:本地认出拦截页,该 IP 垫底换下一个

本项目机制词

名词 大白话
IP 池 某类域名的候选 IP 排队名单,存 plans.json。三池:core(主站)/ api / edge(授权+静态+内容域)
表头 名单第一名 = 现在正在用的
串发 排队逐个试,失败换下一个(竞速 = 全部一起试,会打爆公共镜像,已弃用)
置顶 / 垫底 排队次序调整:通的升表头,坏的沉表尾
冷却 绕表全灭后 30 秒内快速失败,不反复烧表
熔断 内容域直连失败一次 120 秒内直接走镜像;镜像链全灭 60 秒内同域快速失败
流式直通 大请求体不进内存,边收边泵给上游,响应头一到立即回传
镜像链 每种资源的"复印店优先级名单",串行逐家用;名单完全来自 plans.json,可加自部署镜像(支持拼接即可)
预算 一次尝试最多等几秒(拨号 3s、响应 8s、镜像响应头 5s、流式响应头 1800s)
首字节看门狗 电话通了但对方 8 秒不吭声 → 判死
gh_defuse 拦截页化解机制的名字