nc是netcat工具的命令,是一个很好用的网络工具。比如,可以用来端口扫描,文件传输等网络功能。实际命令是ncat。
参数说明:
- -g<网关> 设置路由器跃程通信网关,最多可设置8个。
- -G<指向器数目> 设置来源路由指向器,其数值为4的倍数。
- -h 在线帮助。
- -i<延迟秒数> 设置时间间隔,以便传送信息及扫描通信端口。
- -l 使用监听模式,管控传入的资料。
- -n 直接使用IP地址,而不通过域名服务器。
- -o<输出文件> 指定文件名称,把往来传输的数据以16进制字码倾倒成该文件保存。
- -p<通信端口> 设置本地主机使用的通信端口。
- -r 乱数指定本地与远端主机的通信端口。
- -s<来源位址> 设置本地主机送出数据包的IP地址。
- -u 使用UDP传输协议。
- -v 显示指令执行过程。
- -w<超时秒数> 设置等待连线的时间。
- -z 使用0输入/输出模式,只在扫描通信端口时使用。
TCP端口扫描
nc -v -z -w2 127.0.0.1 1-100 localhost@408560 ~ % nc -v -z -w2 127.0.0.1 1-100 nc: connectx to 127.0.0.1 port 1 (tcp) failed: Connection refused nc: connectx to 127.0.0.1 port 2 (tcp) failed: Connection refused nc: connectx to 127.0.0.1 port 3 (tcp) failed: Connection refused nc: connectx to 127.0.0.1 port 4 (tcp) failed: Connection refused Connection to 127.0.0.1 22 port [tcp/ssh] succeeded! Connection to 127.0.0.1 8866 port [tcp/*] succeeded!
UDP端口扫描
nc -v -z -w2 -u 127.0.0.1 1-100 localhost@408560 ~ % nc -v -z -w2 -u 127.0.0.1 1-100 Connection to 127.0.0.1 port 1 [udp/tcpmux] succeeded! Connection to 127.0.0.1 port 2 [udp/compressnet] succeeded! Connection to 127.0.0.1 port 3 [udp/compressnet] succeeded! Connection to 127.0.0.1 port 4 [udp/*] succeeded!
检测TCP端口是否正常
nc -vz 127.0.0.1 8080 Ncat: Version 7.50 ( https://nmap.org/ncat ) Ncat: Connected to 127.0.0.1:8080. Ncat: 0 bytes sent, 0 bytes received in 0.01 seconds. # client bs单位块大小 count块数量,bs不要太大不然内存不够 dd if=/dev/zero bs=2 count=1 | nc 192.168.0.95 8080 1+0 records in 1+0 records out 2 bytes (2 B) copied, 1.8711e-05 s, 107 kB/s
检测UDP端口是否正常
nc -zvu 127.0.0.1 8888 Hello, UDP client. index: 3689178 Ncat: UDP packet sent successfully Ncat: 1 bytes sent, 33 bytes received in 2.01 seconds. echo "Hello from PC" | nc -w14 -u -v 127.0.0.1 8888 Ncat: Version 7.50 ( https://nmap.org/ncat ) Ncat: Connected to 127.0.0.1:8888. Ncat: 14 bytes sent, 0 bytes received in 0.01 seconds.