python 检查udp和tcp端口
时间: 2023-09-11 11:02:06 浏览: 230
自用python解析UDP TCP雷达通信
Python可以使用socket库来检查UDP和TCP端口。以下是一个示例代码:
```python
import socket
def check_udp_port(ip, port):
sock = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
result = sock.connect_ex((ip, port))
if result == 0:
print(f"UDP端口 {port} 是开放的")
else:
print(f"UDP端口 {port} 是关闭的")
sock.close()
def check_tcp_port(ip, port):
sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
result = sock.connect_ex((ip, port))
if result == 0:
print(f"TCP端口 {port} 是开放的")
else:
print(f"TCP端口 {port} 是关闭的")
sock.close()
if __name__ == "__main__":
ip = "127.0.0.1" # 被检查的IP地址
udp_port = 12345 # 被检查的UDP端口
tcp_port = 80 # 被检查的TCP端口
check_udp_port(ip, udp_port)
check_tcp_port(ip, tcp_port)
```
上述代码中,`check_udp_port`函数用于检查UDP端口,`check_tcp_port`函数用于检查TCP端口。它们都接受IP地址和端口号作为参数,在函数内部创建相应的套接字(socket),并通过调用`connect_ex`方法来检查端口是否开放。如果返回值为0,表示端口开放;否则,表示端口关闭。
在`if __name__ == "__main__":`部分,你可以根据需要修改被检查的IP地址和端口号。注意,这只是一个基本的示例,如果需要进行批量的端口扫描,可能需要使用多线程等技术来提高效率。
阅读全文