在 Exchange Server 中设置 TCP KeepAliveTime

Jacki

在 Exchange Server 中配置 TCP KeepAliveTime 非常重要。默认情况下,未设置它,您必须通过在 Windows 注册表中创建 DWORD(32 位)值来自行设置。在本文中,您将了解如何在 Exchange Server 中设置 TCP KeepAliveTime。

Microsoft 建议设置TCP 保持连接时间Exchange Server 上的注册表项的十进制值之间9000001800000(15 到 30 分钟,以毫秒为单位)。如果注册表中没有 KeepAliveTime 条目,则默认值为 2 小时。

如果设置不正确,该值可能会影响连接性和性能。您必须确保负载平衡器以及从客户端到 Exchange 的路径中的任何其他设备均已正确配置。

了解更多:无法在 Exchange Server 中添加 DAG 成员服务器

目标是将 Exchange 设置为最低值,以便客户端会话在结束时由 Exchange 而不是由设备结束。

检查 TCP KeepAliveTime 设置

检查 TCP KeepAliveTime 设置的一个极好方法是使用 Exchange 运行状况检查器 PowerShell 脚本创建 Exchange Server 运行状况报告。

这就是Exchange 服务器健康报告看起来像我们的例子。

未设置错误:如果没有此值,KeepAliveTime 默认为两小时,这可能会导致网络设备(例如防火墙和负载均衡器)之间的连接和性能问题,具体取决于其配置。更多详细信息:https://aka.ms/HC-TcpIpSettingsCheck

如何在 Exchange Server 中设置 TCP KeepAliveTime

按照以下方法之一在 Exchange Server 中设置 TCP KeepAliveTime。

方法 1:注册表编辑器 (GUI)

  1. 打开注册表编辑器在 Exchange 服务器上。
  2. 导航至以下内容注册表项:
HKEY_LOCAL_MACHINESystemCurrentControlSetServicesTcpIpParameters
  1. 右键单击参数键, 选择新的,然后选择DWORD(32 位)值
  1. 类型保持活动时间作为新值的名称,然后按进入
  2. 双击新建保持活动时间值,选择十进制作为基础,输入1800000作为值数据,然后单击好的

笔记:数值数据1800000指定 TCP 在空闲连接上发送保活数据包之前等待的时间(以毫秒为单位)。在此示例中,保活数据包将每隔30分钟

  1. 关闭注册表编辑器
  2. 重新启动交换服务器

笔记:对注册表的更改需要重新启动计算机才能生效。

方法2:PowerShell

  1. 开始Windows PowerShell作为管理员
  2. 运行下面的命令命令
New-ItemProperty -Path "HKLM:SystemCurrentControlSetServicesTcpIpParameters" -Name "KeepAliveTime" -PropertyType DWORD -Value 1800000 -Force
  1. 重新启动交换服务器

笔记:对注册表的更改需要重新启动计算机才能生效。

验证 TCP KeepAliveTime 设置

运行 Exchange 运行状况检查器脚本并检查 TCP KeepAlive 设置Exchange 服务器健康报告

一切看起来都很棒!

结论

您学习了如何在 Exchange Server 中设置 TCP KeepAliveTime。必须使用正确的值设置 TCP KeepAlive DWORD 注册表,以防止出现连接和性能问题。

您喜欢这篇文章吗?您可能还喜欢在 Exchange Server 上配置 HSTS。不要忘记关注我们并分享这篇文章。