[解決問題] 因為系統緩衝區空間不足,或是佇列已滿造成 ERR_CONNECTION_FAILED 問題

Photo by NeONBRAND on Unsplash

首先這大概是我的文章裡面標題最長的一篇文章了,這個問題是在解 VulnHub 題目時遇到的,所用的電腦是公司發配的筆記型電腦,這問題是偶然出現的,前一天使用都還好好的,隔一天到公司之後就不時出現 ERR_CONNECTION_FAILED 頁面,如果有人也遇到一樣的問題,希望本篇文章可以幫助遇到此問題的各位。

目錄

ERR_CONNECTION_FAILED 問題說明

在解題的過程中,瀏覽網頁有很高的機率出現「ERR_CONNECTION_FAILED」,一開始還以為是遇到什麼奇葩的蠕蟲,但使用 Ping 功能卻又皆正常,嘗試更換瀏覽器皆是一樣的結果,為了解決這個問題,連網路都環境都更換過,原本打算就將問題原因、解決方法寫在該文下方就好,但覺得問題太過特殊還是個別寫一篇文章針對此問題來說明好了。 – [資訊安全] VulnHub – Raven: 2 Write-up 內文。

首先我的問題是發生在使用大量 Request 的情況下發生的,例如使用 nmap、sqlmap、dirsearch 等…工具,共通點是掃到一半就停頓、卡住,接著瀏覽器不論是跑什麼都是噴 ERR_CONNECTION_FAILED 。

ERR_CONNECTION_FAILED Error Page.

一開始針對瀏覽器問題搜尋,得到一些解決方法,但可能都是單純針對ERR_CONNECTION_FAILED 提供的解法,而造成原因可能是 DNS,或是網路配置出現的問題,大致上找到的解法如下。

ipconfig /release
ipconfig /all
ipconfig /flushdns
ipconfig /renew
netsh int ip set dns
netsh winsock reset

就只要開個具有管理員權限的 PowerShell 一路執行下來,並且重開機一次即可,事後覺得,最有效的不是 Key 上指令,而是重開機,無關指令有沒有執行…。

隨後要解 VulnHub 題目時,使用特定的 Exploit,而非上訴的那些自動化工具,噴出了以下的錯誤,所以也確定是系統問題,會現在才確定是因為被 Ping 騙得團團轉,Ping IP 正常、Ping Domain 正常,然後就被誤導了。

新的錯誤訊息「因為系統緩衝區空間不足,或是佇列已滿」,得到一個結論,由於大量的 Request 造成佇列爆炸,只是很好奇為什麼以前這樣炸都沒事,現在才遇到這詭異的問題。

解決方法

這邊參考微軟關方的解法:

  1. When you try to connect from TCP ports greater than 5 0 0 0 you receive the error ‘W S A E N O B U F S ( 1 0 0 5 5 ) ‘
  2. 無法在通訊端上執行操作,因為系統緩衝區空間不足,或是佇列已滿

手動解法:

手動解法比較麻煩一些,所以自己弄了一個登錄檔,可以直接載下來直接登錄即可解決,至於登陸之後要不要重開機是看個人,我是覺得登錄之後就有作用了,這點我也是聽同事才知道變更登錄檔不用重新啟動,硬體參數除外。

懶人R E G 登錄檔: 下載

那如果要手動 D I Y 就照步驟來唄。

  1. 點擊 Win + X 或 Win 鍵,輸入「regedit」(大小寫不拘)。
  2. 接著循線找到「HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters」
  3. 然後又鍵 「新增(N) -> DWORD(32-位元)值(D)」。
  4. 變更名稱為 「MaxUserPort」。
  5. 接著修改值為「65534(十進位)」。
Solved ERR_CONNECTION_FAILED Problem.

2020-01-30 更新

最後還是有再發生一樣的問題,這次回追發生原因是因為使用 nmap 的 -p- 指令,根據官方的說法 -p- 會使用大量的分頁記憶體,以下是從使用 -p- 指令,在工作管理員底下的觀察。

可以看到直接使用了 31.2 GB,是非常誇張的使用量,而在使用 -p- 指令之前,僅 1G 不到,會針對這個問題提出來,主要是因為在 WSL 上執行 nmap 導致瀏覽器 ERR CONNECTION FAILED 的問題以外,還造成記憶體不足,以及虛擬機都打不開的狀況,而且共通點都是,記憶體明明使用率不高,但還是呈現記憶體不足…,追根究柢的研究之後才發現問題是 -p- 指令造成的。

MksYi

透過網路分享知識的學習者。

2 thoughts to “[解決問題] 因為系統緩衝區空間不足,或是佇列已滿造成 ERR_CONNECTION_FAILED 問題”

  1. 照著你的第一個方法真的解決了我突然不能上網的問題,感謝。

發佈留言

發佈留言必須填寫的電子郵件地址不會公開。 必填欄位標示為 *

這個網站採用 Akismet 服務減少垃圾留言。進一步了解 Akismet 如何處理網站訪客的留言資料