一、说明

在网络原理中我们经常说TCP是面向连接的要进行三次握手和四次挥手所以速度比较慢,UDP是无连接的直接发送和接收所以速度快(说到这个快慢我总想起多年前有篇分析MSN为什么被QQ淘汰的一篇文章其中有一条就是说MSN用的TCP速度慢QQ用的UDP速度快,时至今日我也不确定在聊天软件中用TCP和用UDP是否会表现出明显的速度差异甚至我不确定是不是MSN用TCP、QQ用UDP)。

今天同事整理端口矩阵时反映说Nmap进行UDP端口扫描没有结果,让帮看一下命令有没有问题。形如下:

nmap -sU -p 1-65535 192.168.220.128

看了一下没什么问题,在自己Windows上用Zenmap跑了一下发现扫描比较慢但没有很在意,直到下午看到还没完成就需要探究一番了。

对以往UDP扫描的速度没什么特别换印像,也就是说应该没有这么慢才对。

二、问题探究

2.1 排除服务端配置问题

首先使用Wireshark截包,发现每秒也就三五个探测及端口不可达ICMP包。

直觉上没认为自己机器的问题,再结合百度、谷歌的结果及官网的如下说法,觉得应该就是服务端通过icmp_ratelimit参数限制了ICMP端口不可达响应速率

但到服务器查看/proc/sys/net/ipv4/icmp_ratelimit发现配置的是1000,如下图

这是越想越不能令人信服的,实际扫描中的每秒三五次和每秒限制1000次差距过于明显,瓶颈不应该在服务器限制响应速率上(而且测试中将icmp_ratelimit配置为不进行限速的0也并没有快很多)。

2.2 排除操作系统问题

向另一同事询问后,他提出有没有可能是操作系统问题,建议使用Linux试一下。

思索之下是有道理的,一是Windows和Linux在发包这种东西上素来就有区别,二是之前用nmap大多在Linux里用UDP扫描感觉没有很慢。

打开Kali虚拟机使用Nmap进行扫描发现确实快很多,如下图所示:

唯一的问题是不管扫哪个机器、怎么扫,所有端口都报open|filtered。这最终只能认为是服务器端口的返回不足以让Nmap区分出其状态。

正准备收工,把UDP扫描慢归为操作系统问题,同时UDP扫描判断端口状态效果一般时,看到Wireshark抓取的数据包如下图所示:

这问题很大,如上截图中只有从虚拟机发往目标机的数据包,并没有从目标机返回的端口不可达ICMP包(这应该也就是所有端口都被认为open|filtered的原因)。

这与前面在物理机中的扫描不一致,此时就存在操作系统类型和有无响应数据包两个变量,不能直接下结论说是哪个的问题。

又用一台Linux物理机使用Nmap进行扫描,发现扫描速度与Windows物理机差不多。

也就是说当前的结论是:虚拟机中的快只是因为收不到响应、Nmap的UDP扫描缓慢和服务端限制回复ICMP不可达速度无关、和Nmap所用操作系统也无关,瓶颈到底是哪还是不太清楚。

参考:

https://nmap.org/book/scan-methods-udp-scan.html#scan-methods-ex-udpscan-scanme2

转载于:https://www.cnblogs.com/lsdb/p/10678525.html

