1. 测试前的准备(环境与工具)
- 准备一台位于香港或能访问香港出口的测试端(VPS/物理机),建议使用 Linux(Ubuntu/CentOS)或 macOS;Windows 亦可做简单测试。
- 安装常用工具:ping/traceroute(Windows:tracert)、mtr、iperf3、tcpdump、curl、whois、nslookup。Linux安装示例:sudo apt update && sudo apt install mtr iperf3 tcpdump -y。
- 准备目标:至少3个目标IP/域名(香港网关、国内电信直连服务器、第三方测速服务器),并记录时间同步(推荐启用 NTP)。
2. 明确测试目标与指标
- 要测的指标:往返延迟(RTT)、丢包率、抖动(jitter)、可用带宽、跳数与路由路径、路径稳定性(是否有路径抖动或绕路)。
- 选择目标节点:一是香港出口对端(检测本地到出口),二是中国大陆各地目标(北京/上海/广州),三是跨境对等节点(第三方CN2节点)。
3. 基础连通性检测:ping与简单解释
- 命令(Linux/macOS):ping -c 10 <目标IP>;Windows:ping -n 10 <目标IP>。
- 记录项:最小/平均/最大 RTT、丢包(百分比)。若丢包>1%或平均RTT显著偏高,说明链路中有问题或拥塞。抖动可由多次ping差异观察得出。
4. 路径识别:traceroute/tracert
- 命令:Linux/macOS traceroute -n <目标IP>;Windows tracert -d <目标IP>(-d 不解析域名,加快)。
- 观察要点:每跳IP与延迟、是否有明显延迟跃升(某跳RTT突然比上一跳大很多),若跃升出现在国际出口处说明跨境延迟;若在国内多跳中出现说明国内骨干或最后一公里问题。记录每跳ASN可帮助判断是否走的是CN2(需要后续whois/AS查询)。
5. 连续路径与丢包检查:使用mtr
- 命令:mtr -rwzbc 100 <目标IP>(r:报告样式,w:宽输出,z:显示摘要,b:显示字节/包,c:次数)。
- 观察mtr输出列:Loss%(丢包)、Snt、Last/Avg/Best/Wrst/StDev。持续丢包出现在某个中间跳而不是最后一跳,通常是转发设备对 ICMP 限流,不一定影响实际 TCP 流量;若丢包出现在最后一跳,应关注链路质量。
6. 带宽测试:iperf3 实战
- 若可控两端:在目标服务器上运行 iperf3 -s(作为服务器);在香港测试端运行 iperf3 -c <服务器IP> -P 4 -t 60(并发4流、测试60秒)。
- 记录上下行峰值、平均带宽与抖动(UDP 测试需加 -u 并指定比特率)。若 TCP 带宽远低于预期且 RTT 不高,可能是 TCP 窗口/丢包导致,需结合 tcpdump 分析重传。
7. 深入抓包与分析(tcpdump + Wireshark)
- 命令抓包示例:sudo tcpdump -i eth0 host <目标IP> and port <端口> -w capture.pcap。
- 用 Wireshark 打开 capture.pcap:检查 TCP 重传、SACK、窗口缩放、ICMP unreachable 等信息。频繁重传与窗口缩小通常说明链路丢包或拥塞。
8. 判定是否为CN2线路(如何识别)
- 在 traceroute/mtr 输出中记录每跳IP后,用 whois 或在线 BGP 查询(如 bgp.he.net、ipinfo)查看对应 ASN 与运营商名称。CN2 常表现为中国电信网络路径、运营商描述含 China Telecom/CN2 等字样(注意CN2并非单一ASN,需综合判断)。
- 可结合多个目标、多个时间点多次比对路径是否稳定,CN2 线路通常路径更短、更稳定、延迟更低。
9. 多时段与长时监控建议
- 推荐在不同时段(高峰/非高峰)各测试一次,并做长时间(例如24小时或7天)采样,每5分钟跑一次简单 ping/mtr 脚本以记录波动。
- 自动化保存结果:用 cron + 脚本写入 CSV 或数据库,便于后期画图与趋势分析。
10. 结果解读要点汇总
- 延迟:HK→国内平均 RTT 小于 60ms 一般算良好;大于100ms 则可能不是直连或有拥塞。
- 丢包:长期 >1% 需关注,瞬间丢包可能是链路拥塞或转发设备限流。
- 带宽:与购买方案对比,若远低于保障值则需做双端 iperf3 验证并抓包定位。
- 路径:若跨境跳数多或出现绕路到第三国,可能不是CN2直连。
11. 常见问题与快速定位方法
- 如果 traceroute 某跳超时但后续跳恢复,说明该跳可能对 ICMP 限制,不必过度紧张,应看最终目标的丢包与带宽。
- 若 TCP 下载慢但 ping 正常,检查是否存在带宽限速、丢包引发重传或应用层限速(使用 curl/wget 多线程测试以排除应用问题)。
12. 测试记录模板建议(便于汇报)
- 每次测试记录字段:时间、测试端IP、目标IP、命令、RTT(min/avg/max)、丢包%、iperf带宽、traceroute路径(含ASN)、备注。
- 汇报时附上关键截图(mtr摘要、iperf输出、 traceroute 列表)与结论(是否为CN2、是否稳定、是否需要运营商介入)。
13. 问:如何确认我测到的线路真的是CN2?
- 答:通过多点 traceroute/mtr 记录每跳 IP,然后用 whois 或 BGP 查询(如 bgp.he.net、ipinfo)查看各跳的 ASN 与运营商名称;CN2 通常表现为中国电信相关的骨干段且跨境跳数少、延迟低且长期稳定。结合不同时间、多目标的路径一致性可以进一步确认。
14. 问:如果发现丢包或延迟突增,下一步如何定位?
- 答:先在不同时间重复 mtr/iperf3 确认是否持续,若持续记录在某个中间跳开始出现丢包,联系对应 ASN 的对端或国内运营商,提供 traceroute/mtr/抓包结果;若丢包在最后一跳,检查本地链路或接入带宽与故障。
15. 问:没有远端可控服务器怎么做带宽测试?
- 答:可使用公共 iperf3 服务(若可信)或使用 HTTP 下载大文件做并发测试(curl/wget 多线程),同时结合 mtr 判断中间是否有丢包;另可租用廉价国内/香港 VPS 做短期测。
来源:如何自行进行香港cn2线路实测并解读测试结果要点