服务公告

服务公告 > 技术教程 > 用 nc 测端口连通性:比 telnet 更顺手

用 nc 测端口连通性:比 telnet 更顺手

发布时间:2026-10-13 16:26
## nc 是什么 netcat 绰号网络界的瑞士军刀,体积极小,能力极全:建 TCP 连接、收发 UDP 包、监听端口、传文件,一条命令一个用途。测端口连通是它最高频的用法:telnet 测完端口要按组合键退出,交互别扭,nc 一次探测自动返回退出码,天然适合写进脚本与巡检。多数发行版都能直接安装,服务器排查时随手可用。它和 ss、tcpdump 组成连通性排查三件套:ss 看本机监听,nc 测两端连通,tcpdump 看包级细节。 ## 用法一:TCP 端口探测 ```bash nc -zv 目标地址 443 ``` -z 只探测不传数据,-v 输出详细信息。端口开放时显示 succeeded 且退出码为零,关闭或被防火墙丢弃时超时或拒绝,退出码非零。批量探测多个端口写成循环,配合退出码判断,巡检脚本十分钟就能搭起来。与 telnet 的差别就在这:结果可编程判断,没有交互残留,探测完自动退出,干净利落。探测结果要分三类解读:succeeded 是端口开放;connection refused 是目标明确拒绝,端口没人听或被本机策略拒绝;超时多为防火墙静默丢包。 ## 用法二:UDP 模式 加 -u 切到 UDP: ```bash nc -u -zv 目标地址 53 ``` UDP 无连接的特性让探测结果需要谨慎解读:收到明确拒绝说明端口没人听,而无回应既可能是开放也可能是中途被丢,结论要结合上下文,比如同时用 DNS 查询实测验证 53 端口。UDP 探测适合作为线索而非定论,真正确认还得靠应用层的功能测试。 ## 用法三:监听模式 -l 让 nc 变成临时服务器: ```bash nc -l 9000 ``` 一台机器开监听,另一台 nc 连上去,两边敲的字互相可见,最原始的聊天与连通验证。它还能传文件:接收方监听并重定向到文件,发送方连接并把文件喂进去,应急场景下绕开 FTP 与 scp 的依赖。测本机端口是否真的对外,先在本机 nc 本机地址,再到外部机器 nc 公网地址,两次结果对比,防火墙问题立刻现形。临时端口用完记得关,监听进程挂着就是免费的后门。加 -k 参数还能保持监听处理多个连接,做极简的端口服务模拟够用。顺云云服务器的网络排查工具箱里,nc 值得常驻。