首页/系统/信创系统运维速查/MTU 不一致导致大包不通
常见问题65 条

MTU 不一致导致大包不通

ping 小包正常、大文件或 HTTPS 卡住:多为路径 MTU 不一致,用 ping -M do 探测临界值,两端对齐或做 MSS 钳制。

信创系统运维速查系统更新于 2026-10-12

探测

探测
ping -M do -s 1472 -c 2 <对端IP>           # 1472+28=1500 通即 1500 可用
ping -M do -s 1400 -c 2 <对端IP>           # 逐步减小找临界值
ip link show eth0 | grep mtu               # 本机 MTU
ip route get <对端IP>                       # 选路出口

调整

调整
ip link set dev eth0 mtu 1400              # 临时改(重启失效)
# 持久化:写入连接配置(nmcli 或对应网络配置文件)
# 内核级 MSS 钳制示例(转发场景):
# iptables -t mangle -A FORWARD -p tcp --tcp-flags SYN,RST SYN -j TCPMSS --clamp-mss-to-pmtu
隧道、专线、VPN 场景 MTU 小于 1500 很常见:优完在网络层对齐,而不是只调应用。

易错点

  • ICMP 被禁时 -M do 探测会误判:结合抓包或两端直测确认
  • 只调一端常常不生效:会话路径上的两端与中间设备都要对齐

数据来源与参考

  • man 8 ping
  • man 8 ip-link
​‌‌​​‌​​​‌‌​‌‌‌‌​‌‌​​​‌‌​‌‌‌​​‌‌​​‌​‌‌‌​​‌‌‌​​​‌​‌‌​‌​​‌​‌‌‌​​​‌​‌‌​‌​​‌​‌‌​​​‌‌​‌‌‌​‌​​​‌‌​‌‌‌‌​​‌​‌‌‌​​‌‌​​​‌‌​‌‌​‌‌‌‌​‌‌​‌‌​‌