linux脚本发送udp,基于shell脚本实现UDP端口探测
shell提供了一种建立TCP/UDP连接的方法:/dev/udp/host/port
/dev/tcp/host/port
所以,直接重定向当前shell的一个文件描述符到对应的ip/端口:exec 8<>/dev/udp/10.0.2.15/12345
就相当于建立一个UDP socket。
发送报文:echo "" >&8
抓包结果:00:48:18.291124 IP 10.0.2.15.40371 > 10.0.2.15.12345: UDP, length 1
00:48:18.291145 IP 10.0.2.15 > 10.0.2.15: ICMP 10.0.2.15 udp port 12345 unreachable, length 37
由于UDP的无连接性,命令返回的结果依然为成功。
从对应的文件描述符中读取状态:root@debian2:~# cat
cat: -: Connection refused
当然,直接往流中再次写入数据,也会得到同样的错误:root@debian2:~# exec 8<>/dev/udp/10.0.2.15/12345
root@debian2:~# echo "" >&8
root@debian2:~# echo "" >&8
-bash: echo: write error: Connection refused
但是,注意,以上方法脚本化使用时,需要在连续发送两个报文的语句中加入sleep语句,否则,由于脚本执行太快,连接发送两个报文,port xxx unreachable 报文还未回来,依然会返回成功。
使用完毕之后,关闭对应的流:exec 8>&-
参考:
linux脚本发送udp,基于shell脚本实现UDP端口探测相关推荐
- Linux论文基于shell脚本
CSDN下载:https://download.csdn.net/download/eseszb/10503223 Linux下基于shell脚本的流量监控报警系统设计与实现 摘要:随着云计算的到来, ...
- linux实现学生信息管理系统,Linux下基于shell脚本实现学生信息管理系统
LINUX Linux操作系统 Linux下基于shell脚本实现学生信息管理系统 #该管理系统是参考两位博主(时间有点远了,我忘了,请博主看到后联系我)后自行修改添加的.登录过程还有很多不完善,我就 ...
- LINUX下的流量监控shell脚本
这篇文章主要介绍了LINUX下的流量监控shell脚本,可以适用任何Linux版本,需要的朋友可以参考下 一.脚本源码 # vi /etc/rc.d/traffic_monitor.sh ------ ...
- 服务器状态监控php源码,服务器状态监控_监控Linux服务器网站状态的SHELL脚本
摘要 腾兴网为您分享:监控Linux服务器网站状态的SHELL脚本,蜗牛集市,同花顺,探客宝,手柄助手等软件知识,以及日期倒计时插件,云南省教育资源公共,rui手机桌面,小屁孩桌面便签,合金装备崛起复 ...
- 如何在 Linux 中创建并运行 Shell 脚本(Bash 初学者教程)
文章目录 1.创建并运行第一个 shell 脚本 2.将 shell 脚本转换为 bash 脚本 3.为什么大多数 shell 脚本都包含 #! /bin/bash 在 shell 脚本的开头? 4. ...
- linux cc脚本,Linux运维知识之Linux简单处理CC攻击shell脚本
本文主要向大家介绍了Linux运维知识之Linux简单处理CC攻击shell脚本,通过具体的内容向大家展现,希望对大家学习Linux运维知识有所帮助. 第一个脚本是通过查找日志中访问次数过多的ip,并 ...
- Linux服务器监控cpu数据shell脚本
Linux服务器监控cpu数据shell脚本 背景: 一种简易的监控进程的CPU.内存.线程数.句柄数的办法,使用shell脚本实现监控,Excel实现数据分析. #!/bin/bash#过滤出需要的 ...
- Linux 之旅 10:Shell 脚本
Linux 之旅 10:Shell 脚本 (图片来自shell/bash脚本编程) Linux 上的 Shell 脚本可以看做是类似于Windows上的批处理程序(.bat)一样的东西,其本质就是将一 ...
- Linux系统一键安全加固shell脚本编写思路
本次分享一下个人在对Linux系统一键安全加固shell脚本编写时的一些思路: Linux系统一键安全加固shell脚本编写思路 1.编写须知 1.1 脚本使用说明 1.2 主要功能说明: 1.3隐藏 ...
最新文章
- 获取另一个驱动的设备结构体_《rt-thread驱动框架分析》-i2c驱动
- 58 Openstack基础、openstack之glance、openstack之keystone
- 会议更流畅,表情更生动!视频生成编码 VS 国际最新 VVC 标准
- Perfect World
- GitHub之深入解析脚本·自定义与修改GitHub来更好地为特定的工作流程工作
- [PAT乙级]1043 输出PATest
- 「今天沾一口野味,明天地府相会!」AI如何抗击「野味肺炎」
- dataframe 众数的方法_pandas 第11篇:DataFrame-数据处理(分组、聚合、窗口、相关、统计)...
- leetcode950. Reveal Cards In Increasing Order
- Google官方 详解 Android 性能优化【史诗巨著之内存篇】
- 只有绩效,才是检验创新的唯一标准
- 2021-09-02spark streaming
- conda An unexpected error has occurred
- 利润表模板excel_Excel 最新财务报表分析模板(资产负债表、利润表、现金流量表…)...
- oozie中管理datax脚本方法实践
- linux如何设置环境变量
- C# panel控件实现鼠标滚轮滚动拖动滚动条
- igraph基本使用方法示例
- 拉格朗日松弛算法(一)——论文阅读笔记
- QGraphicsItem限制拖动方向和位置
热门文章
- ASP.NET MVC 控制器激活(二)
- Oracle并行进程小结
- 通用社区登陆组件技术分享(开源)下篇:OAuth 源码下载及原理解说
- Access violation at address 0x77f96c94
- JML规格编程——BUAA OO第三单元作业总结
- es6学习1: 模拟react Comopnent类的实现
- 用Xamarin.Forms创建移动应用程序
- Mozilla Firefox 54 今起支持开启e10s多进程功能
- Apache-2.2.32安装配置
- NHibernate之旅(8):巧用组件之依赖对象