'*********************************
'FunctionCheckip (cinput_ip, cbound_ip)
'CreateBybyqqdao, [email protected]/11/28
«Примечание: во -первых, вам нужно петлю на основе; Число, затем определите, содержит ли он "-", если есть, выполнить разделенную обработку и, наконец, определить, находится ли она в диапазоне
'Параметр: cinput_ip, ip для прокси -проверки
'CBOUND_IP, данное формат диапазона: отдельный IP и диапазон IP, диапазон IP в последний раз используется для разделения, если он есть "*", он должен быть размещен на последней цифре
«Добавить»: разрешить »после каждого диапазона означает, что вход в систему разрешено, а добавление«: отказ »означает, что вход в систему отказывается. Используйте несколько диапазонов, чтобы отделить
'Например, 192.168.1*.*: Разрешить; 192.168.1.1:LAIL; 192.168.1.1-10: отказ "
'Return Value: true/false
'Обновление: 2001/12/05 Поддержка разрешения, отказ от поддержки'*', не хотите быть правым? Поддерживается, потому что это почти то же самое, что и *
'*********************************
functionCheckip (cinput_ip, cbound_ip)
dimcsingle_ip, ctemp_ip, cstart_ip, cend_ip
Checkip = false
csingle_ip = split (cbound_ip, ";")
fori = 0toubound (csingle_ip)
ifinstr (csingle_ip (i), «отказ») <> 0then »просто отказывается
ctemp_ip = left (csingle_ip (i), instr (csingle_ip (i), ":")-1)
ifinstr (ctemp_ip, "*") <> 0then " - широкий диапазон
CSTART_IP = LEAND (CTEMP_IP, instr (ctemp_ip, "*")-1)
ifleft (cinput_ip, len (cstart_ip)) = cstart_ipthen
Checkip = false
Выходная функция
эндиф
эндиф
ifinstr (ctemp_ip, "-") = 0then
CSTART_IP = CTEMP_IP
cend_ip = ctemp_ip
еще
CSTART_IP = LEAND (CTEMP_IP, Instr (CTEMP_IP, "-")-1)
cend_ip = left (cstart_ip, instrrev (cstart_ip, ".")-1)+"."+mid (ctemp_ip, instr (ctemp_ip, "-")+1)
эндиф
ifip2str (cinput_ip)> = ip2str (cstart_ip) andip2str (cinput_ip) <= ip2str (cend_ip)
Checkip = false
Выходная функция
эндиф
elseifinstr (csingle_ip (i), "разрешить") <> 0then "разрешить
ctemp_ip = left (csingle_ip (i), instr (csingle_ip (i), ":")-1)
ifinstr (ctemp_ip, "*") <> 0then " - широкий диапазон
CSTART_IP = LEAND (CTEMP_IP, instr (ctemp_ip, "*")-1)
ifleft (cinput_ip, len (cstart_ip)) = cstart_ipthen
Checkip = true
эндиф
эндиф
ifinstr (ctemp_ip, "-") = 0then
CSTART_IP = CTEMP_IP
cend_ip = ctemp_ip
еще
CSTART_IP = LEAND (CTEMP_IP, Instr (CTEMP_IP, "-")-1)
cend_ip = left (cstart_ip, instrrev (cstart_ip, ".")-1)+"."+mid (ctemp_ip, instr (ctemp_ip, "-")+1)
эндиф
ifip2str (cinput_ip)> = ip2str (cstart_ip) andip2str (cinput_ip) <= ip2str (cend_ip)
Checkip = true
еще
Checkip = false
эндиф
эндиф
следующий
конечная функция
'*********************************