使用python编写脚本测试目标主机的TCP端口连通性

使用Python的Socket模块的connect()函数来尝试连接目标主机的特定端口。如果连接成功,则说明该端口是打开的;否则,该端口是关闭的。

下面是一个示例脚本,可以检测目标IP的22端口是否开启:

python 复制代码
import socket
def check_port(ip, port):
   # 设置超时时间为3秒钟
   socket.setdefaulttimeout(3)
   s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
   try:
       s.connect((ip, port))
       print("端口开放")
   except socket.timeout:
       print("端口关闭")
   except ConnectionRefusedError:
       print("连接被拒绝")
   except Exception as e:
       print("发生异常:", e)
   finally:
       s.close()

   if __name__ == '__main__':
       check_port("127.0.0.1", 22)

在这个程序中,我们首先使用socket模块创建一个TCP套接字。然后,我们使用try-except语句来尝试连接指定的IP地址和端口。如果连接成功,则说明端口开放;如果连接超时,则说明端口关闭;如果连接被拒绝,则说明目标主机存在但是目标端口未开放;如果发生其他异常,则输出异常信息。最后,我们使用finally语句来关闭套接字,以确保程序能够正确地释放资源。

相关推荐
捧月华如7 小时前
Linux 系统性能压测工具全景指南(含工程实战)
linux·运维·服务器
s19134838482d8 小时前
vlan实验报告
运维·服务器·网络
微涼5308 小时前
【Python】在使用联网工具时需要的问题
服务器·python·php
想唱rap8 小时前
线程的同步与互斥
linux·运维·服务器·数据库·mysql
勇闯逆流河9 小时前
【LInux】linux控制(进程替换,自主shell的实现详解)
linux·运维·服务器
2601_949539459 小时前
家用新能源 SUV 核心技术科普:后排娱乐、空间工程与混动可靠性解析
大数据·网络·人工智能·算法·机器学习
南湖北漠9 小时前
奇奇怪怪漫画里面的蛞蝓是带壳的那种鼻涕虫
网络·人工智能·计算机网络·其他·安全·生活
IMPYLH9 小时前
Linux 的 ls 命令
linux·运维·服务器·bash
笨笨饿9 小时前
33_顺序表(待完善)
linux·服务器·c语言·嵌入式硬件·算法·学习方法
ofoxcoding9 小时前
GPT-5.4 vs Claude Opus 4.6 实测对比:2026 年该选哪个模型写代码?
网络·gpt·ai