四层运维工具nc
nc命令全名为netcat,顾名思义就是通过TCP或UDP从网络读写数据。
很多事情不一定非得抓包,nc也能发挥巨大作用。
1、传输文件
使用<>重定向符(只适用单文件,不推荐、失败时 ">" 产生空文件)
nc -l 8888 < demo.txt # 在本机8888端口侦听TCP连接,将收到的数据写入文件
nc ip 8888 > demo.txt # 文件接收端:将文件内容通过网络"cat"到远端
使用tar传输文件(推荐,好处是保留了原目录结构和权限)
tar cz demo1.txt demo_dir/ | nc -l 8888 # 监听8888端口,有连接时开始tar打包并"cat"到远端
nc ip 8888 | tar zx # 连接、接收数据、解压一步到位。
2、建立网络管道
nc -l 8888 # 接收消息
echo msg | nc ip 8888 # 发送消息
3、迁移生产机房数据到测试机房(运维电脑建管道)
tar cz demo1.txt demo_dir/ | nc -l 8888 # 生产机房ipA
nc -l 8888 | tar zx # 测试机房ipB
nc ipA 8888 | nc ipB 8888 # 运维个人电脑,连通两台机器的8888端口。
4、测试网络连通 (排查测试机房的lbg转发udp问题)
curl 调试http,即7层非常高效。但如何调试4层网络呢?答案就是nc
测试机房lbg做了公网udp服务的映射,但测试同学发现程序出错,怀疑网络问题,找运维同学排查。
nc -ul 9999 # 服务ipS 监听9999端口 该端口映射到公网 ipVS:portVS
nc -zuv ipS 9999 # 内网udp连通成功 显示Connection to ipS 9999 port [udp/*] succeeded!
nc -zuv ipVS portVS # 公网udp连通失败 显示Connection to ipVS portVS port [udp/*] fail!
一、上如何检查tcp?以上的参数u去掉,默认就是tcp。
二、进一步写出nagios插件,检查udp服务端口(以部署在PP的udp消息推送监控中)
5、代替telnet,测试mc,浮云等等。
echo -e "stats\r\n" | nc ipS portMC # 非交换式查看mc的状态。
echo -e "INFO\r\n" | nc ipS portREDIS # 非交换式查看redis的状态。
非交换的set、get检查浮云ds # 已部署到PP的浮云监控。
6、使用nc发邮件,发送http请求,反弹shell,端口转发等等,请man nc
echo -e "GET / HTTP/1.0\r\n" | nc uc.cn 80
四层运维工具nc的更多相关文章
- CheungSSH国产自动化运维工具开源Web界面
CheungSSH web2.0 发布文档 CheungSSH 简介 CheungSSH是一款国人自主研发的Linux运维自动化管理服务器软件,秉着为企业降低运营成本,解放管理员双手和自动化生产的理念 ...
- 自动化运维工具Ansible详细部署 (转载)
自动化运维工具Ansible详细部署 标签:ansible 原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 .作者信息和本声明.否则将追究法律责任.http://sofar.blog. ...
- 【运维工具】Git代码发布系统
引言 代码发布系统是互联网公司必备的运维系统,作用主要用户发布业务代码 到 业务服务器 为什么需要代码发布系统 有的同学可能说,我们公司服务器就那么一台,做个发布系统太麻烦了? 不认同这说法 发布系统 ...
- Python自动化运维工具fabric的安装
使用shell命令进行复杂的运维时,代码往往变得复杂难懂,而使用python脚本语言来编写运维程序,就相当于开发普通的应用一样,所以维护和扩展都比较简单,更重要的是python运维工具fabric能自 ...
- distri.lua的web运维工具
我的新手游项目很快就要进入到寻找发行商的环节,最近几天相对较空闲,逐将工作重心转移到服务器组运维工具的制作上. 回想一年之前经历的那个不算成功的端游项目,因为运维工具设计得不合理,使用十分不方便,游戏 ...
- 自动化运维工具之 Ansible 介绍及安装使用
一.初识Ansible 介绍: Absible 使用 模块(Modules)来定义配置任务.模块可以用标准脚本语言(Python,Bash,Ruby,等等)编写,这是一个很好的做法,使每个模块幂等.A ...
- 【运维工具】logrotate 日志管理神器
服务器经常会产生各种各样的日志文件,我们需要定期清理 日志的分类 系统日志 应用日志 系统日志 例如系统的history 历史信息 crontab的运行日志 一般系统日志系统都帮我们运维好了,不 ...
- 自动化运维工具之ansible
自动化运维工具之ansible 一,ansible简介 ansible是新出现的自动化运维工具,基于Python开发,集合了众多运维工具(puppet.cfengine.chef.func.fab ...
- 自动化运维工具Ansible详细部署 - 人生理想在于坚持不懈 - 51CTO技术博客
自动化运维工具Ansible详细部署 - 人生理想在于坚持不懈 - 51CTO技术博客 自动化运维工具Ansible详细部署
随机推荐
- 由.Net类库提供的农历计算(C#农历)-获取当前日期的农历日期
; i <= chineseDate.GetMonthsInYear(DateTime.Now.Year); i++) { Console.W ...
- 问题-[VMware Workstation]断电后,重启电脑,之后就提示“内部错误”
问题现象:突然断电后,重启电脑,再打开VMware Workstation,启动不了.之后就提示“内部错误”.问题原因:希望高人指点.问题处理:关闭VMware Workstation,在快捷方式上, ...
- JBOSS实现RMI时注意的问题
使用JBOSS部署EJB服务后通过RMI访问报错: javax.naming.CommunicationException: Could not obtain connection to any of ...
- 【推荐】JAVA基础◆浅谈3DES加密解密
国内私募机构九鼎控股打造APP,来就送 20元现金领取地址:http://jdb.jiudingcapital.com/phone.html内部邀请码:C8E245J (不写邀请码,没有现金送)国内私 ...
- 为 vsftpd 启动 vsftpd:500 OOPS: bad bool value in config file for: pasv_enable
每行的值都不要有空格,否则启动时会出现错误,举个例子,假如我在listen=YES后多了个空格,那我启动时就出现.. 为 vsftpd 启动 vsftpd:500 OOPS: bad bool val ...
- MYSQLD c++函数修饰名转换工具c++filt
会话1: mysql> select now(); 会话2: [root@localhost ~]# stap -v -e 'probe process("/usr/local/mys ...
- new的例子
12.6 编写函数,返回一个动态分配的int的vector.将此vector传递给另一个函数,这个函数读取标准输入,将读入的值保存在vector元素中.再将vector传递给另一个函数,打印读入的值. ...
- 台湾书籍代购网址——2013-08-25 16
台湾书籍代购 博客来http://www.books.com.tw 三民http://www.sanmin.com.tw 诚品http://www.eslite.com 金石堂http://www.k ...
- 玩转Android之在线视频播放控件Vitamio的使用
其实Android中自带的MediaPlayer本身就能播放在线视频,MediaPlayer结合SurfaceView播放在线视频也是不错的选择(如果你没有性能或者用户体验上的要求),关于MediaP ...
- iOS应用审核的通关秘籍
磨刀不误砍柴工.作为手机应用开发者,你需要向应用商店提交应用审核,迅速通过审核可以让你抢占先机.对苹果iOS应用开发者来说尤其如此.苹果应用商店的审核近乎吹毛求疵,下面这些清单可以让你知道苹果会在哪些 ...