![](/img/trans.png)
[英]Socket disconnected after a message, (Connection refused by remote host), using python
[英]Socket connection refused after first message
我通過套接字與Matlab通信Python。 但是,即使在去那里之前,我也想用netcat測試套接字。 所以我使用nc -lkp 25771
建立服務器,並使Python客戶端向此服務器發送消息:
import socket
host = 'localhost'
port = 25771
s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
s.connect((host,port))
s.send('Hello there')
s.close()
運行python client.py
服務器打印出'Hello there'; 但是,在我嘗試再次運行客戶端腳本之后,它會引發異常。
回溯(最近一次調用最后一次):文件“client.py”,第13行,在s.connect((主機,端口))文件“/usr/lib/python2.7/socket.py”,第224行,在meth return getattr(self._sock,name)(* args)socket.error:[Errno 111]連接被拒絕
為什么同一命令第二次引發錯誤? 我的第一個命令后有什么變化?
您正在使用不支持-k選項的傳統版本的netcat(netcat-traditional)。 您可以通過在終端中輸入man nc來確認檢查netcat的手冊頁。
使用命令sudo apt-get install netcat-openbsd安裝netcat-openbsd版本
現在使用該命令切換到netcat-openbsd版本
sudo update-alternatives --config nc並選擇netcat-openbsd。
現在你可以使用nc -lk 25771。 這將偵聽端口25771上的多個連接。
你也可以使用這里討論的命令Netcat:使用nc -l port_number而不是nc -l -p port_number
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.