nc命令的作用
- 实现任意TCP/UDP端口的侦听,nc可以作为server以TCP或UDP方式侦听指定端口
- 端口的扫描,nc可以作为client发起TCP或UDP连接
- 机器之间传输文件
- 机器之间网络测速
nc命令的安装
sh-4.2# yum -y install nmap-ncat
常用参数
-l 用于指定nc将处于侦听模式。指定该参数,则意味着nc被当作server,侦听并接受连接,而非向其它地址发起连接。
-p 暂未用到(老版本的nc可能需要在端口号前加-p参数,下面测试环境是centos6.6,nc版本是nc-1.84,未用到-p参数)
-s 指定发送数据的源IP地址,适用于多网卡机
-u 指定nc使用UDP协议,默认为TCP
-v 输出交互或出错信息,新手调试时尤为有用
-w 超时秒数,后面跟数字
常用示例
sh-4.2# nc -l 9999 # 开启一个本地9999的TCP协议端口,由客户端主动发起连接,一旦连接必须由服务端发起关闭
sh-4.2# nc -vw 2 192.168.21.248 11111 # 通过nc去访问192.168.21.248主机的11111端口,确认是否存活;可不加参数
sh-4.2# nc -ul 9999 # 开启一个本地9999的UDP协议端口,客户端不需要由服务端主动发起关闭
sh-4.2# nc 192.168.21.248 9999 < test # 通过192.168.21.248的9999TCP端口发送数据文件
sh-4.2# nc -l 9999 > zabbix.file # 开启一个本地9999的TCP端口,用来接收文件内容
# 测试网速
A机器操作如下:
sh-4.2# yum install -y dstat # A机器安装dstat命令
sh-4.2# nc -l 9999 > /dev/null
# B机器开启数据传输
nc 10.0.1.161 9999 </dev/zero
# A机器进行网络监控
sh-4.2# dstat