要實現批量掃描IP端口,可以使用Python的socket庫。下面是一個簡單的例子:
import socket
# 定義要掃描的IP和端口范圍
target_ip = "192.168.0.1"
start_port = 1
end_port = 100
# 遍歷指定的端口范圍
for port in range(start_port, end_port+1):
# 創建socket對象
sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
# 設置超時時間為1秒
sock.settimeout(1)
try:
# 嘗試連接目標IP和端口
result = sock.connect_ex((target_ip, port))
if result == 0:
print(f"端口 {port} 開放")
else:
print(f"端口 {port} 關閉")
except socket.error:
print(f"無法連接到端口 {port}")
finally:
# 關閉socket連接
sock.close()
在上述代碼中,我們使用了socket
庫的socket
函數創建了一個TCP socket對象。然后,使用connect_ex
方法嘗試連接到指定的IP和端口。如果返回值為0,表示端口開放;否則,表示端口關閉。最后,使用close
方法關閉socket連接。
你可以根據需要修改target_ip
、start_port
和end_port
的值,以掃描不同的IP和端口范圍。請注意,這個例子只是一個簡單的示例,實際應用中可能需要更復雜的邏輯和錯誤處理。