商城首页欢迎来到中国正版软件门户

您的位置: 首页 > 文章列表 > 系统应用 > Linux怎么查看具体的网卡最大传输单元MTU

Linux怎么查看具体的网卡最大传输单元MTU

  发布于2026-08-21 阅读(0)

扫一扫,手机访问

最靠谱的办法是用ip link show,因为MTU属于链路层参数,而ifconfig已经被弃用,ip addr show可能会省略mtu字段。查看单个接口就用ip link show dev eth0 | grep mtu,查看所有接口则用ip link show | grep -E '^[0-9]+:|mtu',要注意lo的65536是个特例,不能参考物理网卡哦。

Linux怎么查看具体的网卡最大传输单元MTU

最可靠的方式是用 ip link show,不是 ifconfig,也不是 ip addr show —— 后两者要么已弃用,要么可能不显示 MTU。

为什么 ip link show 是唯一稳的查法

由于MTU属于链路层(Layer 2)参数,所以由ip link专门负责管理这一层;而ip addr主要用于输出IP层(Layer 3)的配置信息,在某些精简环境或容器中,可能会直接省略mtu字段。在大多数现代发行版(如Ubuntu 22.04+、RHEL 8+、统信UOS、麒麟KOS等)中,ifconfig已被标记为废弃,甚至在部分内核编译时就不再包含它了。

  • 查单个网卡(比如 eth0):ip link show dev eth0 | grep mtu
  • 查所有网卡并快速定位:ip link show | grep -E '^[0-9]+:|mtu'(第一行是接口名,下一行含 mtu 的就是它的值)
  • 注意回环口 lomtu 65536 是特例,不能代表物理网卡能力

ip addr show 有时没显示 mtu 怎么办

这不是 bug,是设计行为:ip addr 默认只输出与地址相关的字段,MTU 不在必显列表里。有些系统(如某些 Alpine 容器、cloud-init 初始化的云主机)会彻底省略它。

  • 别靠肉眼扫 ip addr show 输出找 mtu,容易漏看或误判
  • 如果非要用 ip addr,加 -d(debug 模式): ip -d addr show dev eth0,这时通常会强制打出 mtu
  • 但依然推荐回归 ip link show —— 它不依赖调试开关,输出稳定

看到 state DOWN 的接口,mtu 值还有效吗

有效,但不可用。MTU 是接口的静态属性,只要设备存在,这个值就一直存着;但它只在 state UP 时参与实际收发逻辑。

  • ip link show dev eth0 输出里若含 state DOWN,说明该接口当前不转发任何包,改 MTU 或 ping 测试都无意义
  • 想验证 MTU 修改是否生效,必须先确保状态是 UPsudo ip link set dev eth0 up
  • 某些虚拟化平台(如 QEMU/KVM)在接口 down 状态下允许设 MTU,但重启后可能重置 —— 所以别跳过状态检查

真正容易被忽略的是:你看到的 MTU 值只是本地设置,不代表整条网络路径能撑住这个大小。路径 MTU(PMTUD)得用 ping -M do -s 实测,否则调再大也白搭。

本文转载于:https://www.php.cn/faq/3024205.html 如有侵犯,请联系zhengruancom@outlook.com删除。
免责声明:正软商城发布此文仅为传递信息,不代表正软商城认同其观点或证实其描述。

热门关注