每天一个liunx 命令 nc

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了每天一个liunx 命令 nc相关的知识,希望对你有一定的参考价值。

   

    NetCat,在网络工具中有“瑞士军刀”美誉,其有Windows和Linux的版本。因为它短小精悍(1.84版本也不过25k,旧版本或缩减版甚至更小)、功能实用,被设计为一个简单、可靠的网络工具,可通过TCP或UDP协议传输读写数据。

  

  使用方法:

  

usage: nc [-46DdhklnrStUuvzC] [-i interval] [-p source_port]

 [-s source_ip_address] [-T ToS] [-w timeout] [-X proxy_version]

 [-x proxy_address[:port]] [hostname] [port[s]]


  nc 命令常见选项 

-g<网关>   设置路由器跃程通信网关,最丢哦可设置8个。
-G<指向器数目>   设置来源路由指向器,其数值为4的倍数。
-h   在线帮助。
-i<延迟秒数>   设置时间间隔,以便传送信息及扫描通信端口。
-l   使用监听模式,管控传入的资料。
-n   直接使用IP地址,而不通过域名服务器。
-o<输出文件>   指定文件名称,把往来传输的数据以16进制字码倾倒成该文件保存。
-p<通信端口>   设置本地主机使用的通信端口。
-r   乱数指定本地与远端主机的通信端口。
-s<来源位址>   设置本地主机送出数据包的IP地址。
-u   使用UDP传输协议。
-v   显示指令执行过程。
-w<超时秒数>   设置等待连线的时间。
-z   使用0输入/输出模式,只在扫描通信端口时使用。

  

  软件安装 (以centos 为例)


  yum install nc -y

  


  举例说明 

 

 远程拷贝文件 不需要输入用户名密码


 目的主机监听


nc -l 监听端口[ 未使用端口] > 要接收的文件名


 nc -l 23456 > 20170113_all.sql


打开另外一个终端查看端口是否监听到 


 netstat -tnlp | grep 23456

tcp        0      0 0.0.0.0:23456               0.0.0.0:*                   LISTEN 



源主机发起请求 


nc 目的主机ip 目的端口 < 要发送的文件 


 nc -l 23456 < 20170113_all.sql



检查目的主机文件是否拷贝


[[email protected] ~]# ll 20170113_all.sql 

-rw-r--r-- 1 root root 27903998 Feb 23 10:23 20170113_all.sql


端口扫描功能


[[email protected] ~]# nc -v -z -w2 192.168.10.31 1-3 

nc: connect to 192.168.10.31 port 1 (tcp) failed: Connection refused

nc: connect to 192.168.10.31 port 2 (tcp) failed: Connection refused

nc: connect to 192.168.10.31 port 3 (tcp) failed: Connection refused


 简单聊天功能


[[email protected] ~]# nc -l 1234


[[email protected] ~]# nc 192.168.10.31 1234


开启聊天模式,停止聊天一段 ctrl+z 终止


server 2 发送消息

[[email protected] ~]# nc 192.168.10.31 1234

hi


server 1 接收消息

[[email protected] ~]# nc -l 1234

hi


拷贝目录下文件的功能 


目的拷贝 32 上的一个目录到 31 服务器上


31 服务器器操作 


[[email protected] ~]# nc -l 12345 | tar -C /tmp/ -zxf-


31 服务器随机 监听 12345 端口 ,将拷贝过的文件放到 /tmp/ 目录下面


32 服务器操作 


[[email protected] ~]# tar -zcvf- keepalived_offline_install | nc 192.168.10.31 12345


检查 


[[email protected] tmp]# ls keepalived_offline_install/

keepalived_offline_install.sh  rpm




本文出自 “sdsca” 博客,请务必保留此出处http://sdsca.blog.51cto.com/10852974/1900477

以上是关于每天一个liunx 命令 nc的主要内容,如果未能解决你的问题,请参考以下文章

每天一个liunx 命令 cp

每天一个liunx命令3之awk实现文本文件的抓取

每天一个liunx命令10之nohup和xargs

每天一个liunx命令10之nohup和xargs

每天一个liunx命令4之 ps -ef ,ps -aux ,ps aux

每天学五分钟 Liunx 0111 | 服务篇:进程权限