1. 概述与先决条件
- 目标:判定是IP被封、路由被过滤还是中间链路问题,并给出可执行的运营商级应对方案。
- 先决:能从境外与境内节点做网络测试(至少一台境外测站和一台国内测站或使用国内外Looking Glass)。
2. 初步诊断:确认问题类型
- 步骤1(连通性):从境外与境内分别执行 ping 与 traceroute(Linux: traceroute -n,Windows: tracert -d)。记录丢包/跳点。
- 步骤2(端口检测):使用 telnet IP port 或 nc -vz IP port 检查TCP三次握手是否能完成,若能连通但应用层有问题,可能为应用过滤。
- 步骤3(重现RST/RESET):用 tcpdump -i any host
and port 在被测端抓包,观察是否有RST来自中国边缘设备。
3. 深度检测:区别GFW过滤与路由问题
- DNS检测:在境内测站用 dig @114.114.114.114 domain 和直接解析IP,排除DNS污染。
- SNI/HTTPS检测:openssl s_client -connect ip:443 -servername your.domain.com 验证是否通过TLS握手,若TLS被中断可能为深度包检测(DPI)。
- 路由检测:从多个国内Looking Glass或AS的MTR/trace(如中国电信/联通的LG)对比AS路径差异,若境内多点不可达且停在同一AS,倾向路由被过滤。
4. 证据采集模板(用于报告给上游或监管)
- 必备文件:问题时间范围、样本IP/端口、从境外与境内的 traceroute/mtr/ping 输出文本、抓包(pcap)文件、应用层log(curl -v 输出)。
- 证据打包命令示例:tar czvf report_.tgz traceroutes.txt mtr_results.txt capture.pcap curl_logs.txt,并注明UTC时间戳。
5. 排查BGP与前缀问题
- 步骤:查询路由表(bgp.he.net、routeviews、RIPE RIS),确认你的前缀是否被全球宣布或在中国存在过滤。
- 操作:导出本地BGP表(show ip bgp prefix),向上游请求查看是否有prefix被过滤或更短前缀被吸引(可能是BGP劫持)。
6. 运营商可采取的短中长期缓解措施
- 短期(应急):立即启用备用出海链路(备份ISP或不同境外PoP),通过BGP策略切换路由(AS-Path prepending 或 更改 local-preference)。
- 中期:与中国境内多个对等点建立冗余(在不同运营商/不同IX对等),提升多样化。
- 长期:与主要承载商协商加入优质专线(如 CN2 GT/CTG 型号)或申请稳定的对等/直连服务,并维护良好资质与合规证明。
7. 与对端/上游沟通的实操模板
- 邮件结构:标题(紧急) + 问题概述 + 影响范围 + 附件(traceroute/mtr/pcap) + 希望的处理(例如:请查核边缘RST/过滤规则并回告)。
- 联系点:先发邮件并同时通过NOC热线或工单系统催办,提供时间窗口以便双方对流量进行实时抓包比对。
8. 法律及合规注意事项
- 在处理被墙问题时,需确认服务内容合规并配合对方进行内容审查;对于跨境数据,遵守各国数据与通信监管要求。
- 若怀疑恶意拦截或BGP劫持,可保留证据并在必要时寻求监管部门协助。
问:如何快速判断是GFW层面的封锁还是运营商路由问题?
- 提示:优先比较境内外 traceroute 与 TLS 握手结果;若在中国境内多点到达同一跳停止或收到RST,倾向运营商/边缘设备过滤;若是DNS返回异常或SNI被中断,更可能为GFW DPI。
答:具体操作步骤是什么?
- 回答:从境外与国内两端同时执行 traceroute/mtr、openssl s_client 测试、并在可控节点抓包。将所有结果时间对齐打包发送给上游/对端NOC,要求他们在对应时间窗口内抓取边缘设备包供比对。
问:运营商在接到此类工单后应优先做什么?
- 回答:优先开启应急备路由并确认故障范围,协调上游对端在相同时间窗口内做抓包与BGP路由比对,收集证据后根据问题类型(过滤/劫持/链路故障)采取相应的路线调整或向监管申述。
来源:香港cn2被墙的常见原因与运营商应对建议