抓DHCP客户端ip脚本

cat testnew.sh
#!/bin/bash

catch_ip (){
Ip=`sudo nmap -sP 192.168.1.0/24 |grep -i -B2 $mac|grep Nmap |cut -d " " -f5,6|cut -d " " -f2`
echo "$Ip"
}

echo ""
echo "***********if there is a DHCPREQUEST,this shell will continue ******** "
echo ""
mac=`sudo tcpdump port 67 -c 1 |grep -v "^$" | sed -n '1'p |cut -f9 -d" "`
echo ""
if [ -z $mac ] ;then
mac="mac is null,do you forget the sudo,please retry by:sudo $0"
exit 1
fi
clear
echo "***********MAC:$mac wait the IP ************** "
echo ""

#sleep 7
#sleep 1
#echo 7
#sleep 1
###Time=`cat macip.txt|grep done|cut -d " " -f11`
catch_ip

if [ -z $Ip ]
then
echo "do the second nmap "
catch_ip
fi
if [ -z $Ip ]
then
echo "do the third nmap "
catch_ip
fi
if [ -z $Ip ]
then
echo "do the 5 nmap "
catch_ip
fi
if [ -z $Ip ]
then
echo "do the 6 nmap "
catch_ip
fi
if [ -z $Ip ]
then
echo "do the 7 nmap "
catch_ip
fi
if [ -z $Ip ];then
Ip="********sorry,nmap cannot find the MAC,maybe IP address has a conflict,please have a retry,or you can have a retry by : sudo nmap -sP 192.168.1.0/24 |grep -i -B2 $mac|grep Nmap |cut -d " " -f5,6|cut -d " " -f2 *******************"
echo "four times"
echo "$Ip "
fi
echo "all is done"
exit 0

原文地址:https://www.cnblogs.com/hanxing/p/4096976.html