要查询一个IP开放的端口,可以使用socket模块来实现。下面是一个示例代码:

import socket

def scan_ports(ip, start_port, end_port):
    open_ports = []
    for port in range(start_port, end_port+1):
        try:
            sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
            sock.settimeout(1)
            result = sock.connect_ex((ip, port))
            if result == 0:
                open_ports.append(port)
            sock.close()
        except socket.error:
            pass
    return open_ports

ip = '127.0.0.1'
start_port = 1
end_port = 100

open_ports = scan_ports(ip, start_port, end_port)
print(f"IP地址 {ip} 开放的端口有:{open_ports}")

在上面的示例中,scan_ports函数用于扫描指定IP地址的端口范围。它使用socket模块的socket函数创建一个TCP套接字,并使用connect_ex方法尝试连接到指定的IP地址和端口。如果返回值为0,表示端口开放,将其添加到open_ports列表中。最后返回开放的端口列表。

你可以将ip变量设置为你要查询的IP地址,start_portend_port变量设置为你要查询的端口范围。运行代码后,将会输出IP地址开放的端口列表

python 查询IP开放的端口

原文地址: https://www.cveoy.top/t/topic/hAmA 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录