潇湘夜雨移动版

主页 > 系统 > 操作系统 >

nc工具使用

Linux中nc命令是一个功能强大的网络工具,全称是netcat。

 

语法:

nc [-hlnruz][-g<网关...>][-G<指向器数目>][-i<延迟秒数>][-o<输出文件>][-p<通信端口>][-s<来源位址>][-v...][-w<超时秒数>][主机名称][通信端口...]

参数说明:

-g<网关> 设置路由器跃程通信网关,最丢哦可设置8个。

-G<指向器数目> 设置来源路由指向器,其数值为4的倍数。

-h 在线帮助。

-i<延迟秒数> 设置时间间隔,以便传送信息及扫描通信端口。

-l 使用监听模式,管控传入的资料。

-n 直接使用IP地址,而不通过域名服务器。

-o<输出文件> 指定文件名称,把往来传输的数据以16进制字码倾倒成该文件保存。

-p<通信端口> 设置本地主机使用的通信端口。

-r 乱数指定本地与远端主机的通信端口。

-s<来源位址> 设置本地主机送出数据包的IP地址。

-u 使用UDP传输协议。

-v 显示指令执行过程。

-w<超时秒数> 设置等待连线的时间。

-z 使用0输入/输出模式,只在扫描通信端口时使用。

实例:

1、TCP端口扫描

# nc -v -z -w2 127.0.0.1 1-100
Connection to 127.0.0.1 22 port [tcp/ssh] succeeded!
Connection to 127.0.0.1 53 port [tcp/domain] succeeded!
Connection to 127.0.0.1 80 port [tcp/http] succeeded!
...
nc: connect to 127.0.0.1 port 100 (tcp) failed: Connection refused

2、从192.168.1.2拷贝文件到192.168.1.3

首先在接收端192.168.1.3上: nc -l 1234 > test.txt

然后在发送端192.168.1.2上: nc 192.168.1.3 < test.txt

注意:先运行接收端,指定一个端口为1234,文件为test.txt,再执行发送端,并且发送端必须存在同名的文件test.txt

3、传输目录

从server1(192.168.16.233)拷贝nginx目录内容到server2(192.168.48.47)上。需要先在server2上,用nc激活监听,

server2上运行:# nc -l 1234|tar -zxvf-

server1上运行:# tar -zcvf - nginx | nc 192.168.48.47 1234 

4、简单聊天工具

在192.168.1.2上: nc -l 1234

在192.168.1.3上: nc 192.168.1.2 1234

这样,双方就可以相互交流了。使用ctrl+C(或D)退出

5、其它版本
Linux 7 的版本nc原版本已经不支持,而是nmap-ncat,虽然也支持nc命令,但语法和功能有所差异。

[root@jdglj ~]# netstat -anulp
Active Internet connections (servers and established)
Proto Recv-Q Send-Q Local Address           Foreign Address         State       PID/Program name    
udp        0      0 0.0.0.0:68              0.0.0.0:*                           790/dhclient        
udp        0      0 172.18.190.252:123      0.0.0.0:*                           1218/ntpd           
udp        0      0 127.0.0.1:123           0.0.0.0:*                           1218/ntpd           
udp        0      0 0.0.0.0:123             0.0.0.0:*                           1218/ntpd           
udp        0      0 0.0.0.0:51111           0.0.0.0:*                           790/dhclient        
udp6       0      0 :::123                  :::*                                1218/ntpd           
udp6       0      0 :::22065                :::*                                790/dhclient        
#测试udp68端口
[root@jdglj ~]# nc -u -v -z -w 1 localhost 68  
Ncat: Version 7.50 ( https://nmap.org/ncat )
Ncat: Connected to 127.0.0.1:68.
Ncat: UDP packet sent successfully
Ncat: 1 bytes sent, 0 bytes received in 2.01 seconds.
#测试udp623端口
[root@jdglj ~]# nc -u -v -z -w 1 localhost 623
Ncat: Version 7.50 ( https://nmap.org/ncat )
Ncat: Connected to 127.0.0.1:623.
Ncat: Connection refused.
 
(责任编辑:liangzh)