route -n是排查跨网段通信丢包最快速有效的第一步,可立即暴露默认网关错配、目标网段缺失或接口绑定错误;重点关注destination(0.0.0.0为默认路由)、gateway(非0.0.0.0且须在本地子网)、genmask(须与destination匹配)、iface(出接口是否正确)四列,并结合ip route get和arp -n验证实际转发路径与网关可达性。

直接用 route -n 查看内核路由表,是排查跨网段通信丢包最快速有效的第一步。它能立刻暴露默认网关错配、目标网段缺失或接口绑定错误等关键问题,比 ping 或 traceroute 更早定位故障根源。
route -n 输出怎么看懂
执行 route -n 后,重点关注四列:
- Destination:目标网络。0.0.0.0 表示默认路由;192.168.10.0 这类是具体网段;10.0.5.8 这种带完整掩码(255.255.255.255)的是主机路由。
- Gateway:下一跳地址。为 0.0.0.0 表示直连,不经过网关;为 * 表示无网关;若显示一个 IP,但该 IP 不在任一本地网卡子网内,说明网关不可达,极易导致丢包。
- Genmask:子网掩码。必须与 Destination 匹配。例如 Destination 是 172.16.20.0,Genmask 却是 255.255.0.0,那实际匹配的是 172.16.0.0/16,可能覆盖错误或遗漏更精确的路由。
- Iface:出接口。若跨网段流量本该走 eth1,却匹配到 eth0 的路由条目,数据会从错误网卡发出,大概率被丢弃或无法回应。
重点检查三类高危路由条目
丢包常源于以下三类配置异常:
当代理已经知道网站路由或内容URL,并且在启动前需要有效的sitemap XML、sitemap索引或robots.txt引用时,请使用sitemap。这是一个发布构件技能,而不是爬虫或SEO平台。
- 默认网关指向错误子网:如 Gateway 显示 192.168.100.1,但本机 eth0 地址是 10.1.1.5/24 —— 网关根本不在同一网段,无法 ARP 解析,所有发往外网的包都会超时丢弃。
- 存在冲突的重叠网段路由:例如同时存在 10.0.0.0/8 via 10.1.1.1 和 10.0.5.0/24 via 10.2.2.2,而后者本应更精确优先,但因 metric 值更高或插入顺序靠后,导致部分 10.0.5.x 流量误走 10.1.1.1,引发丢包或响应异常。
- 直连路由缺失或被覆盖:比如本机配置了 192.168.25.100/24,但 route -n 中找不到 192.168.25.0 * 255.255.255.0 U 这样的直连条目 —— 说明网卡未正确 UP 或地址未生效,该网段内所有通信都会失败。
结合 ping 和 ip route get 验证路由决策
仅看 route -n 不够,需验证系统是否真按此路由转发:
- 对目标 IP 执行 ip route get ,它会模拟内核选路过程,返回实际匹配的路由条目及出接口。例如:
ip route get 172.16.30.5 返回 172.16.30.5 via 10.0.1.254 dev eth0 src 10.0.1.100,说明走的是 eth0,源地址是 10.0.1.100 —— 若你期望从 eth1 出去,就说明路由表有误。 - 紧接着用 ping -I eth0 172.16.30.5 强制指定接口测试,排除多网卡选路干扰。若通而普通 ping 不通,基本可断定是路由表中缺少对应网段的明确路径。
- 再用 arp -n | grep 检查网关 MAC 是否已学习。若为空,说明 gateway 不可达,根源仍在 route -n 中 Gateway 字段配置不当。
常见丢包场景对应 route -n 现象
遇到丢包时,对照下面现象快速归因:
- 能 ping 通网关,但 ping 不通其他网段 → route -n 中缺少对应网段的静态路由,或默认网关虽存在但下游设备未开启转发/ACL拦截。
-
ping 外网丢包率高且不稳定 → route -n 中 default 条目的 Gateway 对应的 Iface 接口本身有错包(可用 ip -s link show
查 RX/TX errors/drop),或该网关 IP 实际不可达(ARP 表为空或反复 timeout)。 - 同一目标,有时通有时不通 → 可能存在两条 metric 相同的默认路由(如双网卡都配了 default),导致负载分担异常;route -n 里会看到两行 0.0.0.0,需删掉冗余项或调整 metric。










