别只会 telnet!nc 命令才是网络调试天花板,附完整案例 一、简介ncNetcat被誉为网络瑞士军刀轻量命令行网络工具支持 TCP/UDP 连接、端口扫描、测速、文件传输、简易聊天、后门调试等绝大多数 Linux 自带无自带可通过包管理器安装。二、安装 Netcat1. Debian / Ubuntu 系列apt直接装 netcat 会提示虚拟包冲突二选一安装# 推荐 OpenBSD 版本功能更规范sudoaptinstallnetcat-openbsd# 传统版老旧部分参数行为不同sudoaptinstallnetcat-traditional报错说明netcat只是虚拟包系统需要你手动指定具体实现包。2. CentOS / RHEL / Rockyyum/dnfsudodnfinstallnc# 或旧版yumsudoyuminstallnc3. Alpine Linuxapkaddnetcat-openbsd三、核心常用参数速览参数作用-l监听模式充当服务端-z端口扫描只探测连通不收发数据-v详细输出-vv更详细-u使用 UDP 协议默认TCP-p指定本地端口-w连接超时时间秒四、实用实操案例案例1端口扫描探测端口开放语法nc-vz目标IP 起始端口-结束端口示例扫描 192.168.0.102 1~100 端口打印详细日志nc-vz192.168.0.1021-100成功开放端口输出示例Connection to 192.168.0.102 port 53 [tcp/domain] succeeded! Connection to 192.168.0.102 port 80 [tcp/http] succeeded!补充扫描UDP端口加-unc-vzu192.168.0.10253案例2两台机器测速原理服务端监听并丢弃数据客户端生成大量零字节流传输dd统计速度。服务端接收端nc-l9999/dev/null客户端发送端# 发送100MB数据测试ddif/dev/zerobs1Mcount100|nc192.168.0.1029999输出示例自动显示传输速率1000 records in 1000 records out 104857600 bytes (105 MB, 100 MiB) copied, 0.001434 s, 73.1 GB/s案例3文件互传场景AA机器发文件 → B机器接收保存接收端B服务端先执行nc-l9999receive.tar.gz发送端Anc192.168.0.1029999send.tar.gz场景B目录打包传输配合tar适合传整个文件夹接收端nc-l9999|tar-zxvf-发送端tar-zcf- /data/test|nc192.168.0.1029999案例4简易双向聊天机器B监听nc-l9999机器A连接nc192.168.0.1029999两端输入文字会实时互通。案例5手动测试TCP服务连通性替代 telnet 探测端口是否通nc-v192.168.0.10280# 可直接发HTTP请求测试网站GET / HTTP/1.1 Host:192.168.0.102五、补充注意事项防火墙放行端口使用-l监听端口时需在防火墙开放对应端口如9999否则外部无法连接UDP扫描局限性UDP无握手nc -zu扫描准确率低生产端口探测推荐 nmap安全风险nc监听不加权限控制可被任意连接生产环境禁止公网开放nc监听端口避免被利用反弹shell两个版本差异netcat-traditional支持-e反弹shellnetcat-openbsd默认移除-e参数渗透场景需注意。六、总结nc 轻量无依赖日常运维四大核心场景快速端口连通性探测内网两台机器高速传文件内网带宽测速调试TCP/UDP网络服务。是服务器运维、网络排错必备工具。