windows server 2025 pppoe mtu無法改1492

Peter Chan 0 信譽點數
2026-10-01T19:40:31.66+00:00

螢幕擷取畫面 2026-09-20 215909

Windows for business | Windows Server | 網路功能 | 其他
0 則留言 沒有留言

3 個回答

排序依據: 最新
  1. Steven Nguyen (WICLOUD CORPORATION) 415 信譽點數 Microsoft 外部員工 仲裁者
    2026-10-30T08:01:21.1+00:00

    您好,Peter:

    感謝您協助測試並提供螢幕擷取畫面。

    原因 Windows 內建的 PPPoE 連線(寬頻連線)以 MTU 1480 運作,無法設定為更高的值。因此,使用 netsh 設定 1492 時會出現「參數錯誤」,修改登錄也沒有效果。從您的截圖也可以看到,netsh 可以正常修改實體 WAN 網路卡的 MTU,只有 PPPoE 連線會拒絕這個值。

    解決方式 若要以 MTU 1492 執行 PPPoE,請改由 ISP 的數據機/路由器負責 PPPoE 撥號,Windows 的 WAN 網路卡則改用一般乙太網路連線(MTU 1500)。請依照以下步驟操作:

    步驟 1:清理 Windows 端設定(以系統管理員身分執行命令提示字元)

    • rasdial "寬頻連線" /disconnect
    reg delete "HKLM\SYSTEM\CurrentControlSet\Services\NdisWan\Parameters\Protocols\0" /v ProtocolMTU /f
    netsh interface ipv4 set subinterface "WAN" mtu=1500 store=persistent
    

    接著,請將「寬頻連線」從所有自動撥號或開機啟動的設定中移除,讓 Windows 不再撥接 PPPoE。

    步驟 2:在 ISP 數據機/路由器上設定 PPPoE 登入數據機/路由器的管理頁面,將模式從「橋接模式(Bridge)」切換為「路由模式(PPPoE)」,並輸入 ISP 提供的 PPPoE 帳號與密碼。將 MTU 設為 1492,儲存後重新啟動設備。

    步驟 3:將 Windows WAN 網路卡指向數據機/路由器

    netsh interface ipv4 set address name="WAN" source=dhcp
    netsh interface ipv4 set dnsservers name="WAN" source=dhcp
    

    如果這台伺服器是透過「路由及遠端存取」(NAT)將網際網路分享給區域網路,請開啟「路由及遠端存取」主控台,在 IPv4 > NAT 中移除「寬頻連線」,改為新增 WAN 作為連線到網際網路的公用介面,並勾選「在此介面上啟用 NAT」。

    步驟 4:驗證

    netsh interface ipv4 show subinterfaces
    ping -f -l 1464 8.8.8.8
    
    • WAN 的 MTU 應顯示為 1500。
    • 1464 位元組的 ping 應該成功(1464 + 28 位元組標頭 = 1492),代表目前的網際網路路徑已以 MTU 1492 運作。

    完成後,您的連線即會以所需的 MTU 1492 運作,Windows 伺服器也不再需要任何 MTU 的變通設定。

    如果以上內容有助於解決您的問題,請點選「接受解答」,讓其他遇到相同問題的使用者也能輕鬆找到解決方案!

    此回答有幫助嗎?

    0 則留言 沒有留言

  2. Peter Chan 0 信譽點數
    2026-10-02T02:58:01.4966667+00:00

    無效

    螢幕擷取畫面 2026-10-02 094729

    螢幕擷取畫面 2026-10-02 105348

    此回答有幫助嗎?

    0 則留言 沒有留言

  3. Steven Nguyen (WICLOUD CORPORATION) 415 信譽點數 Microsoft 外部員工 仲裁者
    2026-10-02T01:27:47.5766667+00:00

    您好,陈彼得

    我已经查看了您提供的截图,并分析了您在使用 netsh 命令尝试将 PPPoE 界面 (“宽带连接”) 的 MTU 大小设置为 1492 时遇到的「参数错误 (The parameter is incorrect)」问题。

    根本原因分析:

    这是 Windows TCP/IP 和 RAS (远程访问服务) 架构中的__默认行为 (By Design)__。 PPPoE 连接是使用 NDISWAN 驱动程序 (ndiswan.sys) 动态建立的虚拟接口。 与可以透过 netsh 静态指派 MTU 的实体网卡不同,PPPoE 介面的 MTU 是在 PPP LCP (链路控制协议) 阶段与您的 ISP 动态协商决定的。 为了防止设定冲突,Windows TCP/IP 堆栈会保护动态 RAS 介面,使其无法透过命令列工具强制覆写。

    解决方案:

    如果您必须强制将 MTU 设定为 1492,我们可以透过直接在注册表 (Registry) 中设定 NDISWAN 协议参数来绕过命令列限制。 请在继续操作前备份您的注册表。

    以系统管理员身份开启 注册编辑程序 (regedit.exe)。

    导览至:HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\NdisWan\Parameters\Protocols\0

    _(注意:0 子机码代表 NDISWAN 的 IPv4 协议设定)。 _

    在右侧窗格按一下鼠标右键,选择 [新增] > [DWORD (32-位元) 值]。

    将新值准确命名为:ProtocolMTU

    连按两下 ProtocolMTU,将底数选择为 [十进位],然后在数值资料栏位中输入 1492。

    按一下 [确定]。

    __中断并重新拨号__您的 PPPoE 连接 (或重新启动服务器),以强制 ndiswan.sys 驱动程序载入新设定。

    执行 netsh interface ipv4 show subinterfaces 来验证 MTU 更新。

    如果这有助于解决您的问题,请考虑点击「接受答案」,让其他遇到相同问题的使用者也能轻松找到解决方案!

    此回答有幫助嗎?


您的回答

答案可由問題作者標示為「已接受」,而由仲裁者標示為「推薦」,這可協助使用者知道答案解決了作者的問題。