Linux中路由管理怎么排查路由延迟突然增大

梦瑶同学_4408

梦瑶同学_4408

2026-10-19

929人浏览

原创

路由延迟突然增大通常不是路由表错误,而是数据包在某段路径被卡住、丢弃或重传;排查重点是验证真实路径每跳表现(如mtr持续探测)、确认路由执行是否异常(ip route get)、检查内核转发瓶颈(rcvqdrop、rp_filter)、排除上游策略干扰(icmp/udp对比),而非仅看路由表是否存在。

linux中路由管理怎么排查路由延迟突然增大

路由延迟突然增大,通常不是路由表本身出错,而是数据包在某段路径上被卡住、丢弃或反复重传。排查重点不在“路由是否存在”,而在“路由是否被正确执行”以及“中间节点是否对流量做了策略干预”。

先确认是否真由路由路径导致

单纯看路由表(ip route show 或 route -n)只能知道下一跳和出口设备,无法反映实际转发质量。必须验证真实路径上的每一段表现:

  • 用 mtr -n -c 60 目标地址 持续探测,重点关注哪一跳开始出现丢包率上升或 RTT 明显跳变(比如从 5ms 突增至 120ms 且持续)
  • 对比 traceroute -n 目标地址 和 hping3 -S -p 80 目标地址 的结果:若 traceroute 某跳超时但 hping3 的 SYN 包能通,说明该跳禁 ICMP,不是路由问题,是策略拦截
  • 如果 mtr 中间某跳显示 ??? 或 * * *,但下跳恢复,大概率是该设备关闭了 ICMP 响应,不等于链路故障

检查本地路由决策是否异常

系统可能选了非预期的出口,尤其在多网卡、策略路由或默认网关漂移场景下:

Obsidian (Linux)
Obsidian (Linux)

操作 Obsidian 库(纯 Markdown 笔记),并通过 notesmd-cli 实现自动化。

下载
  • 运行 ip route get 目标IP,确认实际使用的源地址、出接口和网关是否符合预期
  • 检查是否有冲突或冗余路由:ip route show table all | grep -v "unreachable\|blackhole"
  • 查看策略路由规则:ip rule show,确认没有误配的 from/to 规则把业务流量导向低带宽或高延迟链路
  • 若使用 BGP 或动态路由协议(如 FRR/Quagga),检查邻居状态:vtysh -c "show ip bgp summary"

排查路由相关内核行为异常

即使路由表正确,内核也可能因资源瓶颈或配置问题导致转发延迟升高:

  • 检查软中断是否集中在单个 CPU:watch -n1 'cat /proc/interrupts | grep eth0',若只有 CPU0 的网络中断飙升,说明 RSS/RPS 未生效,包处理串行化
  • 确认接收队列是否溢出:netstat -s | grep "packet receive errors" 或 cat /proc/net/snmp | grep -A1 Tcp | grep TCPRcvQDrop,有大量 RcvQDrop 表示应用没及时收包,包在内核队列中排队
  • 检查反向路径过滤(rp_filter)是否误启:sysctl net.ipv4.conf.all.rp_filter,设为 2(宽松模式)可避免因多路径回包不匹配被丢弃

排除上游路由策略干扰

很多“路由延迟增大”实为运营商或云厂商在骨干网侧做了限速、QoS 标记或安全策略:

  • 用 mtr -I 目标地址(强制 ICMP)和 mtr --udp 目标地址 对比:若 UDP 模式大量丢包而 ICMP 正常,说明中间设备对 UDP 探测包做了限速或过滤
  • 抓包确认是否出现异常 TTL 或 IP 头字段:tcpdump -i any 'host 目标IP and icmp' -c 20,观察是否有 TTL 异常减小、DF 标志异常等迹象
  • 联系网络上游(IDC 运营商、云平台支持)提供 mtr 报告,要求核查对应跳点设备的端口缓存、ACL 策略或拥塞状况

相关文章

路由优化大师
路由优化大师

路由优化大师是一款及简单的路由器设置管理软件,其主要功能是一键设置优化路由、屏广告、防蹭网、路由器全面检测及高级设置等,有需要的小伙伴快来保存下载体验吧!

下载

相关标签:

linux 路由

本站声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

相关专题

更多
磁盘配额是什么
磁盘配额是什么

磁盘配额是计算机中指定磁盘的储存限制,就是管理员可以为用户所能使用的磁盘空间进行配额限制,每一用户只能使用最大配额范围内的磁盘空间。php中文网为大家提供各种磁盘配额相关的内容,教程,供大家免费下载安装。

2023.06.21

4090

4

如何安装LINUX
如何安装LINUX

本站专题提供如何安装LINUX的相关教程文章,还有相关的下载、课程,大家可以免费体验。

2023.06.29

3473

10

linux find
linux find

find是linux命令,它将档案系统内符合 expression 的档案列出来。可以指要档案的名称、类别、时间、大小、权限等不同资讯的组合,只有完全相符的才会被列出来。find根据下列规则判断 path 和 expression,在命令列上第一个 - ( ) , ! 之前的部分为 path,之后的是 expression。还有指DOS 命令 find,Excel 函数 find等。本站专题提供linux find相关教程文章,还有相关

2023.06.30

2673

5

linux修改文件名
linux修改文件名

本专题为大家提供linux修改文件名相关的文章,这些文章可以帮助用户快速轻松地完成文件名的修改工作,大家可以免费体验。

2023.07.05

6510

7

linux系统安装教程
linux系统安装教程

linux系统是一种可以免费使用,自由传播,多用户、多任务、多线程、多CPU的操作系统。本专题提供linux系统安装教程相关的文章,大家可以免费体验。

2023.07.06

6162

7

linux查看文件夹大小
linux查看文件夹大小

Linux是一种自由和开放源码的类Unix操作系统,存在着许多不同的Linux版本,但它们都使用了Linux内核。Linux可安装在各种计算机硬件设备中,比如手机、平板电脑、路由器、视频游戏控制台、台式计算机、大型机和超级计算机。linux怎么查看文件夹大小呢?php中文网给大家带来了相关的教程以及文章,欢迎大家前来学习阅读。

2023.07.20

3573

8

linux查看ip命令
linux查看ip命令

本专题为大家提供linux查看ip命令相关文章内容,感兴趣的朋友可以免费下载体验试试。

2023.07.20

3065

4

linux查看cpu使用率
linux查看cpu使用率

在linux的系统维护中,可能需要经常查看cpu使用率,分析系统整体的运行情况。本专题为大家带来了linux查看cpu使用率的相关文章,感兴趣的朋友千万不要错过了。

2023.07.25

3299

6

linux查找文件命令
linux查找文件命令

Linux是一种自由和开放源码的类Unix操作系统,存在着许多不同的Linux版本,但它们都使用了Linux内核。Linux可安装在各种计算机硬件设备中,比如手机、平板电脑、路由器、视频游戏控制台、台式计算机、大型机和超级计算机。php中文网给大家带来了相关的教程以及文章,欢迎大家前来学习阅读。

2023.07.31

297

3

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
Python uv官方安装与入门文档
Python uv官方安装与入门文档

共0课时 | 0人学习

Buffalo框架快速入门指南
Buffalo框架快速入门指南

共0课时 | 0人学习

Valgrind支持平台说明
Valgrind支持平台说明

共0课时 | 0人学习