Netcat实用操作
写久了web倦了,第n次开始尝试网络开发,于是熟悉一下常用工具。
尝试了一下netcat来测试服务器,或者充当客户端都异常好用。于是记录一下常用的一下命令
1. 充当服务器,或者客户端进行访问
通过nc建立一台服务器用于监听端口:
nc -l 9999
此时nc处于了监听状态, 我们可以开启一台客户端来访问对应接口
nc 127.0.0.1 9999
然后现在客户端向服务器发起了链接,尝试在链接中的客户端随便输入一些信息
Hello World...
可以在服务器端看到,服务器会直接输出这些信息到控制台。
2. 传输文件
首先要确保你和目标地址能够建立起连接,比如是在同一个局域网内,或者可以ip地址直接访问的云主机之类
在服务器端,我们开启一个服务器对一个端口进行监听,并且将输出的信息重定向到一个目标文件
nc -l 9999 > target_file
然后客户端找到要传输的文件
cat source_file | nc localhost 9999
传输完成之后,就可以看到服务器自动停止了。然后去找下目标文件 就已经在那里了,这个方法在局域网内传文件太方便啦。
3. 客户端超时控制
客户端超时控制 是增加一个-w选项例:
nc -w 10 localhost 9999
这里注意,在10秒内没有任何操作就会被自动断开,但是在10秒内你做了任何操作,都可以再续10秒。
4. 强制netcat服务器端保持启动状态:
如果跟着做了上面实验的话就会发现一个问题,当客户端推出之后,服务器端也会立即跟着退出。除了那个文件传输的例子以外我们不希望任何一个服务器会在客户端退出之后就立即结束服务,所以我们需要让服务器一直保持服务。
nc -k -l 9999
5. 使用netcat处理udp
Netcat在使用-l启动服务器或者发起客户端连接的时候默认使用了tcp协议,但是使用-u参数可以让他使用udp来发起连接
nc -u -l 9999 //使用udp来启动服务器
nc -u localhost 9999 //使用udp来访问服务器
另外在早些时候的版本,或者某个rewrite版本里面还有一个-e参数,用于将访问重定向到某个目标机器的应用,这么邪恶的东西我man 了一下我的nc没有发现。可能需要另外开坑的时候去玩玩看。目前来看测试服务器的话上面的功能就够用了,访问具体url的时候 还可以借助curl来玩。linux世界的工具真是强大啊。!
Reference:
https://www.oschina.net/question/12_50469?sort=default&p=3 8 个实用的 Linux netcat 命令示例
Netcat实用操作的更多相关文章
- 提高开发效率的 Eclipse 实用操作
工欲善其事,必先利其器.对于程序员来说,Eclipse便是其中的一个“器”.本文会从Eclipse快捷键和实用技巧这两个篇章展开介绍.Eclipse快捷键用熟后,不用鼠标,便可进行编程开发,避免鼠标分 ...
- Chrome 开发者工具实用操作
Chrome 开发者工具实用操作 https://umaar.com/dev-tips/
- KiCAD实用操作
KiCAD实用操作之一:自动编辑线宽 今天偶然间发现的一个比较实用的功能,算是KiCAD的一个优点吧(或许是在AD上面没发现):当整个PCB布完线或者在布线过程中,我们有可能需要对某个线的宽度进行调整 ...
- 能够提高开发效率的Eclipse实用操作
工欲善其事,必先利其器.对于程序员来说,Eclipse便是其中的一个“器”.本文会从Eclipse快捷键和实用技巧这两个篇章展开介绍.Eclipse快捷键用熟后,不用鼠标,便可进行编程开发,避免鼠标分 ...
- 能够提高开发效率的 Eclipse 实用操作
工欲善其事,必先利其器.对于程序员来说,Eclipse便是其中的一个“器”.本文会从Eclipse快捷键和实用技巧这两个篇章展开介绍.Eclipse快捷键用熟后,不用鼠标,便可进行编程开发,避免鼠标分 ...
- VS2019 实用操作
本文列出了在编写程序过程中的几个非常实用的操作方式,通过这些操作方式,可以在一定程度上减少重复操作.提高编码效率.改善编程体验. 列模式操作 列操作是一项很常用且实用的功能,可以一次性修改不同的行. ...
- Myeclipse学习总结(8)——Eclipse实用操作
工欲善其事,必先利其器.对于程序员来说,Eclipse便是其中的一个"器".本文会从Eclipse快捷键和实用技巧这两个篇章展开介绍.Eclipse快捷键用熟后,不用鼠标,便可进行 ...
- 开发工具IDE从入门到爱不释手(五)更多实用操作
更多实用技巧 Tabs分屏和独立 日志链接及浏览器 设置浏览器 本地修改历史 三秒钟不操作,自动保存一个版本 右键--Local History--Show History 查看方法调用情况 按住方法 ...
- Excel实用操作
目地 不能熟练操作Excel的程序员不是好策划. 一片区域填充相同数据 1.用鼠标框选一片区域,松开鼠标,不要点其它单元格 2.直接输入输入数据,输完之后,按Ctrl+Enter,选中的区域就会填充相 ...
随机推荐
- RocketMQ事务消息-demo
RocketMQ为4.3.0版本(我这种写法4.2.0不行) 如果你之前用的其他版本,需要去修改下系统的环境变量 maven工程用到的jar包 <dependencies> <!-- ...
- UVA12107-Digit Puzzle(迭代加深搜索)
Problem UVA12107-Digit Puzzle Accept:85 Submit:612 Time Limit: 3000 mSec Problem Description Inpu ...
- [matlab] 21.灰色预测、线性回归分析模型与最小二乘回归 (转载)
灰色预测的主要特点是只需要4个数据,就能解决历史数据少,序列的完整性以及可靠性低的问题,能将无规律的原始数据进行生成得到规律性较强的生成序列,易于检验 但缺点是只适合中短期的预测,且只适合指数级增长的 ...
- 生成对抗网络(GAN)
GAN的全称是 Generative Adversarial Networks,中文名称是生成对抗网络.原始的GAN是一种无监督学习方法,巧妙的利用“博弈”的思想来学习生成式模型. 1 GAN的原理 ...
- 转://Oracle打补丁方法论
成熟的IT企业,往往会有自己的补丁计划.如一年打几次补丁,打哪一个补丁. 在补丁之前,需要进行补丁分析,一份比较完善补丁分析,往往能帮助企业未雨绸缪,提前将可能引发的问题先解决掉,保证生产的稳定和安全 ...
- TFT2.2
https://cdn-learn.adafruit.com/downloads/pdf/2-2-tft-display.pdf
- ESP32:mdns协议
mdns(即多播dns,Multicast DNS)主要实现了在没有传统DNS服务器的情况下使局域网内的主机实现相互发现和通信,使用的端口为5353,遵从dns协议,使用现有的DNS信息结构.语法和资 ...
- Redis之过期时间
1.命令介绍 expire key seconds 设置key的有效时间,单位为秒expire命令返回1表示设置成功,返回0表示键不存在或设置失败. ttl keyttl命令返回值是键的剩余时间 ...
- 开源的许可证GPL、LGPL、BSD、Apache 2.0
软件开发者要开源软件,不单单是开放源代码就可以了,选择一种许可证很重要,一个许可证之于软件就相当于价值观之于普通人,代表了这个软件的基本品性.一个错误的许可证选择可能会直接导致整个项目的失败.各种开源 ...
- Ubuntu使用小技巧
1. Ubuntu下自由截图 Ubuntu下使用PrintScreen按键可以截取整个屏幕,但是很多时候并不需要那么多内容,还需要对图片进行编辑. 这时候就需要截图时,有矩形选择,更符合要求. 进入S ...