簡體   English   中英

Python-無法建立連接,因為目標計算機主動拒絕了它

[英]Python - No connection could be made because the target machine actively refused it

我是Python的新手,我正在嘗試執行這段導入Socket的代碼:

import socket
def retBanner(ip, port):
    try:
        socket.setdefaulttimeout(2)
        s = socket.socket()
        s.connect((ip,port))
        banner = s.recv(1024)
        return banner
    except Exception as e:
        return str(e)

def main():
    ip1 = '10.0.0.12'
    ip2 = '10.0.0.11'
    port = 21

banner1 = retBanner(ip1, port)
if banner1:
    print('[+] ' + ip1 + ': ' + banner1)

banner2 = retBanner(ip2, port)
if banner2:
    print("[+] " + ip2 + ': ' + banner2)

if __name__ == '__main__':
    main()

即使我只是嘗試使用Shell

>>> import socket
>>> socket.setdefaulttimeout(2)
>>> s = socket.socket()
>>> s.connect(("10.0.0.12",21))

它引發以下異常

[+] 10.0.0.12: [WinError 10061] No connection could be made because the target machine actively refused it

我想知道為什么,我關閉了防火牆。

問候!

WinError 10061表示服務器端TCP不接受連接。 因為上面沒有任何應用程序在偵聽客戶端嘗試連接的端口。 請檢查您的服務器應用程序是否已啟動,並且是否正在偵聽預期的端口。

我將其作為一個簡單的注釋,但是由於我是一個聲譽不高的新用戶,所以不允許這樣做。 您是否設置了可能禁用此功能的代理? 另外,您應該提到這是哪個Python版本。

運行之后,我發現我遇到了錯誤

“ banner1 = retBanner(ip1,端口)NameError:未定義名稱'ip1'”

因為您只能在“ main”內部而不是全局(在函數定義之外)定義它。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM