Windows XP Windows 7 Windows 2003 Windows Vista Windows 綜合教學 Linux 系統教學
Windows 10 Windows 8 Windows 2008 Windows NT Windows Server 電腦軟體教學

追查網速緩慢元兇:MTU 值設定錯誤導致 ADSL 共享上網異常全紀錄

編輯:XP 系統基礎知識

單位網路經歷 ISDN → 512K PPPoE ADSL → 1M 固定 IP ADSL 三代升級,伺服器端頻寬測試皆達標,但 60 台 Windows 98 工作站體感網速不升反降。經排查硬體、病毒、系統重灌無效,最終鎖定罪魁禍首:**MTU (Maximum Transmission Unit) 值與接入方式不匹配**。

背景知識:MTU 與 PPPoE 的「28 位元」代價

  • 標準乙太網 MTU = 1500 Bytes。
  • PPPoE 封裝需 8 Bytes PPP 標頭 + 6 Bytes PPPoE 標頭 + 2 Bytes 協議 ID = 1492 Bytes。
  • 若主機送出 1500 Bytes 封包經 PPPoE 介面,超過 1492 限制會被分片或丟棄 (視 DF bit),導致特定網站 (MTU > 1492) 無法存取或傳輸極慢。

案例一:ISDN 改 PPPoE ADSL — 部分網站打不開

現象: 伺服器 (WinXP ICS) 可開「搜狐」、「本地網站」,工作站 (Win98) 僅能開本地站,「網易」等僅顯示標題列、內容空白。
根因: Win98 預設 MTU=1500,PPPoE 實際上限 1492,大封包在 PPP 介面被無聲丟棄。
修復 (Win98 註冊表):

  1. regedit → HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\Class\NetTrans\
  2. 展開 000x 子機碼,找 DriverDesc="TCP/IP" 且含正確 IP/閘道的項目。
  3. 新建 DWORD MaxMtu = 1450 (十進位),留 42 Bytes 緩衝 (IP 標頭 20 + TCP 標頭 20),重啟生效。

工作站即刻恢復所有網站存取。

案例二:PPPoE 改 1M 固定 IP ADSL — 網速變慢

現象: 伺服器下載 110 KB/s,工作站僅 20-30 KB/s。重灌工作站 Win98 後速度恢復 80 KB/s,證為系統設定問題。
根因: 固定 IP ADSL **無 PPPoE 封裝開銷**,MTU 上限回歸 **1500**。但工作站註冊表仍殘留 MaxMtu=1450,強制將封包切小,增加封包數與處理開銷,反而拖慢速度。
修復: 刪除註冊表 MaxMtu 鍵值 (或改回 1500),重啟。全網 60 台機器同法處理,速度全面恢復至伺服器等級。

核心結論與最佳實踐

**原則:MTU 應 ≤ 路徑最小 MTU (Path MTU)。** 現代作業系統 (WinXP SP2+, Vista, Linux 2.6+) 支援 **PMTUD (Path MTU Discovery)** 自動協商,無需手動干預。僅在舊版 OS (Win98/Me/2000) 或特殊網路設備 (舊式 Router、防火牆封鎖 ICMP Fragmentation Needed) 導致 PMTUD 失效時,才需手動調整註冊表/介面 MTU。

此案例揭示:頻寬升級不等於體驗升級,**協議層參數必須隨物理層變更而同步調整**。網管在變更接入方式時,應納入「檢查/更新客戶端 MTU 設定」至標準作業程序 (SOP),避免「修好了頻寬,壞了體驗」的低級錯誤。

Copyright © Windows教程網 All Rights Reserved
接入方式理論 MTU 上限建議主機 MTU 設定
乙太網/固定 IP/動態 IP (無 PPPoE)15001500 (預設) 或不設 (自動)
PPPoE ADSL14921450~1492 (建議 1450 留緩衝)
VPN / PPTP / L2TP1400~1460視封裝協議再減 40-80 Bytes