为 MTU 大小低于 576 的 WAN 链接推荐的 TCP/IP 设置

文章翻译 文章翻译
文章编号: 900926 - 查看本文应用于的产品
展开全部 | 关闭全部

本文内容

概要

MS05-019 安全更新修改了操作系统验证 Internet 控制消息协议 (ICMP) 请求的方式。该安全更新可防止基于 ICMP 的攻击。但是,在特定情况下,该安全更新可能会导致计算机丢失网络连接。本文介绍的三种方法可以帮助防止计算机在安装 MS05-019 安全更新后丢失网络连接。

简介

本文介绍为最大传输单位 (MTU) 大小低于 576 的 WAN 链接推荐的 TCP/IP 设置。

更多信息

重要说明:此部分、方法或任务包含有关如何修改注册表的步骤。但是,注册表修改不当可能会出现严重问题。因此,请一定严格按照下列步骤操作。为了获得进一步保护,请在修改注册表之前对其进行备份。这样就可以在出现问题时还原注册表。有关如何备份和还原注册表的更多信息,请单击下面的文章编号,以查看 Microsoft 知识库中相应的文章:
322756 如何在 Windows XP 和 Windows Server 2003 中备份、编辑和还原注册表


MS05-019 安全更新修改了操作系统验证 Internet 控制消息协议 (ICMP) 请求的方式。该安全更新会将最小 MTU 大小限制为 576 个字节。限制 MTU 大小是为了防止基于 ICMP 的攻击。基于 ICMP 的攻击可将 MTU 大小降到非常低的值。非常低的 MTU 大小可导致服务器性能降低。

但是,将 MTU 大小限制为 576 个字节可能会影响某些 WAN 情形,如卫星链接。在这些 WAN 情形中,MTU 大小可能小于 576。此时,可能会丢失网络连接。 可以使用网络监视器这样的工具通过分析网络跟踪,来检测是否正遇到这样的情形。如果丢失网络连接的目标包含任何“无法达到 ICMP 目标”消息,且下一跃点 MTU 值小于 576,则表明可能遇到了此类情形。

在这些特殊情形中,请考虑使用下列建议之一。

注意:如果未遇到这些情形之一,请不要采用以下建议。以下建议可能会降低网络吞吐量。

方法 1:启用路径最大传送单元 (PMTU) 黑洞检测

如果启用了路径最大传送单元 (PMTU) 黑洞检测功能,TCP 将尝试发送未设置 Don't Fragment 位的片段。如果一个片段几次重新发送都没有得到确认,则 TCP 将尝试发送这些片段。如果片段得到确认,则最大片段大小 (MSS) 将减小,并且在连接上将在今后的数据包中设置 Don't Fragment 位。

请优先考虑此方法,因为数据包大小仅针对有问题的片段而减小。黑洞检测会增加特定片段的最大重新发送次数。

要启用 PMTU 黑洞检测,请按照下列步骤操作:
  1. 单击“开始”,单击“运行”,键入 regedit,然后单击“确定”。
  2. 在注册表中找到下面的项:
    HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters
  3. 在“编辑”菜单上,指向“新建”,然后单击“DWORD 值”。
  4. 键入 EnablePMTUBHDetect,然后按 Enter。
  5. 在“编辑”菜单上,单击“修改”。
  6. 在“数值数据”框中,键入 1,然后单击“确定”。
  7. 退出注册表编辑器,然后重新启动计算机。

方法 2:禁用 PMTU 发现

如果禁用了 PMTU 发现,则 TCP 将仅发送 MTU 大小为 576 且未设置 Don't Fragment 位的数据包。这样路由器就能够将数据包分段并跨网络发送数据包。

此方法影响发送到所有目标的数据包。通常,在数据包大小为 576 时,性能处于一个可接受的级别,但是,如果启用了 PMTU 发现且路径支持的 MTU 大小大于 576,则性能将会更低。

