最靠谱的办法是用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已被标记为废弃,甚至在部分内核编译时就不再包含它了。

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

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

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

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

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

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