nc 实现两台主机间的文件传输(不需要输密码)

Linux 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输入/输出模式,只在扫描通信端口时使用。

实例

TCP端口扫描

   nc -v -z -w2 192.168.0.3 1-100   #扫描192.168.0.3 的端口 范围是 1-100

# nc -v -z -w2 192.168.0.3 1-100 
192.168.0.3: inverse host lookup failed: Unknown host
(UNKNOWN) [192.168.0.3] 80 (http) open
(UNKNOWN) [192.168.0.3] 23 (telnet) open
(UNKNOWN) [192.168.0.3] 22 (ssh) open

 

扫描UDP端口

# nc -u -z -w2 192.168.0.1 1-1000   //扫描192.168.0.1 的端口 范围是 1-1000

 

扫描指定端口

  nc -nvv 192.168.0.1 80   //扫描 80端口

# nc -nvv 192.168.0.1 80 //扫描 80端口
(UNKNOWN) [192.168.0.1] 80 (?) open
y  //用户输入

文件传输

1. 虚拟机(Linux)与Windows之间传输文件; 
2. 不同PC间(可以是不同系统);

无需安装烦人的samba, FTP, httpd, ... 
纯粹TCP / UDP传输,方便!!!!

一般先打开监听方。这样就可以快速传输文件了。

use nc to transmit data between hosts
        经过上面对nc的简介,估计不少同学已经知道怎么用nc来实现两台机器间的文件传输了。这里对实现流程做简单说明。
        1)在数据接收方的机器上侦听指定端口

  1. nc -l -p 8210 > demo.txt        # 在本机8210端口侦听TCP连接,将收到的数据写入文本文件  
  2. nc -l -p 8210 > demo.tar.bz2    # 在本机8210端口侦听TCP连接,将收到的数据写成压缩文件  

        2)在数据发送方机器上向指定地址(ip+port)以TCP方式发送数据  

  1. nc dest_ip 8210 < demo.txt                           # 向ip为dest_ip的机器的8210端口发送demo.txt文件  
  2. nc dest_ip 8210 < $(tar -tcvf demo.tar.bz2 demo.txt) # 压缩后发送  

        3)-v打印出错信息
        接收方:nc -v -l -p 8210 
        发送方:nc -v dest_ip 8210

        注意:使用nc传文件时,需注意操作次序,receiver先侦听端口,sender向receiver所在机器的该端口发送数据。否则发送失败

 

参考:

https://www.cnblogs.com/johnwang/p/3227946.html

https://blog.csdn.net/Zhanglihe992/article/details/78626247

 

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值