当前位置: 首页 > news >正文

Mac测试端口连接的几种方式

在 macOS 上测试端口是否开放,可通过以下三种常用方法实现(推荐优先使用系统自带的 nc 命令,简单高效):

方法 1:用系统自带 nc(netcat)测试(最推荐)

nc 是 macOS 自带工具,无需安装,适合快速测试 TCP/UDP 端口连通性。

命令格式

bash

nc -zv 目标地址 端口号

  • -z:仅扫描端口,不发送实际数据(安全且高效);
  • -v:显示详细连接信息(成功 / 失败会明确提示)。
示例操作
  1. 测试本地 localhost 的 8080 端口:

    bash

    nc -zv localhost 8080
    
    • 若端口开放,返回类似:Connection to localhost port 8080 [tcp/http] succeeded!
    • 若端口关闭,返回类似:nc: connectx to localhost port 8080 (tcp) failed: Connection refused
  2. 测试远程服务器(如 baidu.com 的 443 端口):

    bash

    nc -zv baidu.com 443
    

方法 2:用 curl 测试(适合 HTTP/HTTPS 端口)

curl 也是 macOS 自带工具,仅适用于 HTTP/HTTPS 服务的端口测试(如 80/443/8080 等)。

命令格式

bash

curl -m 5 -I http://目标地址:端口号

  • -m 5:设置超时时间为 5 秒(避免长时间等待);
  • -I:仅获取 HTTP 响应头(无需下载完整内容,快速判断服务是否存活)。
示例操作

测试 http://passport.s.ecust.edu.cn:7081 的端口连通性:

bash

curl -m 5 -I http://passport.s.ecust.edu.cn:7081

  • 若端口开放且服务正常,返回类似:HTTP/1.1 200 OK(或其他 HTTP 状态码,如 302 重定向);
  • 若端口关闭或超时,返回类似:curl: (7) Failed to connect to ... Connection refused

方法 3:用 nmap 测试(功能更强,需安装)

nmap 是专业网络扫描工具,支持复杂端口扫描和服务识别,但需通过 Homebrew 安装。

安装步骤(首次使用需执行)
  1. 安装 Homebrew(若未安装):

    bash

    /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
    
  2. 安装 nmap

    bash

    brew install nmap
    
命令格式

bash

nmap -p 端口号 目标地址

  • -p:指定要扫描的端口(可单个或范围,如 -p 80,443 或 -p 1-1000)。
示例操作

测试 localhost 的 80-100 端口范围:

bash

nmap -p 80-100 localhost

返回结果会列出每个端口的状态(open/closed/filtered 等)和对应的服务(如 http/ssh)。

三种方法对比

工具优点缺点适用场景
nc系统自带、无需安装、快速仅支持基础连通性测试日常快速验证端口是否开放
curl系统自带、适合 HTTP 服务仅限 HTTP/HTTPS 端口测试 Web 服务端口(如 80/443)
nmap功能强、支持复杂扫描需安装、扫描速度较慢专业网络诊断、批量端口扫描

根据需求选择即可:日常快速测试用 nc;Web 服务测试用 curl;深度扫描用 nmap

http://www.xdnf.cn/news/1368577.html

相关文章:

  • 【制作100个Unity游戏】从零开始构建类《月圆之夜》《杀戮尖塔》的卡牌游戏(附带项目源码)
  • CSS 结构伪类选择器
  • C语言开发入门教程:从环境搭建到第一个程序
  • 【lucene】SpanNotQuery 存在的意义
  • 国产化Excel开发组件Spire.XLS教程:Python 读取 CSV 文件,从基础到进阶指南
  • 一文看懂@Bean注解的原理
  • 【C++】用哈希表封装实现unordered_set和unordered_map
  • Ubuntu 操作系统
  • 自动化测试概念与 Web 自动化实战(基于 Selenium)
  • Tensor常见操作
  • pycharm 远程连接服务器报错
  • Java基础第二课:hello word
  • 160.在 Vue3 中用 OpenLayers 解决国内 OpenStreetMap 地图加载不出来的问题
  • 从行业智能体到一站式开发平台,移动云推动AI智能体规模化落地
  • Windows 命令行:mkdir 命令
  • 三菱FX5U PLC访问字变量的某一位
  • Elasticsearch精准匹配与全文检索对比
  • 如何从零开始学习黑客技术?网络安全入门指南
  • 读《精益数据分析》:用户行为热力图
  • 【算法--链表题2】19.删除链表的倒数第 N 个节点:通俗详解
  • 腾讯开源OpenTenBase深度实践:企业级分布式HTAP数据库部署全攻略
  • Qt数据结构与编码技巧全解析
  • Spring - 文件上传与下载:真正的企业开发高频需求——Spring Boot文件上传与下载全场景实践指南
  • 基于stm32的物联网OneNet火灾报警系统
  • 支持向量机(SVM)内容概述
  • Hive高阶函数之行转列JSON数据解析
  • uniapp 引入使用u-view 完整步骤,u-view 样式不生效
  • 要闻集锦|阿里官网调整为四大业务板块;华为云重组多个事业部涉及上千人;群核科技在港交所更新招股书
  • 开源 python 应用 开发(十三)AI应用--百度智能云TTS语音合成
  • vscode 配置 + androidStudio配置