nc命令使netcat命令的简称
nc命令的作用
nc命令所做的就是在两台电脑之间建立连接并返回两个数据流,也可以传输文件啥的。
- 端口的扫描,nc可以作为client发起TCP或UDP连接
- 实现任意的TCP/UDP端口的侦听,nc可以作为server,以TCP或UDP的方式侦听指定端口
- 机器之前进行传输文件
参数解释
-l 用于指定nc将处于侦听模式。指定该参数,则意味着nc被当作server,侦听并接受连接,而非向其它地址发起连接。
-p 暂未用到(老版本的nc可能需要在端口号前加-p参数,下面测试环境是centos6.6,nc版本是nc-1.84,未用到-p参数)
-s 指定发送数据的源IP地址,适用于多网卡机
-u 指定nc使用UDP协议,默认为TCP
-v 输出交互或出错信息,新手调试时尤为有用
-w 超时秒数,后面跟数字
通信
如果要在主机A上发送消息,能够在主机B上实时的看到
主机B的ip:192.168.1.102
nc -l 6666
解释:实际上就是指定了nc侦听端口6666,nc命令在66666端口启动了一个tcp服务器,所有的标准输出或者输入都会输出到该端口并显示。
主机A的ip:192.168.1.101
nc 192.168.1.102 6666
解释:nv命令会连接指定ip所在的主机B的端口6666
此时,主机A与主机B就已经建立了通信,可以相互通信了,在主机A或主机B的窗口输入任何数据,都是被传输到另一台主机。
示例如下:
在主机A输入信息:
此时在主机B可以得到传输的信息:
在主机B输入信息:
此时在主机A可以得到传输的信息: