二层发现
原理:使用ARP协议,在网段内进行广播,查看是否有回包,如果有,证明该主机存活;
优点:扫描速度快、可靠;
缺点:不可路由,只能发现同一网段内的主机;
环境
kali 2.0
利用arping
命令结合脚本实现主机发现
脚本一(网络接口)
#!/bin/bash
#Author:Tao
if [ $# -ne 1 ];then
echo "Usage ./arp.sh [interface]"
exit
fi
intface=$1
ipd=$(ifconfig eth0 | grep 'netmask' | cut -d ' ' -f 10 | cut -d '.' -f 1-3)
for num in $(seq 1 255);do
ip=$ipd.$num
arping -c 1 $ip | grep bytes | cut -d ' ' -f 5 | cut -d '(' -f 2 | cut -d ')' -f 1
done
脚本一效果图:
脚本二(网络接口,无参数)
#!/bin/bash
#Author:Tao
interface=$(ifconfig | head -1 | awk -F ":" '{print $1}')
ip=$(ifconfig $interface | grep "netmask" | awk '{print $2}'| cut -d '.' -f 1-3)
for i in `seq 1 254`;do
arping -c 1 $ip.$i | grep from | cut -d " " -f 5 | cut -d "(" -f 2 | cut -d ")" -f 1
done > alive.txt
注:以上脚本结果回输入到alive.txt文件
脚本二效果图:
脚本三(文件传入IP)
#!/bin/bash
#Author:Tao
file=$1
for i in $(cat $1);do
arping -c 1 $i | grep from | cut -d " " -f 5 | cut -d "(" -f 2 | cut -d ")" -f 1
done > $1-alive.txt
注:以上脚本结果回输入到你传的文件名+alive.txt文件
总结:脚本大同小异~,记录一下