我们有一些 Red Hat 服务器、mabri 集群的集群服务器。
几个问题:
哪个 Linux 命令打印当前的 MTU 值?我们还没有在ifcfg文件中配置MTU)
默认 MTU 值是多少(假设我们从 ISO 映像安装了 Red Hat 机器)
在什么情况下我们需要使用高MTU值?最大值是多少?
MTU的计算公式是什么?
答案1
在我看来,问题不应该是“如何知道……如果”;更适合询问“我应该何时设置巨型帧”。
根据您有关 MTU/巨型帧的问题:
要查看您的 MTU,请执行以下
ifconfig
操作之一ip
:$ ifconfig eth0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500 inet 192.168.1.249 网络掩码 255.255.255.0 广播 192.168.1.255 ether 00:0c:29:40:68:ee txqueuelen 1000 (以太网) RX 数据包 5第0182章字节 22054712 (21.0 MiB) RX 错误 0 丢弃 3 溢出 0 帧 0 TX 数据包 6674 字节 838613 (818.9 KiB) TX 错误 0 丢弃 0 溢出 0 载波 0 冲突 0
或者与ip
:
$ ip addr show eth0
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000
link/ether 00:0c:29:40:68:ee brd ff:ff:ff:ff:ff:ff
inet 192.168.1.249/24 brd 192.168.1.255 scope global eth0
valid_lft forever preferred_lft forever
或者更简单地说:
$ ip link show eth0 | grep mtu
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP mode DEFAULT group default qlen 1000
- 通常在 IPv4 中,默认 MTU 为 1500(字节)。
3和4)
通常默认的 MTU 就可以了。很少你需要将其更改为更低的值,暂时地,在处理通信问题时,当防火墙阻止不允许协商 MTU 的 ICMP 数据包时。
您可能希望更改 MTU 的另一种情况是定义 JUMBO 帧。
然而,您并不总是受益于使用 JUMBO 帧,只有在特定情况下,例如文件服务器或数据库服务器的专用 VLAN,和最重要的是,在具有 JUMBO 帧的 VLAN 中,所有计算机都必须配置为 JUMBO 帧;交换机还必须支持 JUMBO 帧。
您肯定不想将 JUMBO 帧用于面向 Internet 的系统,例如 Web 服务器或 DNS 服务器。
要在运行时设置 JUMBO 帧的接口:
ip link set eth0 mtu 9000
或者在/etc/network/interfaces
(Debian 中)使其永久化:
auto eth0
iface eth0 inet static
address 192.168.1.100
netmask 255.255.255.0
network 192.168.1.0
broadcast 192.168.1.255
gateway 192.168.1.1
mtu 9000
对于基于 RH 的系统:
做vi /etc/sysconfig/network-scripts/ifcfg-eth0
并添加:
MTU="9000"