Linux nc 命令

举报
福州司马懿 发表于 2021/11/19 01:47:28 2021/11/19
【摘要】 nc命令的含义 nc 命令的完整拼写是 netcat。它只有25KB,是一个简单可靠的网络工具,可以通过TCP或UDP协议传输读写数据;同时,它还是一个网络应用的Debug分析器,可以根据需要创建各种不...

nc命令的含义

nc 命令的完整拼写是 netcat。它只有25KB,是一个简单可靠的网络工具,可以通过TCP或UDP协议传输读写数据;同时,它还是一个网络应用的Debug分析器,可以根据需要创建各种不同类型的网络连接

安装方式

ubuntu

Ubuntu上默认安装的是netcat-openbsd,而不是经典的netcat-traditional. 因此,我们要想使用netcat-traditional则需要自己进行安装与配置。然后将nc替换为第2个traditional模式

sudo apt-get -y install netcat-traditional
sudo update-alternatives --config nc

  
 
  • 1
  • 2

在这里插入图片描述

使用 type -a nc 命令查看它在环境变量中的位置
在这里插入图片描述

centos

centos上的安装就简单多了,直接 sudo yum install -y nc 即可
在这里插入图片描述

常用参数

可以使用 man ncnc -h 来查看帮助文档

在这里插入图片描述

  • g 设置路由器跃程通信网关,最多可设置8个
  • G 设置来源路由指向器,其数值为4的倍数
  • h 在线帮助
  • i 设置时间间隔,单位秒,以便传送信息及扫描通信端口
  • k 保持连接存活
  • l 将nc设置为侦听模式。指定该参数,则意味着nc被当作server,侦听并接受连接,而非向其它地址发起连接
  • n 直接使用IP地址,而不通过域名服务器
  • o 指定输出文件的名称,把往来传输的数据以16进制字码倾倒成该文件保存
  • p 设置本地主机使用的通信端口
  • r 乱数指定本地与远端主机的通信端口
  • s 指定发送数据的源IP地址,适用于多网卡机
  • u 指定nc使用UDP协议,默认为TCP
  • v 输出交互或出错信息,新手调试时尤为有用
  • w 超时秒数,后面跟数字
  • z 使用0输入/输出模式,只在扫描通信端口时使用

作用

  • 实现任意TCP/UDP端口的侦听,nc可以作为server以TCP或UDP方式侦听指定端口
    若该端口未打开,则使用 nc -lkp <port> 开启指定端口并进行监听;nc <ip> <port> 监听指定端口并发送消息。至此,一个简单的双向通信聊天室完成。
    在这里插入图片描述
    若端口为开启,则会提示连接拒绝
    在这里插入图片描述

  • 端口的扫描,nc可以作为client发起TCP或UDP连接
    可以扫描指定端口,或一个端口范围 nc -v -z -w2 <ip> <port>
    在这里插入图片描述

  • 机器之间传输文件
    首先,在A机上监听指定端口,并将该端口得到的数据重定向到文件
    nc -lp 9999 > test.txt
    然后,在B机上向该端口写入文件
    nc <A机IP> 9999 < test2.txt
    唯一的缺点是没有进度显示,因此你并不能准确的知道是否已经完成。

  • 机器之间网络测速
    步骤1,A机器先启动接收数据的命令,监听自己的9999端口,把来自这个端口的数据都输出给空设备(这样不写磁盘,测试网速更准确)
    nc -l 9999 >/dev/null
    步骤2,B机器发送数据,把无限个0发送给A机器的9999端口
    nc <A机IP> 9999 < /dev/zero
    最后,在A机器上,使用dstat命令查看当前网速,dstat命令比较直观,它可以查看当前cpu,磁盘,网络,内存页和系统的一些当前状态指标。我们只需要看下面我选中的这2列即可, recv是receive的缩写,表示接收的意思,send是发送数据,另外注意数字后面的单位B,KB,MB
    在这里插入图片描述

文章来源: blog.csdn.net,作者:福州-司马懿,版权归原作者所有,如需转载,请联系作者。

原文链接:blog.csdn.net/chy555chy/article/details/118397479

【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

举报
请填写举报理由
0/200