ASP 에서 IP 를 제한 하 는 함수 에 대한 상세 한 설명 을 실현 합 니 다.

'****************************** 'Function CheckIp(cInput_Ip,cBound_Ip) 'Created by qqdao, [email protected] 2001/11/28'설명:먼저 근거 가 필요 하 다.번 호 를 순환 한 다음 에'-'가 있 는 지 판단 하고 있 으 면 분할 처 리 를 한 다음 에 범위 내'매개 변수 가 있 는 지 판단 합 니 다. cInput_Ip,검사 대신 ip'cBoundIp,주어진 범위 형식 은 하나의 ip,범위 ip,범위 ip 을 마지막 으로 사용 합 니 다.-"분할,"*"이 라면 마지막'각 범위 에 놓 고':ALLOW'를 추가 해 야 합 니 다.로그 인 을 허용 하고':REFUSE'를 추가 하면 로그 인 을 거부 합 니 다.여러 범위 에서 사용 하기;"분리'예 를 들 어 192.168.1*.*:ALLOW;192.168.1.1:ALLOW;192.168.1.1-10:REFUSE"'반환 값: true/false'업데이트:2001/12/05 ALLOW,REFUSE 지원'*',맞 고 싶 지 않 아 요?************************************function 지원 CheckIp(cInput_Ip,cBound_Ip) dim cSingle_Ip,cTemp_IP,cStart_IP,cEnd_Ip CheckIp = false cSingle_Ip=split(cBound_Ip,";") for i=0 to ubound(cSingle_Ip) if Instr(cSingle_Ip(i),"REFUSE") <> 0 then “cTempIP = left(cSingle_Ip(i),instr(cSingle_Ip(i),":")-1) if Instr(cTemp_IP,"*") <> 0 then “넓 은 범위 cStartIP = left(cTemp_IP,instr(cTemp_IP,"*")-1) if left(cInput_Ip,len(cStart_IP))=cStart_IP then CheckIp = false exit function end if end if if Instr(cTemp_IP,"-") = 0 then cStart_IP = cTemp_IP cEnd_Ip = cTemp_IP else cStart_IP = left(cTemp_IP,instr(cTemp_IP,"-")-1) cEnd_Ip = left(cStart_IP,InStrRev(cStart_IP,".")-1)+"."+mid(cTemp_IP,instr(cTemp_IP,"-")+1) end if if Ip2Str(cInput_Ip)>=Ip2Str(cStart_IP) and Ip2Str(cInput_Ip)<=Ip2Str(cEnd_Ip) then CheckIp = false exit function end if elseif Instr(cSingle_Ip(i),"ALLOW") <> 0 then “cTemp 허용IP = left(cSingle_Ip(i),instr(cSingle_Ip(i),":")-1) if Instr(cTemp_IP,"*") <> 0 then “넓 은 범위 cStartIP = left(cTemp_IP,instr(cTemp_IP,"*")-1) if left(cInput_Ip,len(cStart_IP))=cStart_IP then CheckIp = true end if end if if Instr(cTemp_IP,"-") = 0 then cStart_IP = cTemp_IP cEnd_Ip = cTemp_IP else cStart_IP = left(cTemp_IP,instr(cTemp_IP,"-")-1) cEnd_Ip = left(cStart_IP,InStrRev(cStart_IP,".")-1)+"."+mid(cTemp_IP,instr(cTemp_IP,"-")+1) end if if Ip2Str(cInput_Ip)>=Ip2Str(cStart_IP) and Ip2Str(cInput_Ip)<=Ip2Str(cEnd_Ip) then CheckIp =true else CheckIp =false end if end if next end function '****************************** 'Function Ip2Str(cIp) 'Created by qqdao, [email protected] 2001/11/28'참조 동 망 ip 알고리즘'파라미터:cIp ip 주소'반환 값: 변환 후 수치'********************************기능 Ip2Str(cIp) Dim str1,str2,str3,str4 Dim cIp_Temp if cIp="127.0.0.1" then cIp="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) if isNumeric(str1)=0 or isNumeric(str2)=0 or isNumeric(str3)=0 or isNumeric(str4)=0 then else Ip2Str=cint(str1)*256*256*256+cint(str2)*256*256+cint(str3)*256+cint(str4)-1 end if end function

좋은 웹페이지 즐겨찾기