1.
目标与准备
说明:明确要评估的目标 IP 或目标服务(如香港 CN2 出口 IP、CDN 节点、应用服务器)。
准备:Linux 主机(建议 2 台分布在不同机房或云),有 root 权限;安装 mtr、traceroute、iperf3、speedtest-cli、tcpdump、prometheus/blackbox_exporter、grafana。
2.
基础连通性检测(Ping)
步骤:1) 基础 ping:ping -c 100 <目标IP>,记录平均 RTT、丢包率。2) 分时段:编写 cron 每小时执行并保存结果到 CSV(示例:ping -c 100 > /var/log/ping_target.csv)。3) 参考阈值:平均 RTT < 50ms、丢包 < 1% 为优。
3.
路径与跃点分析(MTR/Traceroute)
步骤:1) 使用 mtr:mtr -r -c 100 <目标IP> 得到每跳丢包与延迟分布。2) 保存 report:mtr --report-cycles 200。3) 分析:若某一跳开始丢包但后续跳正常,可能是 ICMP 限速;若后续跳也丢包,说明该节点为瓶颈。
4.
TCP 路径追踪(tcptraceroute / traceroute -T)
步骤:1) 在防火墙可能阻断 ICMP 的场景下用 tcptraceroute -p 443 <目标> 或 traceroute -T -p 443。2) 对比 ICMP 与 TCP 路径差异,判断运营商策略或负载均衡行为。
5.
吞吐量测试(iperf3)
步骤:1) 部署 iperf3 服务器在香港或目标机房(iperf3 -s)。2) 客户端测试:iperf3 -c <目标> -P 4 -t 60 -i 10,记录带宽峰值与抖动。3) 多时段测试,区分白天/晚高峰与次日凌晨。
6.
公网速度与用户感知(speedtest-cli)
步骤:1) 安装 speedtest-cli 并选定香港节点:speedtest --server
--json > speedtest.json。2) 记录下载/上传/延迟,结合 iperf 结果判断上行/下行差异。
7.
实时抖动与语音质量(ping/jitter & rtp)
步骤:1) 通过 ping 间隔 10ms 连续 1 分钟统计 RTT 方差作为抖动估算。2) 用 sipp 或 rtp 工具模拟 VoIP,记录丢包与延时,计算 MOS 估值(若丢包>1% 或抖动>30ms 则需优化)。
8.
抓包与深层分析(tcpdump)
步骤:1) 在出现异常时用 tcpdump -i eth0 host <目标IP> -w dump.pcap 捕获流量。2) 在 Wireshark 中看三次握手时间、重传、窗口缩小、RTO,判定是否为链路拥塞或丢包引起的重传。
9.
BGP 与路由策略检查
步骤:1) 使用各大 BGP looking glass(如 Hurricane、NTT LG)查看到目标前缀的 AS_PATH。2) 对比本地和远端 AS 路径,若存在多条路径选择问题,联系运营商调整策略或申请优先路由。
10.
自动化监控:Prometheus + Blackbox Exporter
步骤:1) 部署 blackbox_exporter 并配置模块(icmp、tcp_connect、http_2xx)。2) Prometheus scrape config 示例:job_name: 'cn2-hk' targets: ['<目标IP>']。3) 建立告警规则:例如 rtt_avg > 80ms 持续 5m 告警、packet_loss > 2% 告警。
11.
可视化与告警(Grafana / Alertmanager)
步骤:1) 在 Grafana 创建 Dashboard:Ping RTT、丢包率、iperf 带宽、mtr 每跳丢包热力图。2) 配置 Alertmanager:通过邮件/Slack/钉钉接收阈值告警并附上最近 24 小时趋势图。
12.
长期数据与趋势分析
步骤:1) 保存历史数据(InfluxDB/Prometheus TSDB),按天/周/月聚合查看高峰时段。2) 找到周期性性能下降(例如夜间备份或白天高峰),并据此调整 QoS 或扩容。
13.
如何定位是 CN2 线路问题还是目标机房问题
步骤:1) 用多节点对比测试:在同一运营商不同出口与不同运营商做对比。2) 若多条源到目标出现相似路径段异常,倾向于 CN2 线路问题;若仅个别源异常,可能是本端或中间机房问题。
14.
常见故障与处理建议
子项:1) 高丢包:确认链路错误、MTU 问题或运营商丢包;抓包查证并联系运营商。2) 延迟升高:检查路由绕行、BGP 改道或拥塞时段。3) 间歇性丢包:检查防火墙、负载均衡健康检查频率。
15.
问:如何用 mtr 判断 CN2 某跳是否为瓶颈?
回答:用 mtr -r -c 200 <目标>,观察从某跳开始到目标持续高丢包且延迟逐跳上升,且该跳之后的丢包不被过滤,通常说明该跳为瓶颈;若该跳丢包但下一跳恢复,则可能为 ICMP 限速。
16.
问:Prometheus+blackbox 配置中,哪些指标最关键?
回答:关键指标为 probe_duration_seconds(RTT)、probe_success(可达性)与由 probe 计算出的 packet_loss;同时结合 iperf 带宽指标和 TCP 握手时延以判断吞吐与连通性。
17.
问:发现问题后与 CN2 运营商沟通需要哪些信息?
回答:提供时间窗口、源/目的 IP、mtr/traceroute 报告、ping 报告(带丢包与 RTT 统计)、抓包 pcap 以及对应的 BGP 路径信息,便于运营商快速定位与处理。
来源:如何通过监控工具评估cn2 香港线路的健康状况与质量