校园春色亚洲色图_亚洲视频分类_中文字幕精品一区二区精品_麻豆一区区三区四区产品精品蜜桃

主頁 > 知識庫 > Linux系統下修改最大傳輸單元MTU的方法

Linux系統下修改最大傳輸單元MTU的方法

熱門標簽:杭州電銷機器人有效果嗎 萊蕪移動外呼系統 小語股票電銷機器人 高德地圖標注在電腦上 襄陽地圖標注店 金華呼叫中心外呼系統廠家 軟件電話機器人 柯城手機地圖如何做地圖標注 申請400電話流程好嗎

最大傳輸單元(Maximum Transmission Unit,MTU)是指一種通信協議的某一層上面所能通過的最大數據報大小(以字節為單位)。最大傳輸單元這個參數通常與通信接口有關(網絡接口卡、串口等)。
因特網協議允許IP分片,這樣就可以將數據報分成足夠小的片段以通過那些最大傳輸單元小于該數據報原始大小的鏈路了。這一分片過程發生在IP層(OSI模型的第三層,即網絡層),它使用的是將分組發送到鏈路上的網絡接口的最大傳輸單元的值。原始分組的分片都被加上了標記,這樣目的主機的IP層就能將分組重組成原始的數據報了。
在因特網協議中,一條因特網傳輸路徑的“路徑最大傳輸單元”被定義為從源地址到目的地址所經過“路徑”上的所有IP跳的最大傳輸單元的最小值。或者從另外一個角度來看,就是無需進一步分片就能穿過這條“路徑”的最大傳輸單元的最大值。
RFC 1191描述了“路徑最大傳輸單元發現方法”,這是一種確定兩個IP主機之間路徑最大傳輸單元的技術,其目的是為了避免IP分片。在這項技術中,源地址將數據報的DF(Don't Fragment,不要分片)位置位,再逐漸增大發送的數據報的大小——路徑上任何需要將分組進行分片的設備都會將這種數據報丟棄并返回一個“數據報過大”的ICMP響應到源地址——這樣,源主機就“學習”到了不用進行分片就能通過這條路徑的最大的最大傳輸單元了。
不幸的是,越來越多的網絡封殺了ICMP的傳輸(譬如說為了防范DOS攻擊)——這使得路徑最大傳輸單元發現方法不能正常工作,其常見表現就是一個連接在低數據流量的情況下可以正常工作,但一旦有大量數據同時發送,就會立即掛起(例如在使用IRC的時候,客戶會發現在發送了一個禁止IP欺騙的ping之后就得不到任何響應了,這是因為該連接被大量的歡迎消息堵塞了)。而且,在一個使用因特網協議的網絡中,從源地址到目的地址的“路徑”常常會為了響應各種各樣的事件(負載均衡、擁塞、斷電等等)而被動態地修改——這可能導致路徑最大傳輸單元在傳輸過程中發生改變——有時甚至是反復的改變。其結果是,在主機尋找新的可以安全工作的最大傳輸單元的同時,更多的分組被丟失掉了。
對于時下大多數使用以太網的局域網來說,最大傳輸單元的值是1500字節。但是像PPPoE這樣的系統會減小這個數值,這就使得在使用最大傳輸單元發現方法時可能會產生這樣的結果:一些處于配置不當的防火墻之后的站點變得不可達了。對于這種情況,還是可能找到變通的方法的,但這取決于你控制的是網絡的哪一部分。這些方法包括改變用來在防火墻一端建立TCP連接的第一個分組的MSS(Maximum Segment Size,最大分段大小)。
對于一些支持老版本以太網協議的IBM系統(例如XSeries),可能只有在把最大傳輸單元設為1492之后才能在當下常見的局域網上進行運作。

MTU的修改方法如下:

1、ifconfig命令修改

[/code]
ifconfig ${Interface} mtu ${SIZE} up
ifconfig eth1 mtu 9000 up

[/code]

這個是最通用的方法,對所有的linux 發行版本都有效。缺點就是重啟后失效,需要在開機項中加載。

2、修改配置文件

CentOS / RHEL / Fedora Linux下

復制代碼
代碼如下:

# vi /etc/sysconfig/network-scripts/ifcfg-eth0
#增加如下內容
MTU="9000"
#保存后重啟網卡生效
# service network restart
#啟用IPv6地址的,修改IPv6 mtu的參數為
IPV6_MTU="1280"

Debian / Ubuntu Linux下

復制代碼
代碼如下:

# vi /etc/network/interfaces
#增加如下值
mtu 9000
#保存后,重啟網絡生效
# /etc/init.d/networking restart

3、為什么MTU最大值為9000字節

從理論上計算,4 bytes的CRC最大支持12000 bytes大小的字節,超過了就沒有辦法檢查了。另外還有其他一些協議如NFS等的限制。

最后需要注意的是,在經過交換網絡設備時,僅僅修改主機端的MTU值是不行的,還需要交換網絡設備上開啟jumbo frames功能。

4、MTU測試

使用ping命令,-l 指定包大小,-f 選項為通知操作系統不能私自更改該數據包大小

使用英文操作系統時的提示為:Packet needs to be fragmented but DF set

標簽:欽州 黔南 鶴壁 天門 河南 海北 威海 景德鎮

巨人網絡通訊聲明:本文標題《Linux系統下修改最大傳輸單元MTU的方法》,本文關鍵詞  Linux,系統,下,修改,最大,;如發現本文內容存在版權問題,煩請提供相關信息告之我們,我們將及時溝通與處理。本站內容系統采集于網絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《Linux系統下修改最大傳輸單元MTU的方法》相關的同類信息!
  • 本頁收集關于Linux系統下修改最大傳輸單元MTU的方法的相關信息資訊供網民參考!
  • 推薦文章
    主站蜘蛛池模板: 环江| 澄城县| 南涧| 秀山| 静宁县| 平遥县| 缙云县| 赣榆县| 章丘市| 衡东县| 台东市| 德州市| 莱芜市| 福鼎市| 保康县| 锡林郭勒盟| 涿鹿县| 巧家县| 政和县| 铁岭市| 准格尔旗| 会宁县| 平果县| 元阳县| 丹阳市| 诸城市| 桐城市| 博乐市| 九寨沟县| 灵武市| 阿图什市| 抚顺县| 北票市| 申扎县| 五台县| 六枝特区| 普兰店市| 夹江县| 家居| 万宁市| 临江市|