Python检测服务器是否在线以及特定端口是否开放

该Python脚本使用telnetlib模块检查服务器的特定端口是否开放,并通过pythonping库进行ping测试,以确定服务器的可达性。对于192.168.1.1,ping失败且端口检测失败;而对于baidu.com,ping和端口检测均成功。

from telnetlib import Telnet
import pythonping


servers={
    # 服务器地址及需要检测的端口列表
    "192.168.1.1":[80,3389,123],
    "baidu.com":[80,443]
}

for  server in servers:
    print(f"开始ping服务器{server}:")
    res = pythonping.ping(server,5) # 超时时间5s
    for line in res:
        if "Reply" in str(line):
            print("OK")
        else:
            print("Failed")

    for port in servers[server]:
        print(f"开始检测服务器{server}端口{port}:")
        try:
            Telnet(server, port,5)  # 超时时间5s
            print("OK")
        except:
            print("Failed")

控制台输出:

开始ping服务器192.168.1.1:
Failed
Failed
Failed
Failed
开始检测服务器192.168.1.1端口80:
Failed
开始检测服务器192.168.1.1端口3389:
Failed
开始ping服务器baidu.com:
OK
OK
OK
OK
开始检测服务器baidu.com端口80:
OK
开始检测服务器baidu.com端口443:
OK

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值