一、三层发现
- 原理:使用IP/ICMP协议
- 优点:二层发现只能扫描同一网段,因此,三层发现相对于二层发现的优点就是可以进行路由,可以扫描不同的网段
- 缺点:相对于二层发现速度慢,经常被防火墙过滤掉
注意:不要完全相信扫描结果,因为防火墙会过滤掉有些扫描,所以对于某些存活的主机也收不到应答包
1.ping(只能扫描一个主机或域名,不能扫描一个网段)
(1):ping IP/域名 来查看一个主机是否存活
ping 一个域名
ping一个IP
在Linux中ping的时候会一直ping下去,而在windows中ping一次返回四个数据包后就停止了
(2):使用-c来指定ping的次数
(3):使用-w来指定ping的时间
(4):使用cut来截取返回包中的IP
2.traceroute(路由追踪)
不但可以发现目标机器是否在线,还可发现其经过多少跳路由
(1):traceroute IP/域名
追踪一个IP
追踪一个域名
3.fping
fping类似于ping,但比ping功能更加强大。
fping与ping不同的地方在于,fping可以在命令行中指定要ping的主机数量范围,也可以指定含有要ping的主机列表文件。与ping要等待某一主机连接超时或发回反馈信息不同,fping给一个主机发送完数据包后,马上给下一个主机发送数据包,实现多主机同时ping。如果某一主机ping通,则此主机将被打上标记,并从等待列表中移除,如果没ping通,说明主机无法到达,主机仍然留在等待列表中,等待后续操作。
(2):fping一个网段
-g表示扫描一个网段
(3):fping一个文件中的所有IP
-f表示扫描文件中的所有IP
iplist.txt里面内容如下
4.hping3
能够发送几乎任意TCP/IP 包,Hping3常被用于检测网络和主机,其功能非常强大,但每次只能发一个包,可以发大量定制ping包,可做一定程度拒绝服务攻击。
(1):使用ICMP数据包来探测主机是否存活
(2):使用UDP数据包来探测主机是否存活
(3):使用TCP数据包来探测主机是否存活(不指定协议类型默认使用TCP协议)
5.scapy
OSI通过多层堆叠生成ICMP数据包,一个完整的ping(ICMP数据包)是由一个IP数据包和一个ICMP包组合而成的。
(1):查看IP数据包
(2):设置目的IP地址
(3):查看ICMP数据包
(4):发送数据包
(5):查看收到的数据包