Nmap UDP扫描缓慢问题探究(无结果)相关推荐

  1. nmap之扫描端口(附加hping3隐藏扫描)

    1.基于UDP的主机扫描方式 (四层扫描) -PU 端口号  指定端口 -sn   不对端口进行扫描 nmap 211.144.145.0-50 -PU53 -sn 表示扫描0-50个主机的53端口 ...

  2. NMAP网络扫描工具的安装与使用

    简介 NMAP是一款流行的网络扫描和嗅探工具也是一个强大的端口扫描类安全测评工具,被广泛应用在黑客领域做漏洞探测以及安全扫描,更多的nmap是一个好用的网络工具,在生产和开发中也经常用到,主要做端口开 ...

  3. “诸神之眼”——Nmap端口扫描工具使用小手册

    "诸神之眼"--Nmap端口扫描工具使用小手册 1.Nmap介绍 1.1.Nmap简介 Nmap ("Network Mapper(网络映射器)") 是一款开放 ...

  4. nmap——端口扫描_基础命令

    文章目录 一.操作环境 二.nmap命令用法 三.部分实例 Ⅰ.-v 加强扫描 Ⅱ.-A 扫描操作系统和路由跟踪 Ⅲ.-O 探测操作系统 Ⅳ.-sN TCP空扫描欺骗防火墙 Ⅴ.--iflist 显示 ...

  5. Nmap常用扫描命令

    分解命令: 注:命令区分大小写. '''-v #查看冗余信息-p #E扫描端口-sS #半开扫描-O #扫描操作系统--randomize-hosts #指定网段内随即扫描--scan-delay # ...

  6. 调用NMAP批量扫描IP端口

    批量扫描IP端口,并将结果导出为由IP命名的文件. 假设IPlist.txt文件内容为: 127.0.0.1 192.168.1.1 然后我们获取文件内容IP进行扫描(nmap的"-p-&q ...

  7. Nmap网络扫描实验

    目录 预备知识 TCP与UDP 建立TCP连接的三次握手: 扫描的分类 nmap简介 实验目的 实验环境 实验步骤 实验步骤一 实验步骤二 实验步骤三 课后习题 预备知识 TCP与UDP 项目 TCP ...

  8. Nmap 主机扫描的使用

    文章更新于:2020-05-01 注1:表 0-1.表 1-1 和 表 2-1 摘自<网络安全测试实验室搭建指南>,ISBN:9787115447180 注2:部分内容摘自<诸神之眼 ...

  9. 关于nmap端口扫描与阻止恶意端口扫描的实验

    准备环境 Nmap Nmap用于允许系统管理员查看一个大的网络系统有哪些主机,以及其上运行何种服务.它支持多种协议的扫描,如UDP.TCP connect().TCP SYN(half open).f ...

最新文章

  1. MySql提示服务已经启动成功但又提示can’t connect to MySQL server解决方法,mysql服务自动停止处理方法
  2. Mysql数据库基础(一)基本概述、构建服务、基本管理、数据类型
  3. 135. 最大子序和【前缀和 单调队列】
  4. ios 自动打包命令_【实践】iOS使用Jenkins实现自动化打包并上传蒲公英
  5. UITableViewController
  6. sockaddr与sockaddr_in的区别
  7. javascript运动系列第七篇——鼠标跟随运动
  8. TortoiseSVN客户端重新设置用户名和密码[转]
  9. grup2命令启动windows
  10. 微课--25分钟学会使用Python群发电子邮件
  11. C++开源库详细介绍
  12. 使用Android DataBinding BindingAdapter和Dagger 2
  13. 093-PHP数组比较
  14. 牛客刷题---年会抽奖
  15. 戴尔服务器虚拟光驱,SupportAssist
  16. 专业运动耳机哪个品牌好?运动蓝牙耳机推荐
  17. 公链洗牌进行时 |链捕手
  18. 如何更好的做线上引流
  19. 2022-ACS-Boosting Protein−Ligand Binding Pose Prediction and Virtual Screening Based on Residue−Atom
  20. 【NVMe2.0b 6】NVMe 队列模型

热门文章

  1. 微信小程序----手势锁详解
  2. 使用Data Profile进行数据剖析
  3. PHP和MySQL入门(3)
  4. 转载--让搜索引擎优化(SEO)更有效 CSS+DIV标签命名规范
  5. HK2000 V2版本 GPRS通讯串口说明
  6. F#学习之路(3) 如何组织程序(下)
  7. Dbus的编译和安装
  8. rap技术原理_「水深坑多」做分子海绵,你还需要了解这些技术
  9. python 源码保护_Python代码保护
  10. 微信小程序支付java视频_【原创】微信小程序支付(普通模式,公众号支付同适用)java后台案例...