for port in range(1, 65536): # 设置遍历端口范围
sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM) # 设置参数
sock.settimeout(1) # 设置超时时间1秒
result = sock.connect_ex((args.host, port)) # 检测端口号
if result == 0: # 结果为0端口开放
print(f"Port: {port} Open") # 输出端口号
sock.close()
异常抛出
try:
for port in range(1, 65536):
sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
sock.settimeout(1)
result = sock.connect_ex((args.host, port))
if result == 0:
print("Port: {} Open".format(port))
sock.close()
except KeyboardInterrupt:
sys.exit() # 退出