如何用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

相关推荐

  • 有赞用的什么云服务器,有赞云服务器配置怎么样,性能靠谱吗?

    有赞用的云服务器是腾讯云,这是由腾讯持股有赞的股权关系决定的,也是双方业务深度融合的必然结果,如果你在经营一家有赞店铺,或者正在对比电商SaaS工具,搞清楚服务器底层来自哪家云厂商,直接关系到数据安全、访问稳定性和长期成本这三件事,答案很明确:腾讯云,有赞用的是什么云服务器?腾讯云是唯一答案先给结论背后的依据……

    2026年10月7日
    0792
  • RAG系统的召回率怎么提升,RAG召回率优化

    提升RAG系统召回率的核心在于构建“粗召回+精排序”的多路检索架构,结合混合检索(向量+关键词)与动态查询重写技术,通常可将Top-K召回率提升20%-40%,在2026年的企业级知识服务场景中,单纯依赖向量相似度匹配已无法满足高准确率需求,随着大模型上下文窗口的扩展与检索增强生成技术的成熟,召回率的瓶颈已从……

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

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

      2026年1月10日
      020
  • 移动宽带50M怎么样?50M宽带网速慢吗

    移动宽带 50M 怎么样:核心结论与适用场景深度解析移动宽带 50M 在绝大多数家庭日常使用场景中表现优异,性价比极高,是追求经济实惠用户的理想选择,但在高并发游戏、专业直播或超大文件频繁上传等极端网络需求下,其稳定性与延迟表现略逊于光纤专线, 这一结论基于对当前移动网络架构、用户实际体验数据以及技术特性的综合……

    2026年5月1日
    04985
  • PHP怎么获取网络时间,PHP如何获取服务器当前时间

    在PHP开发中,获取准确的时间是保障业务逻辑正确性的基础,尤其是在处理订单超时、定时任务、数据同步等对时间敏感的场景时,核心结论是:依赖服务器本地系统时间往往存在时钟漂移和时区配置错误的风险,最稳健的方案是通过网络时间协议(NTP)或调用高可用的标准时间API接口来获取标准网络时间,并在应用层建立缓存机制以平衡……

    2026年2月22日
    03322

发表回复

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