nc 命令的使用
语 法: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)端口扫描或测试联通
[root@*.*hdpdev02102 ~]# nc -u -v -w 2 *.*.237.104 -z 20011-20015
Connection to *.*.237.104 20011 port [udp/isdnlog] succeeded!
Connection to *.*.237.104 20012 port [udp/vboxd] succeeded!
[root@*.*hdpdev02102 ~]# nc -uvz *.*.237.106 20013
[root@*.*hdpdev02102 ~]# nc -uvz *.*.237.105 20013
Connection to *.*.237.105 20013 port [udp/*] succeeded!
[root@*.*hdpdev02102 ~]# nc -uvz *.*.237.106 20013
[root@*.*hdpdev02102 ~]# nc -uvz -w 2 *.*.237.106 20013
2)传输文件
发送端开启端口监听和被传输的文件
[root@*.*hdpdev02102 ~]# nc -l 1234 < test.txt #此时这个命令不会断掉
再新开一个tty可以看到 已开启监听1234端口
[root@*.*hdpdev02102 ~]# netstat -tunlp|grep 1234
tcp 0 0 0.0.0.0:1234 0.0.0.0:* LISTEN 13210/nc
接收端使用nc访问发送端的端口并接受文件
[root@*.*hdpdev02103 ~]# nc *.*.237.104 1234 > test.txt
发送端的临时开启的1234端口被接收端nc访问后自动关闭监听
[root@*.*hdpdev02102 ~]# netstat -tunlp|grep 1234
[root@*.*hdpdev02102 ~]#
3)聊天
nc还可以作为简单的字符下聊天工具使用,同样的,server1上需要启动监听:
[root@*.*hdpdev02102 ~]# nc -l 1234
server2上访问server1的1234
[root@*.*hdpdev02103 ~]# nc *.*.237.104 1234
这样,双方就可以相互交流了。使用Ctrl+D正常退出。