晚高峰18:40,某专线出口出现3%~8%丢包,VoIP通话断续,应用却报告“网络可达”。traceroute显示第6跳起连续超时,换条路径后丢包又“消失”。现场常混着真实转发丢包、ICMP限速和局部链路拥塞。只凭一跳超时,会误判节点,甚至把扩容费用投错位置。
如果你正在选机器,或者想先把线路和配置跑通再谈长期方案,可以先看看这几家的线路说明和技术参数:4vps(海外服务器),先看清带宽线路、流量策略和退款条款,再决定要不要迁。
定位应从路径测绘开始。分别执行A→B和B→A的双向路由追踪,统一探针大小、间隔、速率和时间戳,把响应与相邻跳配对。去程与回程常不对称:去程某跳丢包、回程正常,就是线索。遇到路由刷新或编号变化,应分组记录,不能把前后设备视作同一跳。

中间节点无响应,只说明TTL到期消息没有回来,可能是控制面限速,不等于业务包在该跳被丢弃。做逐跳丢包确认时,只有上游稳定应答、下一跳连续异常,且终点同窗业务流也丢包,才应把故障边界向下游推进。两侧结果需分别核对,回程正常不能抹消去程异常。
每轮连续发包,记录超时比例、时延与抖动;中途换路就停用旧数据。多出口环境固定源接口,避免负载均衡分散探针,使相邻跳失去可比性。
判断不能停在“某跳超时”,还要同步做终点丢包采样。在业务终点运行接近生产协议的持续流,记录TCP重传、UDP序号缺口或应用层丢包,同时执行双向探测。每组覆盖低峰、平峰和晚高峰,每段持续10分钟并重复多轮,观察异常是否总落在相同方向、时段和节点。

三类现象可据此拆分:中间跳偶发不回ICMP,而相邻跳稳定、终点丢包保持基线,且流量升高时限速比例上升,多半是ICMP限速造成的假丢包;终点持续丢包,时延与抖动同步抬升,并从边界向下游放大,更像真实转发丢包;若终点正常而某段链路排队、输出丢弃增加,则偏向局部链路拥塞。做路由节点对比时,只比较同方向、相邻节点和相同时段。
ServLlama可编排双向探测计划,保存路径快照与时段样本。常见坑包括把一次超时当结论、探针速率变化、路由更新后沿用旧编号;还应排除安全策略和目的地址漂移。最终应让终点丢包、逐跳边界与接口拥塞计数器相互印证,而不是只看“路由能通”。
晚高峰抓包时,traceroute 某跳显示“100% loss”,仅表示未收到该跳 ICMP,不等于业务包在此被丢弃。路由器 TTL 耗尽后生成的 ICMP Time Exceeded 常走低优先级控制队列。做ICMP限速识别时,应重复探测同一跳二十至三十次,并比较相邻跳和同路径目标;若仅该跳间歇性不回 ICMP,而后续跳及业务稳定,更像限速或控制面拥塞,而非转发丢包。
定位采用双向路由追踪:A 到 B、B 到 A 分别执行,固定源地址、时间窗和参数,记录每跳 IP、RTT、丢包率及路由变化。BGP、ECMP 或策略路由可能令正反向路径不同,不能用单向结果代替双向结论。对可疑节点做逐跳丢包确认:逐级增加 TTL,每级采样至少十次,核对 TTL=N、N+1 响应与终点流量。若 N 无响应而 N+1 和终点稳定,应查 N 的 ICMP 生成、ACL、队列;若 N 及其后持续丢包且出口计数增长,才支持转发面丢包判断。
终点独立做终点丢包采样:受控发送一百至二百个小包,再用接近 MTU 的包长复测,并与共享末段目标对照;同步查看网卡错误、softnet backlog、队列丢包、CPU、ARP、conntrack。网络探测稳定而应用超时,应转查应用线程、连接池及负载均衡。

结果整理为节点表:跳号、IP、方向、丢包率、RTT、接口、路由事件和负载。做路由节点对比时,重点看丢包起点、RTT 突增和设备两侧差异。常见模式是仅单跳 ICMP 丢失但业务正常、双向不对称、出口丢包伴随队列增长、终点独有问题。不要把 traceroute 逻辑跳当成一台物理设备,ECMP、NAT、负载均衡和 ICMP 代答都会造成错觉。
可执行检查清单:①晚高峰复现,记录端点、工具和时间;②双向各跑三轮 traceroute,每跳不少于十个样本并保存原始输出;③沿 TTL 边界逐级验证,用业务流量交叉确认;④核对疑似节点的接口计数、队列、CPU、ICMP 限速配置和日志;⑤对照正反向路由、BGP、策略路由及 ECMP 变化;⑥在终点按不同包长和速率采样。证据冲突时标记“待确认”,不提前宣布丢包节点。
最终报告应写清时段、方向、相邻跳现象及计数器或采样证据,而不是笼统称“第几跳丢包”。这样才能把ICMP限速识别、真实转发丢包与终点异常分开,并排定修复优先级。