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

相关推荐

  • 服务器IP ping不通怎么办?快速排查与解决方法

    当无法通过 ping 命令连接到服务器 IP 时,可能是多种原因导致的,以下是系统化的排查步骤和解决方案:检查本地网络测试本地连接:ping 127.0.0.1 # 检查本地网络协议栈是否正常ping 8.8.8.8 # 测试公网连通性(如谷歌 DNS)若 0.0.1 失败 → 本地 TCP/IP 协议故障(重……

    2026年2月7日
    080
  • 为什么ping域名请求找不到主机? | DNS解析失败解决方法

    “ping 域名请求找不到主机”这个错误(通常在 Windows 上是 Ping 请求找不到主机 xxx,请检查该名称,然后重试,,在 Linux/macOS 上是 ping: cannot resolve xxx: Unknown host)表明你的计算机无法将你输入的域名解析为对应的 IP 地址,这通常意味……

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

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

      2026年1月10日
      020
  • 如何选择杭州的容错型IDC虚拟主机业务来确保高可用性?

    在数字经济浪潮席卷全球的今天,杭州作为中国互联网产业的高地,其商业生态对线上服务的稳定性和连续性提出了前所未有的高要求,无论是电商大促期间的瞬时流量洪峰,还是金融交易系统分秒必争的数据处理,任何一次意外的服务中断都可能带来巨大的经济损失和品牌声誉的损害,在这样的背景下,杭州容错型IDC虚拟主机业务应运而生,它不……

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

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

    2025年10月13日
    0750

发表回复

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