文章編號: 956188 - 上次校閱: 2008年7月31日 - 版次: 1.1

安裝 DNS 伺服器服務安全性更新 953230 (MS08-037) 之後,遇到 UDP 相關網路服務問題。

系統提示本文適用於您使用的作業系統之外的作業系統。與您不相關的文章內容已停用。

在此頁中

全部展開 | 全部摺疊

徵狀

安裝網域名稱系統 (DNS) 伺服器服務安全性更新 953230 (MS08-037) 並重新啟動電腦之後,您可能會遇到 UDP 相關網路服務問題。在安裝安全性更新 953230 之後,取決於 UDP 連接埠的服務可能無法在執行 Windows 2000、Windows Server 2003 和 Windows Server 2008 的電腦上啟動。如果在安裝安全性更新 953230 後將服務配置給 DNS 伺服器服務,就會發生此問題。

發生的原因

發生此問題的原因,是因為服務無法取得正常運作所需的連接埠。發生此問題是因為在安裝安全性更新 953230 之後,在 DNS 服務中變更了連接埠配置。

根據預設,在安裝安全性更新 953230 之後,DNS 伺服器服務會在暫時的連接埠範圍中隨機配置 2,500 個連接埠。這是此更新導入的新行為。如果任一個隨機配置的連接埠已由衝突的服務所使用,可能就會發生衝突。

在提供其他角色 (包含 DNS 功能) 的多重角色伺服器中,更有可能會發生服務衝突。因為這些連接埠是隨機配置的,這些失敗可能會斷斷續續發生。

例如,Windows IPsec Services 服務中可能會發生此衝突。IPsec Services 服務使用 UDP 連接埠 4500。在也提供 IPsec 服務的 DNS 伺服器中,連接埠衝突可能會導致 IPsec 服務無法啟動。

其他可行方案

