#cat arping
#!/bin/bash
IPaddr=192.168.0.
ETHX=eth0
IPFILE=/root/arping.txt
UPIPaddr=/tmp/ipup.txt
DOWNIPaddr=/tmp/ipdown.txt
>$IPFILE
touch $DOWNIPaddr
touch $UPIPaddr
touch $IPFILE
for IP in {1..254}
do
arping -I $ETHX -c 1 $IPaddr$IP >>$IPFILE
done
echo UPIPADDR
echo " IPADDR MAC "; cat $IPFILE |grep reply |awk '{print $4" "$5}' |awk -F"[" '{print $1" "$2}' | awk -F"]" '{print $1" "$2}' | column -t >$UPIPaddr
echo DOWNIPADDR
IPTMP=/tmp/ip.txt
IPTMP2=/tmp/ip2.txt
grep -v ^'[S|R]' $IPFILE |awk -FARPING '{print $2}'|awk -Ffrom '{print $1}' |column -t >$IPTMP
grep -v ^'[S|R]' $IPFILE |awk -F"Unicast reply from" '{print $2}'|awk '{print $1}'|uniq -c |awk '{print $2}' |uniq -c |awk '{print $2}'|column -t >$IPTMP2
cat $IPTMP $IPTMP2 |sort -t "." -k4,4n |uniq -u >$DOWNIPaddr
VL=`wc -l $UPIPaddr |awk '{print $1}'`
VL2=`wc -l $DOWNIPaddr |awk '{print $1}'`
cat $UPIPaddr
echo 目前有$VL台主机为活动状态
cat $DOWNIPaddr |paste -s
echo 目前有$VL2个可用IP地址
作者:运维老许
联系方式:strive120620@163.com
微信公众号:Linux必修之路
声明1:本站部分资源收集自互联网,仅供个人学习交流,如不慎侵犯了您的权益,请联系我,我将尽快处理!
声明2:本文版权归作者,欢迎转载,但未经作者同意必须在文章页面给出原文链接,否则保留追究法律责任的权利!