Windows Server 2008 - 無法綁定任何 TCP 連接埠

Windows Server 2008 - 無法綁定任何 TCP 連接埠

作業系統:Win Server 2008 RC2 Windows 防火牆開啟(關閉時無效)

我突然被一個問題困擾,搜尋找不到任何類似的問題。

我正在運行大約 20 個遊戲伺服器,它們綁定到 UDP 端口,然後綁定到 UDP 端口上方的 TCP 端口 1。一天前,新的 TCP 綁定突然停止運作。

現在,我已經確認其他應用程式無法偵聽大多數連接埠。例如,我複製了一個java程序,並嘗試了以下連接埠:33001、23789、89...完全隨機的連接埠。

就已經具有 TCP 綁定的應用程式(例如 HTTP 和 MySQL)而言,我發現只有連接埠 8080 可以工作,並且僅適用於 Apache。如果應用程式離開預設端口,它們將無法綁定,但是當端口為預設時,它們會恢復正常。

我已經透過 netstat 和 curports 檢查了監聽應用程序,也檢查了這些連接埠上的任何連接,它們是完全免費的。

答案1

您的伺服器可能耗盡了臨時連接埠。

您可以在事件檢視器(運行 -> eventvwr.msc)。查找任何警告系統協議與編號:4227、4231TCP/IP來源。如果您看到任何內容,則需要重新啟動伺服器並透過註冊表調整 TCP/IP 協定 -Windows Server 2012 R2 耗盡了臨時端口,但它不應該

答案2

也許您的程式已列在防火牆的例外清單中,但該清單已被刪除。

我也遇過這樣的情況已安裝防火牆,並且您需要設定它們兩個都適當地。這導致一些頭髮被拉扯。

答案3

您是否嘗試啟動 Windows 防火牆服務,然後從 Windows 防火牆介面啟動/停止它?

點選開始,點選搜尋;搜尋“具有進階安全性的 Windows 防火牆”

Windows 7和2008R2有這樣的問題:無論您想對防火牆做什麼,都必須啟動後台服務。

答案4

如果您正在使用 Hyper-V 等服務,則可能是由「排除的連接埠範圍」。在這種情況下,一系列連接埠將不可用。

您可以透過以下方式驗證

PS ~> netsh interface ipv4 show excludedportrange protocol=tcp

Protocol tcp Port Exclusion Ranges

Start Port    End Port
----------    --------
      5357        5357
      5985        5985
     47001       47001
     50000       50059     *

如果您的連接埠在上述範圍內,則任何綁定它們的方法都將失敗。根據超級用戶的回答,你可以嘗試透過以下方式釋放它

net stop winnat

要保留您自己的端口,您可以使用

netsh int ipv4 add excludedportrange protocol=tcp startport=50323 numberofports=1

相關內容