linux之15——nc命令详解
2021/7/19 7:07:13
本文主要是介绍linux之15——nc命令详解,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
Linux nc命令用于设置路由器。
执行本指令可设置路由器的相关参数。
nc命令的作用
- 实现任意TCP/UDP端口的侦听,nc可以作为server以TCP或UDP方式侦听指定端口
- 端口的扫描,nc可以作为client发起TCP或UDP连接
- 机器之间传输文件
- 机器之间网络测速
nc命令的安装
[root@chenshifengdeLinuxServer ~] yum -y install nmap-ncat
语法
nc [-hlnruz][-g<网关...>][-G<指向器数目>][-i<延迟秒数>][-o<输出文件>][-p<通信端口>][-s<来源位址>][-v...][-w<超时秒数>][主机名称][通信端口...]
参数说明:
- -g<网关> 设置路由器跃程通信网关,最多可设置8个。
- -G<指向器数目> 设置来源路由指向器,其数值为4的倍数。
- -h 在线帮助。
- -i<延迟秒数> 设置时间间隔,以便传送信息及扫描通信端口。
- -l 使用监听模式,管控传入的资料。通常 这样代表着为一个 服务等待客户端来链接指定的端口。
- -n 直接使用IP地址,而不通过域名服务器。
- -o<输出文件> 指定文件名称,把往来传输的数据以16进制字码倾倒成该文件保存。
- -p<通信端口> 设置本地主机使用的通信端口。有可能会关闭
- -k<通信端口>强制 nc 待命链接.当客户端从服务端断开连接后,过一段时间服务端也会停止监听。 但通过选项 -k 我们可以强制服务器保持连接并继续监听端口。
- -r 乱数指定本地与远端主机的通信端口。
- -s<来源位址> 设置本地主机送出数据包的IP地址。
- -u 使用UDP传输协议。
- -v 显示指令执行过程。
- -w<超时秒数> 设置等待连线的时间。
- -z 使用0输入/输出模式,只在扫描通信端口时使用。
实例
TCP端口扫描
# 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
扫描192.168.0.3 的端口 范围是 1-100
扫描UDP端口
# nc -u -z -w2 192.168.0.1 1-1000 //扫描192.168.0.3 的端口 范围是 1-1000
扫描指定端口
# nc -nvv 192.168.0.1 80 //扫描 80端口 (UNKNOWN) [192.168.0.1] 80 (?) open y //用户输入
常用示例
[root@chenshifengdeLinuxServer ~] nc -l 9999 # 开启一个本地9999的TCP协议端口,由客户端主动发起连接,一旦连接必须由服务端发起关闭 [root@chenshifengdeLinuxServer ~] nc -vw 2 192.168.21.248 11111 # 通过nc去访问192.168.21.248主机的11111端口,确认是否存活;可不加参数 [root@chenshifengdeLinuxServer ~] nc -ul 9999 # 开启一个本地9999的UDP协议端口,客户端不需要由服务端主动发起关闭 [root@chenshifengdeLinuxServer ~] nc 192.168.21.248 9999 < test # 通过192.168.21.248的9999TCP端口发送数据文件 [root@chenshifengdeLinuxServer ~] nc -l 9999 > zabbix.file # 开启一个本地9999的TCP端口,用来接收文件内容 测试网速 A机器操作如下: [root@chenshifengdeLinuxServer ~] yum install -y dstat # A机器安装dstat命令 [root@chenshifengdeLinuxServer ~] nc -l 9999 > /dev/null B机器开启数据传输 nc 10.0.1.161 9999 </dev/zero A机器进行网络监控 [root@chenshifengdeLinuxServer ~] dstat
例1:代理(浏览器输入120.0.0.1,返回百度首页)
mkfifo /tmp/fifo nc -lk 8080 < /tmp/fifo | sed -l -e 's/^Host.*/Host:www.baidu.com/' | tee -a /tmp/req.log | nc www.baidu.com 80 | tee -a /tmp/res > /tmp/fifo
这篇关于linux之15——nc命令详解的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-12-18git仓库有更新,jenkins 自动触发拉代码怎么配置的?-icode9专业技术文章分享
- 2024-12-18Jenkins webhook 方式怎么配置指定的分支?-icode9专业技术文章分享
- 2024-12-13Linux C++项目实战入门教程
- 2024-12-13Linux C++编程项目实战入门教程
- 2024-12-11Linux部署Scrapy教程:新手入门指南
- 2024-12-11怎么将在本地创建的 Maven 仓库迁移到 Linux 服务器上?-icode9专业技术文章分享
- 2024-12-10Linux常用命令
- 2024-12-06谁看谁服! Linux 创始人对于进程和线程的理解是…
- 2024-12-04操作系统教程:新手入门及初级技巧详解
- 2024-12-04操作系统入门:新手必学指南