资源描述:
《ip范围限制函数--》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库。
1、IP范围限制函数>>******************************’FunctionCheckIp(cInput_Ip,cBound_Ip)’说明:首先需要根据;号循环,然后判断是否含有"-",如果有则进行拆分处理,最后判断是否在范围内’参数:cInput_Ip,代检查的ip’cBound_Ip,给定的范围格式为,单个ip,和范围ip,范围ip最后使用”-“分割,如果是“*”则必须放到最后一位’每个范围后添加":ALLOcSingle_Ip,cTemp_IP,cStart_IP,cEnd_IpCheckIp=falsecSingle_Ip=split(cBo
2、und_Ip,";")fori=0toubound(cSingle_Ip)ifInstr(cSingle_Ip(i),"REFUSE")<>0then’就是拒绝了cTemp_IP=left(cSingle_Ip(i),instr(cSingle_Ip(i),":")-1)ifInstr(cTemp_IP,"*")<>0then’是宽范围cStart_IP=left(cTemp_IP,instr(cTemp_IP,"*")-1)ifleft(cInput_Ip,len(cStart_IP))=cStart_IPthenCheckIp=falseexi
3、tfunctionendifendififInstr(cTemp_IP,"-")=0thencStart_IP=cTemp_IPcEnd_Ip=cTemp_IPelsecStart_IP=left(cTemp_IP,instr(cTemp_IP,"-")-1)cEnd_Ip=left(cStart_IP,InStrRev(cStart_IP,".")-1)+"."+mid(cTemp_IP,instr(cTemp_IP,"-")+1)endififIp2Str(cInput_Ip)>=Ip2Str(cStart_IP)andIp2Str(cInput_Ip)<
4、=Ip2Str(cEnd_Ip)thenCheckIp=falseexitfunctionendifelseifInstr(cSingle_Ip(i),"ALLOp_IP=left(cSingle_Ip(i),instr(cSingle_Ip(i),":")-1)ifInstr(cTemp_IP,"*")<>0then’是宽范围cStart_IP=left(cTemp_IP,instr(cTemp_IP,"*")-1)ifleft(cInput_Ip,len(cStart_IP))=cStart_IPthenCheckIp=trueendifendififIn
5、str(cTemp_IP,"-")=0thencStart_IP=cTemp_IPcEnd_Ip=cTemp_IPelsecStart_IP=left(cTemp_IP,instr(cTemp_IP,"-")-1)cEnd_Ip=left(cStart_IP,InStrRev(cStart_IP,".")-1)+"."+mid(cTemp_IP,instr(cTemp_IP,"-")+1)endififIp2Str(cInput_Ip)>=Ip2Str(cStart_IP)andIp2Str(cInput_Ip)<=Ip2Str(cEnd_Ip)thenChe
6、ckIp=trueelseCheckIp=falseendifendifnextendfunct12下一页>>>>这篇文章来自..,。ion’******************************’FunctionIp2Str(cIp)’Createdbydao,dao263.2001/11/28’参考动网ip算法’参数:cIpip地址’返回值:转换后数值’******************************functionIp2Str(cIp)Dimstr1,str2,str3,str4DimcIp_TempifcIp="127.0.0.1"thencIp
7、="192.168.0.1"str1=left(cIp,instr(cIp,".")-1)cIp_Temp=mid(cIp,instr(cIp,".")+1)str2=left(cIp_Temp,instr(cIp_Temp,".")-1)cIp_Temp=mid(cIp_Temp,instr(cIp_Temp,".")+1)str3=left(cIp_Temp,instr(cIp_Temp,".")-1)str4=mid(cIp_Temp,instr(cIp_Temp,".")+1)ifisNumeric(str1)=0or