一、使用背景
由于主机、网络等限制,两台主机间不能通过scp命令进行传输,此时就用到了nc命令的文件传输功能。
二、nc可以做什么
1、作用
(1)实现任意TCP/UDP端口的侦听,nc可以作为server以TCP或UDP方式侦听指定端口
(2)端口的扫描,nc可以作为client发起TCP或UDP连接
(3)机器之间传输文件
(4)机器之间网络测速
2、常用参数:
1) -l
用于指定nc将处于侦听模式。指定该参数,则意味着nc被当作server,侦听并接受连接,而非向其它地址发起连接。
2) -p <port>
暂未用到(老版本的nc可能需要在端口号前加-p参数,下面测试环境是centos6.6,nc版本是nc-1.84,未用到-p参数)
3) -s
指定发送数据的源IP地址,适用于多网卡机
4) -u
指定nc使用UDP协议,默认为TCP
5) -v
输出交互或出错信息,新手调试时尤为有用
6)-w
超时秒数,后面跟数字
7)-z
表示zero,表示扫描时不发送任何数据
三、文件传输使用方法
1、操作顺序
接收者先打开侦听端口,等待发送者使用该端口,向自己所在机器发送数据。
nc -l
2、操作方法
##传输文件:
nc -l 8001 > /data/test0104.sql ----接收者执行
nc 172.16.160.20 8001 < /data/test-schema.sql ----传输者执行
##传输目录
1、9.16.98.81 在传输目录启动监听
nc -l 8001 | tar xfvz - ----接收者执行
tar cfz - * | nc 172.16.160.20 8001 ----接收者执行