要禁用 PMTU 发现,请按照下列步骤操作:
  1. 单击“开始”,单击“运行”,键入 regedit,然后单击“确定”。
  2. 在注册表中找到下面的项:
    HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters
  3. 在“编辑”菜单上,指向“新建”,然后单击“DWORD 值”。
  4. 键入 EnablePMTUDiscovery,然后按 Enter。
  5. 在“编辑”菜单上,单击“修改”。
  6. 在“数值数据”框中,键入 0,然后单击“确定”。
  7. 退出注册表编辑器,然后重新启动计算机。

方法 3:手动为网络接口设置 MTU 大小

如果手动为某个网络接口设置 MTU 大小,则该设置会覆盖此网络接口的默认 MTU。MTU 大小是可以在底层网络上传输的最大数据包大小(以字节为单位)。

此方法影响发送到所有目标的数据包,并且可能会对性能造成显著影响,这取决于设置的 MTU 大小。

要为网络接口设置 MTU 大小,请按照下列步骤操作:
  1. 单击“开始”,单击“运行”,键入 regedit,然后单击“确定”。
  2. 在注册表中找到下面的项:
    HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters\Interfaces\<ID for network interface>
  3. 在“编辑”菜单上,指向“新建”,然后单击“DWORD 值”。
  4. 键入 MTU,然后按 Enter。
  5. 在“编辑”菜单上,单击“修改”。
  6. 在“数值数据”框中,键入 MTU 大小的值,然后单击“确定”。
  7. 退出注册表编辑器,然后重新启动计算机。

参考

有关更多信息,请单击下面的文章编号,以查看 Microsoft 知识库中相应的文章:
898060 安装安全更新 MS05-019 或 Windows Server 2003 Service Pack 1 可能导致客户端和服务器之间的网络连接失败

有关 TCP/IP 的更多信息,请访问下面的 Microsoft TechNet 网站:
Overview of networking and TCP/IP
http://technet.microsoft.com/zh-cn/library/cc739443(en-us).aspx

属性

文章编号: 900926 - 最后修改: 2008年8月15日 - 修订: 4.0
这篇文章中的信息适用于:
  • Microsoft Windows Server 2003, Datacenter Edition for Itanium-Based Systems
  • Microsoft Windows Server 2003, Enterprise Edition for Itanium-based Systems
  • Microsoft Windows Server 2003 Datacenter Edition
  • Microsoft Windows Server 2003 Enterprise Edition
  • Microsoft Windows Server 2003 Standard Edition
  • Microsoft Windows Server 2003, Datacenter x64 Edition
  • Microsoft Windows Server 2003, Enterprise x64 Edition
  • Microsoft Windows Server 2003, Standard x64 Edition
  • Microsoft Windows XP Professional 64-Bit Edition (Itanium) 2003
  • Microsoft Windows XP Professional 64-Bit Edition (Itanium)
  • Microsoft Windows XP Professional Edition
  • Microsoft Windows XP Home Edition
  • Microsoft Windows XP Tablet PC Edition
  • Microsoft Windows XP Media Center Edition
  • Microsoft Windows 2000 Datacenter Server
  • Microsoft Windows 2000 Advanced Server
  • Microsoft Windows 2000 Server
  • Microsoft Windows 2000 Professional Edition
关键字:?
kbtshoot kbprb kbsecurity kbbug kbpubtypekc KB900926
Microsoft和/或其各供应商对于为任何目的而在本服务器上发布的文件及有关图形所含信息的适用性,不作任何声明。 所有该等文件及有关图形均"依样"提供,而不带任何性质的保证。Microsoft和/或其各供应商特此声明,对所有与该等信息有关的保证和条件不负任何责任,该等保证和条件包括关于适销性、符合特定用途、所有权和非侵权的所有默示保证和条件。在任何情况下,在由于使用或运行本服务器上的信息所引起的或与该等使用或运行有关的诉讼中,Microsoft和/或其各供应商就因丧失使用、数据或利润所导致的任何特别的、间接的、衍生性的损害或任何因使用而丧失所导致的之损害、数据或利润不负任何责任。

提供反馈

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com