By zkxp 2/15/2006 http://zkxp.cnblogs.com ‘受屏蔽IP地址(段)集合,星号为通配符,通常保存于配置文件中。 % Const BadIPGroup = "220.200.59.136|220.205.168.141" If IsForbidIP(BadIPGroup) = True Then Response.Write(GetUserIP "IP地址禁止访问") Response.End() End If
'**************************************************************** '参数vBadIP:要屏蔽的IP段,IP地址集合,用|符号分隔多个IP地址(段) '返回Bool:True用户IP在被屏蔽范围,False 反之 '**************************************************************** Function IsForbidIP(vBadIP) Dim counter, arrIPPart, arrBadIP, arrBadIPPart, i, j
For i = 0 To UBound(arrBadIP) counter = 0 arrBadIPPart = Split(arrBadIP(i), ".") For j = 0 To UBound(arrIPPart) If (arrBadIPPart(j)) = "*" or Cstr(arrIPPart(j)) = Cstr(arrBadIPPart(j)) Then counter = counter + 1 End If Next If counter = 4 Then IsForbidIP = True Exit Function End If Next IsForbidIP = False End Function
'*************** '返回客户IP地址 '*************** Function GetUserIP() Dim IP IP = Request.ServerVariables("HTTP_X_FORWARDED_FOR") If IP = "" Then IP = Request.ServerVariables("REMOTE_ADDR") GetUserIP = IP End Function %>