Linux 設置網卡最大傳輸單位MTU


1. 設置原因

  提高網絡的吞吐率和效率(小的數據報文封裝二層信息時,效率不高),同時減少設備CPU的負擔(對於小的報文,CPU花費大量的時間來分片和重組報文)

2. 配置

[root@benjr ]# ifconfig eth2 mtu 9000 #配置
[root@benjr ]# ifconfig eth2          #查看
eth2      Link encap:Ethernet HWaddr 00:1A:64:22:04:83
inet addr:192.8.1.55 Bcast:192.8.1.255 Mask:255.255.255.0
inet6 addr: fe80::21a:64ff:fe22:483/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:9000 Metric:1
RX packets:1440102 errors:0 dropped:0 overruns:0 frame:0
TX packets:269896 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:188856502 (180.1 MiB) TX bytes:18973940 (18.0 MiB)
Interrupt:177

   #ifconfig 是暫時生效的如果要讓 MTU 在開機時就設定好還是需要修改設定檔 。

  CentOS / RHEL / Fedora下的Linux系統,修改 /etc/sysconfig/network-scripts/ifcfg-ethx 保存后重啟網卡生效.

[root@benjr ]# vi /etc/sysconfig/network-scripts/ifcfg-eth2
# Please read /usr/share/doc/initscripts-*/sysconfig.txt # for the documentation of these parameters.
TYPE=Ethernet
DEVICE=eth2
BOOTPROTO=dhcp
ONBOOT=yes
USERCTL=no
IPV6INIT=no
PEERDNS=yes
MTU=9000

   Debian / Ubuntu 下的 Linux 系統,修改 /etc/network/interfaces 增加值: mtu 9000 ,保存后,重啟網絡生效,注意這里針對的是手動添加IP的情況,如果你是自動獲取IP,修改 /etc/dhpc3/dhclient.conf 文件,找到 interface-mtu 並刪除。

3. 其他

  還有一個比較通用的方法,使用指令 echo "1460" > /sys/class/net/eth0/mtu 設置 mtu ,注意這里需要使用 su 權限;還可以用 cat /sys/class/net/eth0/mtu 指令查看;如果修改的時候出現提示驅動忙的情況這時候你可以先用指令 sudo ifconfig eth0 down 把網卡禁止掉,再修改,修改好后使用指令  sudo ifconfig eth0 up 重新啟用網卡。

   /sys/class/net/eth0/ 文件夾里主要是一些網卡的配置,例如其中的 address 就是MAC地址文件,修改這個就可以修改MAC地址了。

 

參考:https://blog.csdn.net/weixin_30421525/article/details/95395857

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM