南北笔记NOTES & OCCASIONAL CODE

一个下午的网络排查记录

2026 年 9 月 16 日 · 约 5 分钟

事情的起因很简单:家里的一台旧笔记本突然打不开大部分网站,但同一个 Wi-Fi 下手机一切正常。重启路由器、换 DNS、清浏览器缓存,能想到的办法都试了一遍,问题依旧。最后花了差不多一个下午才定位到原因,记下来免得下次再绕弯路。

先确认是哪一层的问题

第一步不是急着改配置,而是分层确认。能 ping 通网关,说明局域网没问题;能解析出 IP,说明 DNS 也没问题;但用 IP 直接访问同样失败,这就把范围缩小到了 TCP 层。

接着试了几个不同大小的请求,发现小文件能下载,稍大一点的连接就卡住。这个现象很典型:握手能完成,数据一多就断,通常是路径上某个环节的 MTU 不匹配。

MTU 与分片

用 ping 带上不分片的参数,逐步加大包长,很快找到了临界值。正常情况下以太网 MTU 是 1500,但这台机器所在的链路上有一层额外的封装,实际可用值要小一些。系统按 1500 发包,到了中间设备被丢弃,表现就是“能连上、传不动”。

能建立连接不代表链路健康。TCP 握手只交换很小的包,真正传数据时才会暴露 MTU 问题。

为什么只有这一台机器

这是当时最困惑的地方。后来想明白了:其他设备要么走的是另一条路径,要么系统自动做了 MTU 探测。这台旧笔记本的网卡驱动比较老,没有正确处理相关的 ICMP 消息,于是一直用默认值硬发。

临时把接口 MTU 调小之后,问题立刻消失。长期方案是更新驱动,或者把路由器的 MSS 钳制打开,让这类问题在网关就被处理掉。

一点感想

排查网络问题最怕一上来就改配置,改得越多,变量越多,最后连最初的现象都复现不了。这次能在一个下午解决,很大程度上是因为中间强迫自己停下来,把“已经排除了什么”写在纸上。看起来慢,其实快。

← 返回文章列表