我使用的是 RHEL 7,需要将桥接接口的 MTU 增加到 3000。桥接接口 (br0) 仅使用一个物理网卡 (em2)。在 em2 的网络脚本中我有以下几行:
MTU=3000
BRIDGE=br0
在 br0 的网络脚本中我有以下行:
MTU=3000
桥接接口正在运行(可以通过 em2 NIC 进行通信),但 em2 和 br0 的 MTU 仍保持在 1500。
我可以使用 临时设置 em2 的 MTU ifconfig em2 mtu 3000
,但尝试使用 br0 这样做会失败:
SIOCSIFMT: Invalid argument
经过一番搜索后发现,这是当硬件不支持给定的 MTU 时通常会发生的错误。我ifconfig br0 down;ifconfig br0 up
在设置 MTU 之前尝试过,但没有成功,考虑到ifconfig br0 down; ifconfig br0
MTU 仍然为 1500,这并不奇怪。
我猜测在启动时 br0 设置了它的最高可用 MTU,因为启动时 em2 的 MTU 是 1500 br0 不能超过这个值。如果我可以在启动时将 em2 的 MTU 提高到 3000,我也许也可以提高 br0,但是网络脚本中的设置似乎没有效果。
有人有在 RHEL 7 中设置接口 MTU 的经验吗?我的研究表明它应该与以前的版本相同,并且我已经在早期版本的 RHEL 中使用此方法成功设置了 MTU,只是没有使用网桥。
编辑:我还应该提到这些接口是静态的,而不是 DHCP,因此它们不会从 DHCP 服务器获取 MTU。