Remote Desktop IP Virtualization 的 IP Address Pool 耗盡與 Stale Lease 清理請教

Ling Liu 40 信譽點數
2026-08-17T06:28:51.55+00:00

內文: 各位哥/各位前輩好,

目前在維護一套多 Session 的 RDSH (Remote Desktop Session Host) 環境,並且有開啟 IP Virtualization 功能(Per Session / Per Program 模式)。

【現況與遇到的 Issue】 最近發現 Session 數量一多時,IP Virtualization 的 Virtual IP Pool 會直接被吃滿(Address Pool Exhaustion)。 這導致後續 Session 登入時出現以下狀況:

新 User 登入失敗,無法配發到 Virtual IP。

或是系統 Fallback 直接存取 Host 本體的 IP,造成需要獨立 IP 辨識的後端服務存取異常。

初步排查發現 DHCP 派發的 Lease Table 裡面積攢了許多已經 Session Disconnect 或 Logoff 卻未被釋放的 Stale Leases,導致 IP 被死死佔住。

【想請教的問題】

Scope 擴充機制: 在不影響線上 RDS 服務的前提下,如何透過 PowerShell 或 Registry 正確擴充 IP Virtualization 的 DHCP Allocation Scope?

Lease Reset / Flush 流程: 是否有建議的標準流程或 PowerShell Cmdlet 可以強制 Reset / Flush 那些殘留的 Stale Lease Tables,讓過期的 IP 能即時被 Reclaim?

再請有維護過此架構的前輩不吝指教,感謝!

Windows 商務版 | Windows 365 企業版
0 則留言 沒有留言

1 個回答

排序依據: 最舊
  1. Domic Vo 37,000 信譽點數 獨立顧問
    2026-08-17T07:31:32.1466667+00:00

    你好 Ling Liu,

    在 RDSH 环境中使用 IP 虚拟化时,地址池耗尽的根本原因通常是 DHCP 约没有及时释放,导致虚拟 IP 被占用。 补充范围的正确方式是直接在 DHCP 服务器上调整的范围,确保虚拟 IP 池有足够的地址。 这可以穿透 PowerShell 的 Add-DhcpServerv4Scope 或 Set-DhcpServerv44 来扩展现有范围,而不是仅靠 RDSH本机注册表。 RDSH 会从 DHCP 获取地址,因此必须确保 DHCP 范围足够大并且与 RDSH 的虚拟 IP 设置一致。

    对于清理过剩的租约,可以在 DHCP 服务器上使用 Remove-DhcpServerv4Lease -ScopeId <ScopeID> -IPAddress <IP> 或批量处理过期租约,并且建议定期执行 Reconcile-DhcpServerv4Scope -ScopeId <ScopeID> 来同步租约资料库。 若要在 RDSH 主机上强制释放,则可跨越 ipconfig /release 与 ipconfig /renew 针对虚拟会话执行,或使用 netsh interface ip delete arpcache 清理快取,确保 DHCP服务器器能立即恢复。

    在多会话环境下,最佳做法是事先规划足够大的 DHCP 范围,并监控租约释放状态,避免因断线 Session 未释放租约而导致 Pool 疲倦。 若耳机服务需要独立 IP 长度,一定要确保 DHCP 与 RDSH 的 IP 虚拟化设定完全租赁,并定期检查租约表以防止 Stale Lease 混凝土。

    如果我的回答对您有用,请点击接受答案来支持我。

    谢谢你,

    多米克。

    此回答有幫助嗎?

    0 則留言 沒有留言

您的回答

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