识别真假CN2线路:路由追踪、AS号与去回程实测指南 上周有个做独立站的朋友甩给我一段命令行截图说服务商拍胸脯保证“全程 CN2 直连”可他自己晚上八点打开后台还是一卡一卡的上传商品图要转半天圈。我让他把路由追踪的完整结果发过来一看去程确实挂着 CN2 的标识回程却老老实实走回了普通骨干网——这就是典型的“单程 CN2”当“双向 CN2”卖。类似的事我这些年见过太多所以这次干脆把识别 CN2 线路真伪的整套方法写透从路由追踪的原理、AS 号怎么看、去程回程怎么分别测到商家话术怎么对号入座全流程走一遍。无论你是刚接触服务器选型的新手还是已经在做建站、跨境业务、直播推流、跨区域办公系统接入的老手只要你想搞清楚“我这台机器到底走的是不是真 CN2”这篇内容都能直接拿去用工具全是免费的命令复制粘贴就能跑。1. 先把概念理清CN2 到底是什么为什么要辨真伪1.1 三条常见路径普通骨干、CN2 GT、CN2 GIA聊识别之前得先知道自己在识别什么。国内访问一台服务器数据包大致走这么几条路普通骨干网业内常说的 163 网AS 号 4134、CN2 GT、CN2 GIA。普通骨干网承载了绝大多数民用宽带的流量国际出口是共享的晚高峰排队严重延迟抖动大CN2 是运营商建的下一代承载网AS 号 4809路由节点少、跳数短、拥塞控制更好。CN2 内部又分两档。CN2 GTGlobal Transit是“半程”产品典型表现是去程走 CN2 的 59.43 段回程落回 202.97 的普通骨干段或者反过来CN2 GIAGlobal Internet Access是“全程”产品去程回程都走 59.43 段而且在国际段有相对独立的带宽保障。这两者的成本差得不是一星半点GIA 的单价通常是 GT 的好几倍这就是为什么“CN2”三个字最容易被拿来做文章——只要沾上一点边宣传口径上就能写“CN2 线路”。还有一种更模糊的情况叫“优化线路”这个说法没有严格定义可能是加了策略路由可能是接了某个中转节点也可能只是换了台配置好点的机器。它不一定差但你没法拿它跟 CN2 划等号必须自己测。注意CN2 不等于不丢包、不卡顿。它只是路由路径更优、队列优先级更高。如果服务商把带宽卖超了十个人抢一条 100M 的口子走 GIA 照样卡。线路是“路”带宽是“车道宽度”两件事得分开看。1.2 为什么“CN2”这三个字最容易被包装我总结下来包装空间主要来自三个技术特性。第一路由可以按目的地做策略。同一台服务器对 A 地的访客走 CN2对 B 地走普通骨干完全合法且常见。服务商拿一个“到某测试点走 CN2”的截图做宣传你实际访问的路径可能完全不同。第二去程和回程是两条独立的路径。路由追踪工具测的是单向你在自己电脑上跑一条命令看到的是“你去”的路看不到“它回”的路。而现实中回程拥塞往往才是体验差的元凶——因为大部分业务是“请求小、响应大”下载数据走的是回程。只测去程就下结论等于只看了一半。第三IP 段是可以换的。有些服务商新开机器给的是优质段续费或者迁移之后 IP 变了路由跟着变。你首月测着是 GIA第二个月可能就悄悄落到 GT 上了。所以识别这件事不是一次性动作得形成习惯尤其在续费、换 IP、搬家之后重新跑一遍。2. 路由追踪到底能看到什么原理拆解2.1 traceroute 的工作机制与三种探测协议路由追踪的核心原理很朴素利用 IP 包头里的 TTL生存时间字段。发包时把 TTL 设成 1第一个路由器收到后减 1 变成 0就会回一个“超时”的 ICMP 报文于是你就知道了第一跳的地址再把 TTL 设成 2就能拿到第二跳依次递增直到抵达目标。所以一次完整的追踪本质上是几十次独立的探测每一跳都是单独测量的。这里有个很多人忽略的细节探测包的类型会影响结果。Windows 的tracert默认发 ICMP Echo 包Linux 的traceroute默认发 UDP 高端口包还有一种是发 TCP SYN 包tcptraceroute或者mtr -T就是这个思路。三种包在中间设备眼里的待遇完全不同——很多骨干路由器会对 ICMP 做限速甚至直接丢弃对 UDP 高端口也不友好但对 TCP 80/443 的包基本放行因为那是真实业务流量。这就解释了一个经典困惑为什么有的跳显示星号后面的跳却正常因为那台设备只是不响应探测包转发功能一点没毛病。星号不等于断线这个认知必须先建立起来否则你会被自己的截图吓到。另一个需要理解的概念是ECMP等价多路径。骨干网为了负载均衡到同一个目的地往往有多条并行链路路由器按哈希分流。所以你连跑三次追踪中间几跳的地址不一样是很正常的不代表线路不稳定。判断稳定性要看延迟和丢包的统计值不是看路径长得一不一样。2.2 IP 段与 AS 号识别的硬证据光看延迟数字没法判断线路类型因为延迟低可能只是地理距离近。真正靠得住的是两样东西IP 段归属和AS 号。先说 IP 段。业内长期形成的经验是IP 段开头通常归属说明59.43.x.xCN2 承载网看到它就说明路径进了 CN2202.97.x.x普通骨干网163最常见的国际出口段219.158.x.x另一家运营商的骨干跨网时会出现221.183.x.x、211.136.x.x第三家运营商的骨干同上36.x.x.x、42.x.x.x 等城域网 / 省网出口靠近用户侧这张表是经验值不是绝对规则但准确率很高日常判断够用。看到 59.43 出现在路径前几跳基本可以确认“去程进了 CN2”。再说 AS 号这是更硬的证据。每个 IP 段在 BGP 路由里都归属于某个自治系统查 AS 号能确认这段地址到底是自建的还是租来的。查询方式很简单网页端用 BGP 查询站点输入 IP 就能看到 AS 号和前缀命令行用whois也行whois 59.43.248.1 | grep -i origin\|netname\|descr为什么要多这一步因为有些小服务商租用大厂的 IPwhois 里显示的是租用方的名字看着挺唬人但实际路由归属和带宽保障完全是另一回事。AS 号查的是“谁在真正承载这条路由”比宣传页上的文字可靠得多。2.3 去程与回程必须分开测的两条腿前面提过去程回程不对称这里展开说。所谓去程是从你的本地网络到服务器回程是从服务器回到你的本地网络。路由追踪工具只能测单向你坐在家里跑tracert 服务器IP测的是去程。回程怎么测三个办法。第一如果你有服务器登录权限绝大多数场景都有直接在服务器上执行追踪命令目标填你自己的公网 IP这就是从服务器视角的“去程”也就是你业务的回程。第二用公开的路由查询工具很多机房提供 Looking Glass 页面可以选源和目标发起追踪。第三用多地点测试平台它会在各地部署的探针上同时发起双向测试一次性给出双向路径对比——这种方式最省事但免费版通常有次数限制。我个人的习惯是买之前用公开工具测买之后登录服务器复测一遍。两者结果对得上才算真的确认。只信商家给的截图风险太大那玩意儿截的是哪台机器、哪个时间段、哪个目的地你根本无从核实。3. 实操一套完整的真伪鉴定流程3.1 第一步查 AS 号与前缀归属先做背景调查拿到一个服务器 IP别急着跑追踪先做三分钟背景调查。打开 BGP 查询站点输入 IP看三个信息这个 IP 属于哪个 AS 号、前缀长度是多少、上游有几家。如果 AS 号是 4809 或者它的下游客户说明这段地址确实在 CN2 体系内如果是 4134 或者别的大 AS那后面的追踪结果基本可以预判了。同时看一眼前缀长度。/24的独立段通常比从大段里切出来的/29、/28更“干净”后者往往是二级分销路由策略可能被上层改过。这个细节不影响线路类型判断但影响你对服务商层级的判断。命令行也可以查# 查 IP 归属与 AS 号 whois 203.0.113.10 | head -40 # 用 curl 查结构化信息示例用公开查询接口 curl -s https://ipinfo.io/203.0.113.10/json注意不要把查询结果里的“组织名称”直接当成线路类型。组织名是地址注册信息跟路由走哪条链路是两回事。我见过有人看到注册信息里有个大厂名字就以为稳了结果追踪一跑全是 202.97。3.2 第二步跑去程追踪重点看 59.43 出现在第几跳去程追踪是最基础的一步。Windows 上用tracert但它的默认参数不够用我一般这么跑tracert -d -w 1000 203.0.113.10-d是不做反向域名解析速度快很多-w 1000是把超时设成 1 秒默认的 4 秒在跨国链路上太磨人。Linux 上我更推荐mtr它把追踪和持续 ping 合在一起统计信息更有价值mtr -rwzc 100 203.0.113.10参数逐个解释一下这些细节决定了你拿到的是不是有用数据-r是报告模式跑完输出一份统计表然后退出适合截图存档-w是宽屏输出不然 AS 号那列会被截断-z是显示每一跳的 AS 号这一项最关键等于把识别工作自动化了-c 100是每跳发 100 个包样本量够大丢包率才有参考意义发 5 个包得出的“20% 丢包”毫无价值。跑完之后怎么读我的判断顺序是这样的先看 AS 号列如果前 10 跳里出现了 4809说明路径进了 CN2再看 59.43 段的 IP 出现在第几跳越靠前越好如果它在第 8 跳才出现说明前面有一大段走的是普通网络那这个“CN2”的含金量就要打折扣最后看延迟曲线正常情况下应该是一条平滑上升的线如果某一跳突然从 30ms 跳到 200ms 然后又降回来那多半是那台设备的 ICMP 响应慢不是真的绕路。3.3 第三步从服务器侧跑回程验证是不是双向这一步是区分 GT 和 GIA 的关键也是最容易被跳过的一步。登录服务器执行# 从服务器追踪回你的本地公网 IP mtr -rwzc 100 你的本地公网IP # 如果服务器上没有 mtr先装一个 # Debian/Ubuntu 系apt-get install -y mtr-tiny # 其他发行版用对应的包管理器如果你的本地是动态 IP 或者不确定公网地址可以在本地先访问一个显示 IP 的页面确认。跑出来的结果重点看两件事回程有没有 59.43 段以及回程的 AS 号是不是 4809。三种典型结果对应三种结论去程有 59.43、回程也有 59.43 → 双向 CN2大概率是 GIA 级别去程有 59.43、回程全是 202.97 → 单程 CN2也就是 GT这是市面上最常见的“CN2 线路”去程回程都没有 59.43 → 跟 CN2 没关系宣传属于夸大。还有一种边界情况去程部分跳是 59.43中途又回到 202.97然后再进 59.43。这说明路由做了分段策略属于混合型质量介于两者之间。这种情况在跨境业务里不算差但你不能按 GIA 的价格去买它。3.4 第四步多点交叉验证避免被单点结果误导单从一台机器、一个地点测出来的结果说服力有限。原因前面说过路由是按目的地做策略的你这里的路径不代表别处。所以有条件的话至少在三个不同网络环境各测一次一条家用宽带、一条办公专线、一个云上的机器。三个结果如果都指向 CN2那可信度就高了如果只有某一条走 CN2说明服务商做了针对性优化属于“挑客户”策略。没有三个环境怎么办用公开的多地点测试平台。这类平台在全球部署了大量探针输入目标 IP 就能同时从多个位置发起 ping 和路由追踪免费额度通常够做一次初步判断。用法很简单输入 IP等结果出来看“回程”那一栏的路径。我一般会额外做一件事把不同地点的追踪结果截图存到一个文件夹里按日期命名。这个习惯坚持半年之后你手里就有了一份该服务商的线路变化档案续费时拿出来对比对方想糊弄你都难。3.5 第五步拉长观测窗口晚高峰才是照妖镜前面四步做完你只知道了“路径长什么样”还不知道“这条路堵不堵”。白天测出来的数据基本没有参考价值因为骨干网的拥塞集中在晚间时段通常是 19:00 到 23:00。我见过不少机器白天延迟 40ms 漂亮得很晚上八点直接飙到 300ms 还带 15% 丢包。正确做法是挂一个定时任务在晚高峰时段自动采集数据。Linux 上可以用一条简单的循环#!/bin/bash # 每小时采一次连续采 6 小时结果追加到日志 for i in $(seq 1 6); do echo $(date %Y-%m-%d %H:%M:%S) mtr_log.txt mtr -rwzc 200 203.0.113.10 mtr_log.txt sleep 3600 done跑一晚上第二天看日志。判断标准我自己的经验值是晚高峰比空闲时段延迟涨幅在 30% 以内、丢包率低于 1%属于可接受涨幅超过一倍或者丢包超过 5%那这条线路对你来说就是不合格不管它标的是 GT 还是 GIA。线路类型是“先天条件”晚高峰表现是“实际交付”后者才决定你的业务体验。4. 常见问题与排查技巧实录4.1 星号、丢包、跳数异常到底该怎么读这是问得最多的一类问题我把它拆成几个典型现象来讲。现象一中间某一跳全是星号但前后跳都正常。九成以上是那台路由器不响应探测包或者对 ICMP 做了限速。判断方法很简单看星号后面那一跳能不能通能通就说明数据包顺利穿过去了这一跳只是“不愿意搭理你”。真正需要担心的是从某一跳开始后面全是星号直到结束那才是链路中断的特征。现象二某一跳显示 100% 丢包后续跳却 0% 丢包。这在逻辑上是不可能的——包要是真丢了后面的跳根本收不到。所以只有一种解释那台设备的 ICMP 回包被限速或过滤了转发本身正常。这类跳直接无视。现象三延迟数字忽高忽低同一次追踪里同一跳出现多个不同地址。这是 ECMP 负载均衡的正常表现骨干网有多条并行链路。你要看的不是单次结果而是统计平均值和标准差。mtr的报告模式下Avg 和 Worst 两列对比如果 Worst 远大于 Avg说明存在抖动。现象四延迟全程很低但业务明显卡顿。这种情况八成不是路由问题而是带宽打满或者上行拥塞。路由追踪测的是“通路是否顺畅”测不出“车道有多宽”。遇到这种情况去服务器上看看实际出入口流量用iftop或者nload观察一下比反复跑追踪有用得多。提示跑追踪的时候加上-T参数用 TCP 模式mtr -T -P 443能绕开大部分 ICMP 限速结果更接近真实业务流量。这个技巧在骨干网设备大量限速 ICMP 的时段特别管用。4.2 商家话术对照表他说什么你就知道该测什么我把这些年听过的话术整理成了一张对照表看到左边的说法直接对应右边的验证动作别被文字绕进去。宣传说法大概率实际情况你要做的验证“CN2 直连”单程 CN2常见为 GT跑回程追踪看有没有 59.43“双向 CN2 / CN2 GIA”有可能是真的也可能是 GT 冒充要求去程回程各一张完整 mtr 报告“优化线路”定义模糊可能是策略路由自己实测别问问就是“看情况”“CN2 大带宽”线路可能真带宽可能超售晚高峰测实际吞吐不看标称值“国际出口直连”通常就是普通骨干网看 AS 号是不是 4134“独享带宽”需要合同条款支撑看有没有写进服务协议这张表不是让你去跟服务商对峙而是让你心里有个预期。多数情况下宣传和实际之间的差距来自“选择性展示”不是纯粹的欺骗——他去程确实走 CN2只是没说回程不走。你测明白了自己判断接不接受就行。还有一种情况值得单独提有些服务商给的测试 IP 和实际交付的 IP 不是同一段。测试时一切完美开通后发现根本对不上。所以拿到机器第一件事就是确认实际 IP重新跑一遍完整流程别偷懒。4.3 一份可以直接抄的判断速查表把前面的判断逻辑压缩成一张表实测时对着看观察项合格表现存疑表现不合格表现去程 59.43 出现位置前 5 跳内第 6-10 跳全程没有回程 59.43 出现位置前 5 跳内部分路段有全程没有去回程 AS 号双向 4809单向 4809都不是晚高峰延迟涨幅30% 以内30%-80%超过 100%晚高峰丢包率低于 1%1%-5%高于 5%路径稳定性多次测试路径一致偶尔变化每次都不一样用这张表打分的意义在于它把一个模糊的“好不好”变成了可量化的判断。你不需要纠结“这个延迟算不算高”对着表看就行。5. 我踩过的坑与几条实操心得说几个只有真跑过才会知道的细节。第一个坑是别在白天做最终判断。我早期有过一次教训上午测了一条线路延迟 45ms、零丢包当场拍板买了一年结果当天晚上就被用户投诉页面加载慢。后来才知道那条线路的国际出口在晚间是共享的白天闲时漂亮晚上直接顶不住。从那以后我给自己定了规矩任何线路至少跨一个晚高峰再下结论。第二个坑是别只看第一跳的延迟。有人习惯用 ping 测个延迟就完事看到 30ms 就觉得线路好。问题是 ping 测的是往返总时间它不告诉你中间绕了多远、走了几家运营商的网络。同样 30ms一条是直连三跳到位另一条绕了十二跳稳定性和抗抖动能力完全不是一个级别。所以我现在的习惯是先看路径长度再看延迟数值。第三个心得是建立自己的线路档案。我会给每台在用的机器存一份基准 mtr 报告标注日期和测试时段。以后再遇到体验变差直接拿新报告跟基准比是路径变了还是单纯拥塞一眼就能看出来。这比凭感觉回忆“以前好像不卡”靠谱得多跟服务商沟通的时候也有据可依。最后一个提醒工具只是工具判断还得靠人。同一份追踪结果有人看到的是“有 59.43 就算 CN2”我看到的是“59.43 在第 9 跳出现、回程全程没有、晚高峰丢包 8%”这三个信息叠起来结论完全不同。多测、多看、多对比把每次测试当成一次小实验而不是走流程你对线路的判断力会涨得很快。这套方法我用了好几年换过不少机器和机房到现在依然是我做选型决策的第一道筛子。