如果套接字程序在端口上运行(例如6053
),并且firewall
函数recv
read
和{{1}中未添加规则被阻止了。
我们如何在recvfrom
或C
中检查此问题并在Linux计算机上报告python
错误。
答案 0 :(得分:2)
尝试使用socket.connect()连接该端口,如果连接不成功,则显示Port未打开的消息。
答案 1 :(得分:0)
像nmap这样的工具可以帮助确定特定端口是打开还是关闭。
TCP: nmap使用TCP SYN扫描或TCP连接扫描等技术,服务器将使用ACK-RST数据包回复SYN请求的封闭端口。您可以注意到,它是在三次握手(连接建立)本身时确定的。
UDP: nmap还有助于UDP扫描,在UDP数据包到达封闭的UDP端口的情况下,应返回基于ICMP的“端口无法访问”数据包(这也取决于OS)。与TCP不同,UDP不是基于连接的协议,ICMP也是无连接的,因此您可能需要在短时间内发送大量UDP数据包,并根据响应或类似逻辑进行评估。
您可以使用类似的技术/逻辑来确定特定端口是打开还是关闭,并为用户闪现适当的消息。