如何用ping命令测试服务器端口?网络连通性检查方法分享

ping服务器端口的代码

import socket
import time
def check_port(host, port, timeout=2):
    """
    检测指定主机和端口的开放状态
    :param host: 目标主机IP或域名
    :param port: 目标端口
    :param timeout: 连接超时时间(秒)
    :return: (状态, 延迟毫秒数) 状态为字符串描述
    """
    start_time = time.time()
    s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
    s.settimeout(timeout)
    try:
        s.connect((host, port))
        elapsed = int((time.time() - start_time) * 1000)
        return f"✅ 端口 {port} 开放", elapsed
    except socket.timeout:
        return f"🕒 端口 {port} 连接超时", None
    except ConnectionRefusedError:
        return f"❌ 端口 {port} 拒绝连接", None
    except socket.gaierror:
        return f"❓ 主机名解析失败", None
    except Exception as e:
        return f"⚠️ 未知错误: {str(e)}", None
    finally:
        s.close()
if __name__ == "__main__":
    # 配置检测参数
    host = "example.com"  # 目标主机
    ports = [80, 443, 22, 3389]  # 要检测的端口列表
    print(f"开始检测 {host} 的端口状态...n")
    for port in ports:
        result, latency = check_port(host, port)
        if latency is not None:
            print(f"{result} | 延迟: {latency}ms")
        else:
            print(result)
    print("n检测完成")

功能说明:

  1. TCP 连接检测:使用 socket 尝试建立 TCP 连接
  2. 多端口支持:可一次性检测多个端口状态
  3. 详细状态反馈
    • ✅ 端口开放(成功建立连接)
    • ❌ 端口关闭(连接被拒绝)
    • 🕒 连接超时(可能被防火墙拦截)
    • ❓ 主机名解析失败
    • ⚠️ 其他未知错误
  4. 延迟测量:显示成功连接的网络延迟(毫秒)

使用示例:

# 检测百度的常用端口
host = "www.baidu.com"
ports = [80, 443, 21, 8080]

输出示例:

开始检测 www.baidu.com 的端口状态...
✅ 端口 80 开放 | 延迟: 32ms
✅ 端口 443 开放 | 延迟: 28ms
❌ 端口 21 拒绝连接
❌ 端口 8080 拒绝连接
检测完成

注意事项:

  1. 需要目标服务器响应 TCP 握手(ICMP ping 不可用)
  2. 可能被防火墙干扰(超时不代表端口关闭)
  3. 对 UDP 端口无效(需使用其他技术)
  4. 频繁扫描可能触发安全机制

提示:对于批量扫描需求,可结合 concurrent.futures 模块实现多线程加速检测。

ping服务器端口的代码

图片来源于AI模型,如侵权请联系管理员。作者:酷小编,如若转载,请注明出处:https://www.kufanyun.com/ask/287800.html

(0)
上一篇 2026年2月8日 14:53
下一篇 2026年2月8日 14:58

相关推荐

  • PHP怎么获取服务器当前时间,如何获取当前时间代码

    在PHP开发中,获取服务器当前时间最核心且标准的方法是结合使用 date_default_timezone_set() 函数正确设定时区,并调用 date() 函数格式化输出,或使用面向对象的 DateTime 类进行复杂操作,确保时区配置的准确性是避免时间显示错误(如常见的8小时时差)的关键步骤,而在高并发或……

    2026年3月8日
    0972
  • 10m光纤和10m宽带有什么区别,10m光纤和10m宽带哪个快

    10m 光纤与 10m 宽带的本质差异及性能优化方案核心结论:10m 光纤与 10m 宽带在理论下载速度上完全一致,但光纤在稳定性、抗干扰能力及低延迟表现上具有压倒性优势,对于企业办公、高清直播及远程协作场景,单纯追求“带宽数值”已无意义,必须优先选择光纤接入以保障业务连续性,若需进一步提升小带宽下的传输效率……

    2026年5月1日
    0396
  • pr老域名是否还能发挥价值?如何评估其真实价值与潜在风险?

    {pr老域名}:价值解析与实战应用指南老域名的价值与PR权重关联老域名(通常指注册时间超过1年、有历史内容收录的域名)是互联网早期积累的“资产”,其核心价值源于历史权重沉淀与信任度提升,PR(PageRank,谷歌早期评估页面重要性的指标)是衡量老域名权重的关键维度——通过长期的内容更新、外链积累,老域名会获得……

    2026年1月10日
    01120
    • 服务器间歇性无响应是什么原因?如何排查解决?

      根源分析、排查逻辑与解决方案服务器间歇性无响应是IT运维中常见的复杂问题,指服务器在特定场景下(如高并发时段、特定操作触发时)出现短暂无响应、延迟或服务中断,而非持续性的宕机,这类问题对业务连续性、用户体验和系统稳定性构成直接威胁,需结合多维度因素深入排查与解决,常见原因分析:从硬件到软件的多维溯源服务器间歇性……

      2026年1月10日
      020
  • 除了建网站,有了虚拟主机后还能用来做什么实用的事情?

    当您拥有了一块虚拟主机,就如同在广阔的互联网世界中拥有了一块属于自己的“数字地产”,它不仅仅是一个存放网站文件的空间,更是一个功能强大、潜力无限的在线平台,能够支撑起从个人兴趣到商业帝国的各种数字需求,它的用途远比想象中更为丰富和深入,个人展示与兴趣的舞台对于个人用户而言,虚拟主机是打造个人品牌、分享生活点滴……

    2025年10月13日
    01520

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注