webForumDet fria alternativet

Skapa en IP blockare

ASP

7 svar · 387 visningar · startad av His Divine Shadow

Medlem sedan sep. 20004 079 inlägg
Frågan#1

Hur gör jag en IP blockering på en sida?

Jag skulle t.ex. skriva in ett IP nummer eller del av ett nummer eller hämta från en databas.

Jag tänker på nått enkelt bara:
IF IP = 192.342.*.* THEN
Get lost
ELSE
Welcome
END IF

Medlem sedan mars 20016 260 inlägg
#2

sök på webforum..

annars förstår jag inte problemet, det är väl som du skriver? gör en include som du kan ha på varje sida du ska kolla vilken ip det är..
och sen tar du en response.redirect om ip:et uppfyller visa krav..

Medlem sedan sep. 20004 079 inlägg
#3

Jo jag har fixat en själv nu:

<%
Dim IP_truth
' requesting the Visitors IP address
IP_truth = request.servervariables("Local_ADDR")
' Dim the number of IP's we are blocking 
Dim NumberOf
'The number of IP's to be blocked
NumberOf = 1
' Dim the Array , the number MUST be the same as the above variable.
Dim Ip_array(1)
' We give values to the Array
Ip_array(0) = "xxx.xxx.xxx.xxx"
Ip_array(1) = "xxx.xxx.xxx.xxx"

For I = 0 to NumberOf
If Ip_array(I) = IP_truth then%>
Hello user, your apparently banned, the author of this site has been notified
>Kod som mailar här, redan fixat<
<%
End If 
next
%>

Vad jag undrar nu är om jag kan istället för att lägga in exakta IP nummer kan använda mig av s.k. IP ranges?

Medlem sedan feb. 200112 078 inlägg
#4

Exakt det du är ute efter har diskuterats i jag vet inte hur många trådar den senaste veckan. Har alla fått IP-bannar-dille eller? :p

Sök och du skall finna. :)

Redigering) Jag letade upp ett par av de mest relevanta.
http://www.webforum.nu/showthread.php?s=&threadid=51592&highlight=IP*
http://www.webforum.nu/showthread.php?s=&threadid=51814&highlight=IP*

(Det var visst inte så många som jag trodde. :o :l

Medlem sedan mars 20015 287 inlägg
#5

Hyfsat OT, varför vill man banna folk egentligen? Och varför vill man banna hela serier???

Medlem sedan sep. 20004 079 inlägg
#6

OveRRidE skrev:

Exakt det du är ute efter har diskuterats i jag vet inte hur många trådar den senaste veckan. Har alla fått IP-bannar-dille eller? :p

Fått ett troll på halsen.

Sök och du skall finna. :)

Brukade söka, brukade inte hitta nått så, meh :p

Medlem sedan sep. 20004 079 inlägg
#7

Ärligt talat fattade jag inte mycket av domdär exemplen heller.

Denna såg enkel och intressant ut förstås:

strIP = "192.168.200.100"
strIP = Left(strIP, instrRev(strIP, ".")) & "xxx"

Kanske jag kan ändra arrayen då:
Ip_array(0) = "192.168.32.1"
Ip_array(0) = Left(strIP, instrRev(strIP, ".")) & "xxx"
Ip_array(1) = "192.168.33.2"
Ip_array(1) = Left(strIP, instrRev(strIP, ".")) & "xxx"

Skulle detta funka? så att alla 32 och 33:or blir bannade?

Medlem sedan apr. 20022 743 inlägg
#8

Hejsan

Som jag skrev i ett tidigare inlägg är jag inte så hemma på det här med IP men som jag fattat det vill du spärra alla som har ett IP likt de du inte vill ha på din sida fast de sista siffrorna har ingen betydelse, är det rätt?

jaja, skrev ihop ett litet script iallafall ;)
kanske kan du ha användning av nått i det allafall

<%
'// Här skriver du de IP adresser som ska blockas
'// separera de med ; utan några mellanrum
sBlocka = "127.0.0.1;111.222.333"

'// I sStyle bestämmer du om du vill banna hela serier eller endast de angivna Ip:na
'// 1 = Hela serien, 2 = Angivet IP
sStyle = 1

'// Splittar upp Ip:na in i en array
sBlocka = Split(sBlocka, ";")

For b = 0 To Ubound(sBlocka)
    If sStyle = 1 Then
        sIP = Request.Servervariables("REMOTE_ADDR")
        If Left(sIP, InStrRev(sIP, ".")) = Left(sBlocka(b), InStrRev(sBlocka(b), "."))  Then
            '// Meddelandet man får om man är blockerad
            Response.Write "Tyvärr, du är blockad från denna sajt.."

            '// Denna rad avslutar scriptet så att inget på sidan visas
            Response.End 
        End If
    Else
        If Request.Servervariables("REMOTE_ADDR") = sBlocka(b) Then
            '// Meddelandet man får om man är blockerad
            Response.Write "Tyvärr, du är blockad från denna sajt.."

            '// Denna rad avslutar scriptet så att inget på sidan visas
            Response.End 
        End If
    End If
Next
%>
283 ms totalt · 4 externa anrop · v20260731065814-full.a51de22e
132 ms — deklarationer (db)
0 ms — hämta statistik (cache)
145 ms — hämta tråd, inlägg och bilagor (db)
136 ms — ändringar (db)