摘要
MS05-019 安全更新修改操作系统验证 Internet 控制消息协议 (ICMP) 请求的方式。 此安全更新可防止基于 ICMP 的攻击。 但是,在特殊情况下,此安全更新可能会导致计算机失去网络连接。 本文介绍安装 MS05-019 安全更新时,可用于帮助防止计算机失去网络连接的三种方法。
简介
本文介绍广域网 (WAN) 链路的建议 TCP/IP 设置,最大传输单元 (MTU) 大小小于 576。
详细信息
重要:本节、方法或任务包含如何修改注册表的步骤。 但如果注册表修改不当,可能造成严重问题。 因此,请务必仔细遵循以下步骤。 为增强保护,请在修改前备份注册表。 如果出现问题,可以还原注册表。 有关如何备份和还原注册表的更多信息,请单击下面的文章编号查看 Microsoft 知识库中相应的文章:
322756 如何在 Windows 中备份和还原注册表
MS05-019 安全更新修改操作系统验证 Internet 控制消息协议 (ICMP) 请求的方式。 此安全更新将最小 MTU 大小限制为 576 字节。 MTU 大小受到限制,以防止基于 ICMP 的攻击。 基于 ICMP 的攻击可能会将 MTU 大小减小到非常低的值。 非常低的 MTU 大小可能会导致性能严重下降。
但是,限制为 576 字节的 MTU 大小可能会影响某些 WAN 方案,例如附属链路。 在这些 WAN 方案中,MTU 大小可能小于 576。 在这些 WAN 方案中,网络连接可能会丢失。 可以使用网络监视器等工具通过分析网络跟踪来检测是否遇到此类情况。 如果网络连接丢失的目标有任何 ICMP 目标无法访问的消息,且下一跃点 MTU 值小于 576,则遇到此类情况。
在这些特殊情况下,请考虑使用以下建议之一。
注意 如果您未遇到以下方案之一,则不应使用以下建议。 以下建议可能会降低网络吞吐量。
方法 1:启用路径最大传输单位 (PMTU) 黑洞检测
如果启用路径最大传输单位 (PMTU) 黑洞检测功能,TCP 将尝试发送未设置“请勿片段”位的段。 如果某个段的多个重新传输未确认,TCP 将尝试发送这些段。 如果已确认段,则会减少 MSS) (最大段大小,并在连接上将来的数据包中设置“请勿分段”位。
此方法是首选方法,因为只有有问题的段的数据包大小会降低。 黑洞检测会增加特定段的最大重新传输次数。
若要启用 PMTU 黑洞检测,请执行以下步骤:
单击“开始”,单击“运行”,键入 regedit,然后单击“确定”。
在注册表中找到以下项:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters
在“编辑”菜单上,指向“新建”,然后单击“DWORD 值”。
键入 EnablePMTUBHDetect,然后按 Enter。
在“编辑”菜单上,单击“修改”。
在“数值数据”框中,键入 1,然后单击“确定”。
退出注册表编辑器,然后重新启动计算机。
方法 2:禁用 PMTU 发现
如果禁用 PMTU 发现,TCP 将仅发送 MTU 大小为 576 且未设置“请勿片段”的数据包。 这使路由器能够对数据包进行碎片化,并跨网络发送数据包。
此方法会影响发送到所有目标的数据包。 大多数情况下,数据包大小为 576 时,性能将处于可接受的水平。 但是,如果启用了 PMTU 发现,并且路径支持大于 576 的 MTU 大小,则性能将低于 。
若要禁用 PMTU 发现,请执行以下步骤:
单击“开始”,单击“运行”,键入 regedit,然后单击“确定”。
在注册表中找到以下项:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters
在“编辑”菜单上,指向“新建”,然后单击“DWORD 值”。
键入 EnablePMTUDiscovery,然后按 Enter。
在“编辑”菜单上,单击“修改”。
在 “值数据 ”框中,键入 0,然后单击“ 确定”。
退出注册表编辑器,然后重新启动计算机。
方法 3:手动设置网络接口的 MTU 大小
如果手动设置网络接口的 MTU 大小,此设置将覆盖网络接口的默认 MTU。 MTU 大小是传输将通过基础网络传输的最大数据包大小(以字节为单位)。
此方法会影响发送到所有目标的数据包,并且可能会显著影响性能,具体取决于设置的 MTU 大小。
若要设置网络接口的 MTU 大小,请执行以下步骤:
单击“开始”,单击“运行”,键入 regedit,然后单击“确定”。
在注册表中找到以下项:
网络接口的HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters\Interfaces\<ID>
在“编辑”菜单上,指向“新建”,然后单击“DWORD 值”。
键入 MTU,然后按 Enter。
在“编辑”菜单上,单击“修改”。
在“ 值数据 ”框中,键入 MTU 大小的值,然后单击“ 确定”。
退出注册表编辑器,然后重新启动计算机。
参考资料
有关更多信息,请单击下面的文章编号,以查看 Microsoft 知识库中相应的文章:
898060 客户端和服务器之间的网络连接可能会在安装安全更新 MS05-019 或 Windows Server 2003 Service Pack 1 之后失败
有关 TCP/IP 的详细信息,请访问以下Microsoft TechNet 网站:
网络和 TCP/IP 概述
http://technet.microsoft.com/en-us/library/cc739443 (WS.10) .aspx