![](/img/trans.png)
[英]Python: No connection could be made because the target machine actively refused it
[英]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.