欢迎来到代码驿站!

Shell

当前位置:首页 > 脚本语言 > Shell

Shell脚本实现判断IP地址是否在一个ip段内代码分享

时间:2020-10-08 13:28:29|栏目:Shell|点击:
cat ipcalc.sh
#!/bin/bash
IP=$1
if [ -z $IP ]
then
echo -e “\e[31;42m sh ipcalc.sh IP \e[0m"
exit
fi
while read MASK
do
min=`/usr/bin/ipcalc $MASK|awk '/HostMin:/{print $2}'`
max=`/usr/bin/ipcalc $MASK|awk '/HostMax:/{print $2}'`
MIN=`echo $min|awk -F"." '{printf"%.0f\n",$1*256*256*256+$2*256*256+$3*256+$4}'`
MAX=`echo $max|awk -F"." '{printf"%.0f\n",$1*256*256*256+$2*256*256+$3*256+$4}'`
IPvalue=`echo $IP|awk -F"." '{printf"%.0f\n",$1*256*256*256+$2*256*256+$3*256+$4}'`
if [ "$IPvalue" -gt "$MIN" ] && [ "$IPvalue" -lt "$MAX" ]
then
echo -e “\e[31;42m $IP in ipset $MASK \e[0m”
exit
fi
done<ipset.conf

ipset.conf  格式

more ipset.conf
58.24.64.0/18
58.24.0.0/18
58.24.128.0/18
58.24.192.0/18
58.25.128.0/18
58.25.192.0/18
64.254.111.0/24

运行  sh ipcalc.sh    IP地址

效率 不高   哎 下次改成perl 试试

/usr/bin/ipcalc  这个不是系统自带的命令  是一个perl版本的

上一篇:shell脚本中执行python脚本并接收其返回值的例子

栏    目:Shell

下一篇:用shell脚本防ssh和vsftpd暴力破解的详解讲解

本文标题:Shell脚本实现判断IP地址是否在一个ip段内代码分享

本文地址:http://www.codeinn.net/misctech/8606.html

推荐教程

广告投放 | 联系我们 | 版权申明

重要申明:本站所有的文章、图片、评论等,均由网友发表或上传并维护或收集自网络,属个人行为,与本站立场无关。

如果侵犯了您的权利,请与我们联系,我们将在24小时内进行处理、任何非本站因素导致的法律后果,本站均不负任何责任。

联系QQ:914707363 | 邮箱:codeinn#126.com(#换成@)

Copyright © 2020 代码驿站 版权所有