给我写一个Python代码,可以批量扫描IP和端口
时间: 2023-02-09 11:31:50 浏览: 90
```python
import socket
def scan_ports(ip, start_port, end_port):
for port in range(start_port, end_port+1):
try:
sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
sock.settimeout(5)
result = sock.connect_ex((ip, port))
if result == 0:
print(f"{ip}:{port} is open")
sock.close()
except:
print(f"Unable to connect to {ip}:{port}")
scan_ports("IP地址", 起始端口, 结束端口)
```
请替换 IP地址, 起始端口, 结束端口 变量的值为你需要扫描的IP地址和端口范围.
这段代码使用了 Python 的 socket 库, 创建了一个 socket 对象, 并使用 connect_ex() 方法来检查 IP 地址和端口是否可用. 如果连接成功, 就会打印出 IP:Port 是开放的, 如果连接不成功, 会打印出无法连接到 IP:Port.
相关问题
给我写一个Python代码,可以同时扫描多个IP和对应端口
可以使用Python内置模块socket来扫描多个IP和对应端口。下面是一个示例代码:
```
import socket
def scan_ports(ip_list, port_list):
open_ports = {}
for ip in ip_list:
for port in port_list:
sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
sock.settimeout(5)
result = sock.connect_ex((ip, port))
if result == 0:
open_ports[ip] = open_ports.get(ip, []) + [port]
return open_ports
# 扫描IP列表中的所有IP的端口列表中的所有端口
ip_list = ["192.168.1.1", "192.168.1.2"]
port_list = [22, 80, 443]
open_ports = scan_ports(ip_list, port_list)
print(open_ports)
```
运行这个程序将会输出一个字典,其中键为所扫描的IP地址,值为开放的端口列表。
请注意,如果您扫描未经授权的IP地址和端口,可能会导致法律后果。
用python写一个批量扫描ip的脚本
您好,以下是用 Python 写一个批量扫描 IP 的脚本的简单示例:
```
import socket
ips = ['192.168.0.1', '192.168.0.2', '192.168.0.3']
for ip in ips:
try:
socket.inet_aton(ip)
print(f"{ip} is valid")
except:
print(f"{ip} is invalid")
```
这个脚本通过使用 `socket.inet_aton` 函数检查 IP 地址是否有效,并在输出中报告 IP 地址的有效性。此代码仅供参考,实际应用中可能需要根据您的具体需求进行更多的扩展和修改。