Averiguar o endereço IP de um visitante e bloquear IPs, em ASP

Veremos como averiguar o endereço IP de um visitante em uma página ASP. É um processo muito simples, já que existem duas variáveis de servidor que nos oferecerão diretamente esta informação.

Podem ocorrer dois casos que temos que comprovar: 1) que o visitante navegue ele mesmo sobre a página y 2) que navegue através de um proxy. Isto podemos comprovar da seguinte maneira:

‘ Salvar a IP do visitante
‘O visitante pode acessar por proxy, então pego a IP que estiver utilizando
ip = request.servervariaveis(“HTTP_X_FORWARDED_FOR”)
‘Se não vier de um proxy, pego a ip do visitante
if ip =”” then
ip = Request.servervariaveis(“REMOTE_ADDR”)
end if

Se quisermos evitar que um visitante navegue em nossas páginas com uma IP dada, simplesmente temos que comprovar com um IF que essa IP que queremos bloquear não é a do visitante.

if ip = “127.0.0.1” then
response.write (“bloqueio”)
end if

Imaginemos que temos uma lista de IPs que queremos bloquear. Então seria útil colocar um simples array de IPs a bloquear e um loop para percorre-lo, de modo que possamos comprovar se a IP do visitante está no array de bloqueadas.

‘crio um array de ips bloqueadas
dim ips_bloqueadas(5)
ips_bloqueadas(0) = “10.10.1.1”
ips_bloqueadas(1) = “103.10.1.21”
ips_bloqueadas(2) = “1.130.41.1”
ips_bloqueadas(3) = “30.105.61.13”
ips_bloqueadas(4) = “102.210.161.1”

‘para cada ip bloqueada
for each ip_atual in ips_bloqueadas
‘se a ip do visitante for igual a uma delas que há que bloquear
if ip = ip_atual then
response.redirect “explica_bloqueio.html”
end if
next

Fonte: http://www.criarweb.com/artigos/787.php

Deixe um comentário