<p>Nmap可快速扫描远程IP全部65536个端口:先用brew install nmap安装,再执行sudo nmap -p- -T4 [目标IP],其中-p-表示全端口,-T4加速扫描,sudo确保权限以准确识别open状态。</p>

你想在Mac终端里快速确认某个远程IP地址上哪些端口是开放且可连接的,而不是靠图形界面慢慢等扫描结果。
用nmap一次性扫完65536个端口
第一步:确认已安装nmap。如果没装,运行 brew install nmap(需先装Homebrew);若提示command not found,说明还没装Homebrew,先执行 /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"。
第二步:执行完整端口扫描命令 → sudo nmap -p- -T4 [目标IP]。例如扫描192.168.1.100,就输入 sudo nmap -p- -T4 192.168.1.100。【必须加sudo,否则部分端口会显示filtered而非open】
第三步:等待扫描完成。-p- 表示扫描全部65536个端口,-T4 是加速扫描节奏,避免被目标防火墙限速或丢包。扫描时间通常在2~5分钟,取决于网络延迟和目标响应速度。
用系统自带工具替代(不装nmap时)
方法一:用网络实用工具图形界面 → Spotlight搜索“网络实用工具”→打开→切换到“端口扫描”标签→输入目标IP→点击“扫描”。它默认只扫常用端口(1–1024),但能直接显示服务名(如ssh、http),适合快速初筛。
方法二:用lsof反向验证(仅限本机监听端口)→ 这个命令不能扫远程IP,只能查自己机器上哪些端口正在被监听:sudo lsof -i -P -n | grep LISTEN。别误用它去扫别人IP,它根本不会发任何网络包。
快速定位关键端口是否开放
如果你只关心几个特定端口(比如80、443、22、3389),用这行命令最快:sudo nmap -p 22,80,443,3389 -sS [目标IP]。-sS 是TCP SYN扫描,比全端口快得多,且不需要建立完整连接,隐蔽性略高。
注意:某些目标启用了主动防御(如iptables DROP策略),可能让所有端口都显示为filtered,此时nmap无法区分是关闭还是被拦截——你得结合ping、traceroute和实际业务访问来交叉判断。

















