如何修復 Windows 11 和 10 中的端口耗盡
端口耗盡是一個常見的網絡問題,可能會嚴重影響 Windows 11 或 10 系統建立新連接的能力。當所有可用的 TCP 或 UDP 端口都在使用中時,會出現此問題,從而阻止應用程序通過網絡進行通信。讓我們探討如何識別和解決端口耗盡問題,以保持系統平穩運行。
識別端口耗盡症狀
在深入研究解決方案之前,識別端口耗盡的跡象至關重要:
- 無法使用域憑據登錄,而本地帳戶登錄有效。
- 由於明顯缺乏網絡連接,組策略更新失敗。
- 無法訪問文件共享或網絡驅動器。
- 遠程桌面與服務器的連接失敗。
- 事件查看器日誌顯示 TCP 事件 ID 4227 或 4231,表明動態端口分配失敗。
- Netstat 命令顯示特定應用程序的大量 TIME_WAIT 狀態條目。
使用 Netstat 診斷端口耗盡
步驟一:右鍵單擊“開始”按鈕並選擇“Windows 終端(管理員)”或“命令提示符(管理員)”,打開提升的命令提示符。
步驟2:執行以下命令查看活躍連接和監聽端口:
更多閱讀:如何更改打印機端口以解決 Windows 11 中的打印問題
netstat -anobq
步驟3:查找具有大量 BOUND 條目的進程,這可能表明端口耗盡。
對於PowerShell用戶,可以使用以下命令進行更詳細的分析:
Get-NetTCPConnection | Group-Object -Property State, OwningProcess | Select -Property Count, Name, @{Name="ProcessName";Expression={(Get-Process -PID ($_.Name.Split(',')[-1].Trim(' '))).Name}}, Group | Sort Count -Descending
此命令按狀態和進程對連接進行分組,幫助您識別哪些應用程序正在使用最多的端口。
使用任務管理器識別端口密集型應用程序
步驟一:按打開任務管理器Ctrl + Shift + Esc。
步驟2:單擊“詳細信息”選項卡。
步驟3:右鍵單擊任何列標題並選擇“選擇列”。
第4步:選中“句柄”旁邊的框,然後單擊“確定”。
第5步:單擊“句柄”列可按句柄計數對進程進行排序。
具有超過 3000 個句柄的應用程序可能會導致端口耗盡。但是,請謹慎對待系統服務,因為它們自然會使用更多句柄。
利用 Process Explorer 進行詳細分析
Process Explorer 是 Sysinternals 套件的一部分,可以更深入地了解進程行為:
步驟一:下載並使用管理員權限運行 Process Explorer。
步驟2:右鍵單擊列標題並選擇“選擇列”。
步驟3:在“進程性能”選項卡中,添加“處理計數”。
第4步:從“視圖”菜單中,選擇“顯示下部窗格”,然後選擇“手柄”。
第5步:按句柄計數降序對進程進行排序。
第6步:檢查句柄數較高的進程,重點關注具有“File DeviceAFD”條目的進程,這些條目通常代表網絡套接字。
解決端口耗盡問題
確定有問題的進程後,您可以採取措施解決端口耗盡問題:
步驟一:關閉佔用過多端口的應用程序。如果問題仍然存在,您可能需要聯繫應用程序供應商進行修復。
步驟2:如果無法關閉應用程序,請考慮增加可用端口範圍。在提升的命令提示符中使用此命令:
netsh int ipv4 set dynamicport tcp start=10000 num=1000
此命令將起始端口設置為 10000 並分配 1000 個端口。根據需要調整這些數字,請記住最小起始端口為 1025,最大結束端口為 65535。
步驟3:要快速修復,請重新啟動受影響的計算機以釋放所有端口。然而,這只是一個臨時解決方案,並不能解決根本原因。
防止端口衝突
為了避免端口衝突,這可能會導致耗盡:
步驟一:使用以下命令提示符命令識別衝突端口:
netstat -an
步驟2:查看輸出以查找已在使用的端口。
步驟3:修改您的應用程序設置以使用不同的未使用的端口以防止衝突。
通過執行這些步驟,您可以有效地診斷和解決 Windows 11 和 10 中的端口耗盡問題。請記住,雖然這些解決方案可以立即緩解問題,但解決根本原因(通常是應用程序未正確關閉連接)對於長期系統健康和網絡性能至關重要。