如果要解決這個問題,請從暫時的連接埠範圍中保留 UDP 連接埠,以確保取決於該連接埠的服務可以啟動。 如需有關如何保留暫時連接埠的詳細資訊,請按一下下面的文章編號,以檢視「Microsoft 知識庫」中的文章:
812873 ? (http://support.microsoft.com/kb/812873/ ) HOW TO 保留一個範圍的暫時連接埠, 在執行 Windows Server 2003 或 Windows 2000 Server 電腦上 (英文)
如需有關可能導致衝突的 UDP 網路連接埠的詳細資訊,請按一下下面的文件編號,檢視「Microsoft 知識庫」中的文件:
832017? (http://support.microsoft.com/kb/832017/ ) 與網路連接埠需求為 Windows Server 系統服務概觀 (英文)
在前述的 IPsec 服務範例中,您可以使用 ReservedPorts 登錄機碼新增連接埠 4500–4500。

其他相關資訊

詳細原因

下列是此問題更詳細的原因說明。

隨機 DNS 來源連接埠和 SocketPool 實作

在隨機化查詢時,實作 DNS 伺服器安全性更新會保留一組連接埠。此設計決策的目的是為了解決相較於 Windows 用戶端而言,處理和產生更大量查詢的 DNS 伺服器的效能問題。DNS 伺服器保留的這組連接埠以下簡稱為「通訊端集區」。

Windows 伺服器上的通訊端集區預設大小為 2,500 個通訊端。在登錄的下列子機碼中修改 SocketPoolSize 登錄項目,便可設定此大小:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\DNS\Parameters\SocketPoolSize
注意 必須重新啟動 DNS 服務,對 SocketPoolSize 登錄項目所做的變更才會生效。
Windows 2000 和 Windows Server 2003
  • 暫時連接埠配置和 MaxUserPort 登錄項目
    配置為通訊端集區一部分的連接埠,是從伺服器上可用的暫時連接埠中取出的。暫時連接埠是在萬用字元繫結時由 TCP/IP 堆疊暫時配置的,其中並未指定所需的原始來源連接埠。

    在 Windows 伺服器中,MaxUserPort 登錄項目定義暫時的連接埠範圍,並定義可為暫時連接埠配置的最高連接埠號碼。MaxUserPort 登錄項目位於登錄的下列子機碼中:
    HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters\
    如需有關 MaxUserPort 登錄項目的詳細資訊,請造訪下列 Microsoft 網頁:
    http://www.microsoft.com/technet/prodtechnol/windows2000serv/reskit/regentry/58791.mspx?mfr=true (http://www.microsoft.com/technet/prodtechnol/windows2000serv/reskit/regentry/58791.mspx?mfr=true)
  • 明確設定 MaxUserPort 登錄項目的值時有效的暫時連接埠範圍
    在 Windows Server 2003 或 Windows 2000 Server,MaxUserPort 登錄項目的值會定義暫時連接埠範圍。此範圍介於 1024 到由 MaxUserPort 登錄項目定義的值之間。

    在您於 Windows Server 2003 及下層平台上安裝安全性更新 953230 之後,會出現下列狀況:
    • 若已設定 MaxUserPort 登錄項目的值,會從 [1024, MaxUserPort] 範圍隨機配置連接埠。
    • 若未設定 MaxUserPort 登錄項目的值,會從 [49152, 65535] 範圍隨機配置連接埠。
Windows Server 2008
  • 暫時連接埠配置和 MaxUserPort 登錄項目
    在 Windows Server 2008 或 Windows Vista,MaxUserPort 登錄項目的值表示暫時連接埠的數目。此範圍由 [起始連接埠, 起始範圍 + MaxUserPort] 開始。預設的起始連接埠為 49152。
  • 有效的暫時連接埠範圍
    在您於 Windows Server 2008 上安裝安全性更新 953230 之前,暫時連接埠配置的範圍是介於 [49152-65535] 連接埠範圍之間。安裝安全性更新 953230 之後,不會變更此連接埠配置行為。 如需更多關於此安全性更新及任何此軟體特定版本的已知問題資訊,請按一下下面的文件編號,檢視「Microsoft 知識庫」中的文件:
    929851? (http://support.microsoft.com/kb/929851/ ) 在 Windows Vista 和 Windows Server 2008 中 for TCP / IP 預設動態連接埠範圍已變更 (英文)

狀況說明

Microsoft 已確認本篇文章<適用於>一節所列之 Microsoft 產品確實有上述問題。

這篇文章中的資訊適用於:
  • Windows Server 2008 for Itanium-Based Systems
  • Windows Server 2008 Datacenter
  • Windows Server 2008 Enterprise
  • Windows Server 2008 Standard
  • Windows Web Server 2008
  • Microsoft Windows Server 2003, Standard x64 Edition
  • Microsoft Windows Server 2003, Enterprise x64 Edition
  • Microsoft Windows Server 2003, Datacenter x64 Edition
  • Microsoft Windows XP Professional x64 Edition
  • Microsoft Windows Server 2003, Standard Edition (32-bit x86)
  • Microsoft Windows Server 2003, Enterprise Edition (32-bit x86)
  • Microsoft Windows Server 2003, Web Edition
  • Microsoft Windows Server 2003, Datacenter Edition (32-bit x86)
  • Microsoft Windows Server 2003, Enterprise Edition for Itanium-based Systems
  • Microsoft Windows Server 2003, Datacenter Edition for Itanium-Based Systems
  • Microsoft Windows Server 2003 Service Pack 2?應用於:
    • Microsoft Windows Server 2003, Standard Edition (32-bit x86)
    • Microsoft Windows Server 2003, Enterprise Edition (32-bit x86)
    • Microsoft Windows Server 2003, Web Edition
    • Microsoft Windows Server 2003, Datacenter Edition (32-bit x86)
    • Microsoft Windows Server 2003, Standard x64 Edition
    • Microsoft Windows Server 2003, Enterprise x64 Edition
    • Microsoft Windows Server 2003, Datacenter x64 Edition
    • Microsoft Windows Server 2003, Enterprise Edition for Itanium-based Systems
    • Microsoft Windows Server 2003, Datacenter Edition for Itanium-Based Systems
    • Microsoft Windows XP Professional x64 Edition
  • Microsoft Windows Server 2003 Service Pack 1?應用於:
    • Microsoft Windows Server 2003, Standard Edition (32-bit x86)
    • Microsoft Windows Server 2003, Enterprise Edition (32-bit x86)
    • Microsoft Windows Server 2003, Web Edition
    • Microsoft Windows Server 2003, Datacenter Edition (32-bit x86)
    • Microsoft Windows Server 2003, Enterprise Edition for Itanium-based Systems
    • Microsoft Windows Server 2003, Datacenter Edition for Itanium-Based Systems
  • Microsoft Windows XP Service Pack 3?應用於:
    • Microsoft Windows XP Home Edition (家用版)
    • Microsoft Windows XP Professional
  • Microsoft Windows XP Service Pack 2?應用於:
    • Microsoft Windows XP Home Edition (家用版)
    • Microsoft Windows XP Professional
  • Microsoft Windows 2000 Server SP4?應用於:
    • Microsoft Windows 2000 Datacenter Server
    • Microsoft Windows 2000 Advanced Server
    • Microsoft Windows 2000 Server
    • Microsoft Windows 2000 Professional Edition
關鍵字:?
kbexpertiseinter kbtshoot KB956188
Microsoft及(或)其供應商不就任何在本伺服器上發表的文字資料及其相關圖表資訊的恰當性作任何承諾。所有文字資料及其相關圖表均以「現狀」供應,不負任何擔保責任。Microsoft及(或)其供應商謹此聲明,不負任何對與此資訊有關之擔保責任,包括關於適售性、適用於某一特定用途、權利或不侵權的明示或默示擔保責任。Microsoft及(或)其供應商無論如何不對因或與使用本伺服器上資訊或與資訊的實行有關而引起的契約、過失或其他侵權行為之訴訟中的特別的、間接的、衍生性的損害或任何因使用而喪失所導致的之損害、資料或利潤負任何責任。