由於目標計算機積極拒絕,無法連接。 (10061)

問題

使用adb命令無線鏈接手機出現 “由於目標計算機積極拒絕,無法連接。 (10061)” 這種問題。



解決方法

1、先確認Android設備開啓開發者模式,並且開啓USB調試;

2、確認Android設備和電腦處於同一局域網;

如果上述都確認還是出現 “由於目標計算機積極拒絕,無法連接。 (10061)” 這個問題,那就極有可能是端口被佔用了:

(1)使用如下adb命令可以查看端口使用情況:

netstat -ano | findstr 5037

  如果出現以下情況:

  TCP    127.0.0.1:5037         0.0.0.0:0              LISTENING       5596

  TCP    127.0.0.1:5037         127.0.0.1:49508        ESTABLISHED     5596

  TCP    127.0.0.1:5037         127.0.0.1:50671        TIME_WAIT       0

  TCP    127.0.0.1:5037         127.0.0.1:50672        TIME_WAIT       0

  TCP    127.0.0.1:5037         127.0.0.1:50673        TIME_WAIT       0

從上面的 “TCP 127.0.0.1:5037 127.0.0.1:49508 ESTABLISHED 5596” 可以看出進程5596佔用了端口,這時找到5596,並關掉它就可以了。關掉之前可以先看看是什麼進程,查看進程的命令:

tasklist |findstr 5596

關掉進程的命令:

taskkill /pid 5596 /f

此時再次嘗試adb連接Android設備,如果還不行,則使用下面的最後一種方法;

 

(2)使用USB連接電腦,然後執行以下命令行:

adb tcpip 5555

在沒有報錯的前提下,斷開USB,再使用命令:

adb connect IP地址:5555

此時就能連接Android設備了,如果還不行,對不起,我也沒辦法了!

 

附錄:TCP狀態轉移

TCP協議規定,對於已經建立的連接,網絡雙方要進行四次握手才能成功斷開連接,如果缺少了其中某個步驟,將會使連接處於假死狀態,連接本身佔用的資源不會被釋放。網絡服務器程序要同時管理大量連接,所以很有必要保證無用連接完全斷開,否則大量僵死的連接會浪費許多服務器資源。

1、LISTENING狀態

FTP服務啓動後首先處於偵聽(LISTENING)狀態。

2、ESTABLISHED狀態

ESTABLISHED的意思是建立連接。表示兩臺機器正在通信

3、CLOSE_WAIT

對方主動關閉連接或者網絡異常導致連接中斷,這時我方的狀態會變成CLOSE_WAIT 此時我方要調用close()來使得連接正確關閉

4、TIME_WAIT

我方主動調用close()斷開連接,收到對方確認後狀態變爲TIME_WAIT。TCP協議規定TIME_WAIT狀態會一直持續2MSL(即兩倍的分 段最大生存期),以此來確保舊的連接狀態不會對新連接產生影響。處於TIME_WAIT狀態的連接佔用的資源不會被內核釋放,所以作爲服務器,在可能的情 況下,儘量不要主動斷開連接,以減少TIME_WAIT狀態造成的資源浪費。目前有一種避免TIME_WAIT資源浪費的方法,就是關閉socket的LINGER選項。但這種做法是TCP協議不推薦使用的,在某些情況下這個操作可能會帶來錯誤。

5、SYN_SENT狀態

SYN_SENT狀態表示請求連接,當你要訪問其它的計算機的服務時首先要發個同步信號給該端口,此時狀態爲SYN_SENT,如果連接成功了就變爲 ESTABLISHED,此時SYN_SENT狀態非常短暫。但如果發現SYN_SENT非常多且在向不同的機器發出,那你的機器可能中了衝擊波或震盪波 之類的病毒了。這類病毒爲了感染別的計算機,它就要掃描別的計算機,在掃描的過程中對每個要掃描的計算機都要發出了同步請求,這也是出現許多 SYN_SENT的原因。

根據TCP協議定義的3次握手斷開連接規定,發起socket主動關閉的一方 socket將進入TIME_WAIT狀態,TIME_WAIT狀態將持續2個MSL(Max Segment Lifetime),在Windows下默認爲4分鐘,即240秒,TIME_WAIT狀態下的socket不能被回收使用. 具體現象是對於一個處理大量短連接的服務器,如果是由服務器主動關閉客戶端的連接,將導致服務器端存在大量的處於TIME_WAIT狀態的socket, 甚至比處於Established狀態下的socket多的多,嚴重影響服務器的處理能力,甚至耗盡可用的socket,停止服務. TIME_WAIT是TCP協議用以保證被重新分配的socket不會受到之前殘留的延遲重發報文影響的機制,是必要的邏輯保證.

 



個人網站:分享客https://sharerdiary.com/
這個網站經常分享一些免費視頻、免費音樂、實用工具和各種福利,感興趣的朋友可以看看!

您的關注和點贊是我分享的動力,如有幫助請勿吝嗇!ヽ( ̄▽ ̄)ノ



 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章