1. 概述与目标
目标:可操作地判断香港 B 区是否走CN2,并建立可靠的监控与告警。小分段:说明监控范围(连通性、延迟、丢包、AS 路径);工具清单(traceroute/mtr/ping、whois、Prometheus、blackbox_exporter、Alertmanager、Zabbix/钉钉 webhook)。
2. 初步确认:主动探测步骤
步骤1:从目标机或堡垒机执行 traceroute(TCP优先):
traceroute -T -p 80 <目标IP> 或 tcptraceroute <目标IP> 80。
步骤2:使用 mtr 连续探测:mtr -rwz -c 100 <目标IP>,记录稳定的跃点与丢包率。
步骤3:whois/AS 查验:whois <跃点IP> 或使用在线 RADb whois 查询,重点查 AS 号是否为中国电信 CN2 常见 AS(例如 AS4809 等)。
3. 被动确认:BGP 与 CDN/运营商数据采集
步骤1:如果能访问交换机/路由器,抓取 BGP 路由表:show ip bgp <目标前缀>,查看 AS PATH。
步骤2:使用公网 Looking Glass(电信/联通/移动)或 bgp.he.net 查询路径与 origin AS。
步骤3:结合 ISP 文档或对端告知判断是否为 CN2 专线。
4. 建立监控体系(Prometheus + blackbox_exporter)
安装:在监控机上部署 blackbox_exporter(官方二进制或 docker)。
Prometheus scrape_config 示例(放入 prometheus.yml):
- job_name: "blackbox-hk-b"
metrics_path: /probe
params: {module: [tcp_connect]}
static_configs:
- targets: ['<目标IP或域名>:80']
relabel_configs:
- source_labels: [__address__]
target_label: __param_target
- source_labels: [__param_target]
target_label: instance
- target_label: __address__
replacement: 127.0.0.1:9115 # blackbox exporter 地址
5. 告警规则与阈值示例(Prometheus Alertmanager)
延迟规则(PromQL):probe_tcp_duration_seconds{job="blackbox-hk-b"} > 0.15 for 2m(阈值 150ms 可根据 SLA 调整)。
丢包规则:probe_failed{job="blackbox-hk-b"} == 1 for 3m(连续失败触发)。
AS 路径变更:定期抓取 traceroute 的 AS 信息存储为 metric(或写脚本对比),当 AS 路径发生变化触发告警。
Alertmanager:配置 routes -> group_by -> receiver(邮件/钉钉/Slack/Webhook),并设置分级(P0 立刻短信,P1 邮件,P2 Slack 汇报)。
6. 报警后的处置与 Runbook
自动化响应:报警触发后先调用脚本进行二次验证(mtr 10 次并保存结果);
人工流程:确认是否为 CN2 路径切换——查看 traceroute 的 AS 路径与跳跃特征;若非 CN2 且影响业务,按 SOP 联系带宽/链路供应商并提交 tc 支持单;
记录与回放:将探测结果(mtr/traceroute/ping)与 Prometheus 报警快照附到工单中。
7. 常见误判及避免方法(问)
问:为什么 traceroute 显示中国电信 AS,但不是 CN2?
8. 常见误判及避免方法(答)
答:AS 号相同不代表走的是 CN2 专线,可能是普通骨干或不同 MPLS 业务。需结合延迟、丢包、BGP community、运营商文档与对端确认,同时用 TCP traceroute(80/443)模拟业务路径以降低误判概率。
9. 实战常见问题与快速验证(问答)
问:如何快速在监控中识别“疑似 CN2”流量并触发人工复核?
答:配置复合告警规则:当延迟稳定低且 AS 路径包含 CN2 标识且丢包低于阈值,标记为“疑似 CN2”;若后续 AS 变化或延迟突增,自动升级为人工复核并抓包/提交 LG(looking glass)查询。
来源:运维角度看香港b区是不是cn2时的监控与报警配置要点