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

相关推荐

  • 宽带撤销怎么办理?宽带撤销流程及费用详解

    2026 年宽带撤销已全面实现“线上即时生效、线下零上门”的标准化流程,用户通过运营商官方 APP 或 10086/10000/10010 热线即可在 24 小时内完成注销,无需前往营业厅,但需确认无在途合约或欠费,随着 2026 年数字基础设施的进一步下沉,宽带业务的全生命周期管理已高度数字化,根据工信部《2……

    2026年5月9日
    04371
  • 华为服务器BIOS密码是什么问题,华为服务器默认BIOS密码是多少

    华为服务器BIOS密码没有统一默认值,新出厂设备通常为空密码或未启用,若遇到密码遗忘,最直接的办法是联系华为官方技术支持或通过iBMC管理网口进行重置,** 华为服务器与PC不同,BIOS密码策略更严格,且涉及安全合规,不存在类似“Admin@123”这类通用默认密码,下面直接拆解密码问题的几种真实场景和解决办……

    2026年9月21日
    0270
  • procc域名是什么?注册流程与价值解析全攻略

    procc域名:专业领域的品牌标识新选择在数字时代,域名是企业的“数字门牌”,直接关联品牌形象与用户认知,随着互联网发展,域名后缀已从传统的.com、.net扩展至更多细分领域,procc”作为新兴专业后缀,凭借其行业属性与独特性,成为专业服务领域的品牌标识新选择,本文将系统介绍procc域名的定义、特点、优势……

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

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

      2026年1月10日
      020
  • 长城宽带路由怎么设置?长城宽带路由器设置教程

    长城宽带路由设置核心结论:长城宽带用户实现网络性能最优化的关键在于彻底关闭光猫路由模式并启用专业路由器桥接,同时必须将 DNS 服务器手动指定为114.114.114或5.5.5以规避运营商默认 DNS 的解析延迟与广告劫持,单纯依赖运营商默认配置无法发挥千兆宽带的真实速度,唯有通过硬件级桥接配合云端智能管理……

    2026年4月18日
    02785

发表回复

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