一.基礎(chǔ)概念
三層協(xié)議有:IP以及ICMP協(xié)議(internet管理協(xié)議).
icmp的作用是用來實現(xiàn)intenet管理的,進行路徑的發(fā)現(xiàn)撕捍,網(wǎng)路通信情況象对,或者目標主機的狀態(tài);在三層發(fā)現(xiàn)中主要使用icmp協(xié)議烟具,arp協(xié)議屬于二層協(xié)議,它是基于廣播的奠蹬,所以不可路由朝聋。而ICMP協(xié)議是可以路由的,理論上可以使用icmp協(xié)議發(fā)現(xiàn)全球的ip囤躁,如果沒有邊界防火墻(禁止icmp的探測包)進行過濾的話冀痕,對目標主機進行掃描,則會收到相應(yīng)的響應(yīng)狸演,從而進行捕捉【有邊界防火墻的現(xiàn)象比較普遍】言蛇,但是三層發(fā)現(xiàn)的掃描速度也較二層要慢些。
注:不要完全相信掃描結(jié)果严沥,因為會存在漏報猜极、誤報,當有邊界防火墻時消玄,可能活的主機不響應(yīng)跟伏,也可能宕機響應(yīng)
二.工具使用
1.ping命令
ping <ip> #linux與windows的ping包,有很大區(qū)別:windows默認發(fā)四個翩瓜,linux默認不停受扳,可用-c指定包數(shù)量
ping -R <ip> #也可以做路由追蹤
shell腳本批處理
#!/bin/bash
if [ "$#" -ne 1 ];then
echo "Usage - ./ping.sh [interface]"
echo "Excample - ./ping.sh 192.168.1.0"
echo "Example will perform an ARP scan of the local subnet to which eth0 is assigned"
exit
fi
prefix=$(echo $1 | cut -d '.' -f 1-3)
for addr in $(seq 1 254);do
ping -c 1 $prefix.$addr | grep "bytes from" | cut -d " " -f 4 | cut -d ":" -f 1
done
2.traceroute
可發(fā)現(xiàn)經(jīng)過多少跳路由
traceroute www.sina.com
3.nmap
nmap -sn 211.144.145.1
4.Fping
Fping類似于ping,但比ping強大兔跌。Fping與ping不同的地方在于勘高,fping可以在命令行中指定要ping的主機數(shù)量范圍,也可以指定含有要ping的主機列表文件。
與ping要等待某一主機連接超時或發(fā)回反饋信息不同华望,fping給一個主機發(fā)送完數(shù)據(jù)包后蕊蝗,馬上給下一個主機發(fā)送數(shù)據(jù)包,實現(xiàn)多主機同時ping赖舟。如果某一主機ping通蓬戚,則此主機將被打上標記,并從等待列表中移除宾抓,如果沒ping通子漩,說明主機無法到達,主機仍然留在等待列表中石洗,等待后續(xù)操作幢泼。
fping -g 192.168.1.100 192.168.1.200 -c 1 #-g指定范圍,從100-200 -c只發(fā)一個包
5.Hping
能夠發(fā)送幾乎任意TCP/IP 包讲衫,Hping常被用于檢測網(wǎng)絡(luò)和主機缕棵,其功能非常強大,但每次只能發(fā)一個包涉兽,可以發(fā)大量定制ping包挥吵,可做一定程度拒絕服務(wù)攻擊。
hping3 192.168.1.1 --icmp -c 2
for addr in $(seq 1 254); do hping3 1.1.1.$addr --icmp -c 1 >> handle.txt & done #結(jié)果輸出到文本文件使結(jié)果清晰
cat handletxt | grep ^len #篩選活著的IP