~ GELÖST ~ / IP Weiterleitung

Wen du den ganzen Range sperren willst kansnt du dies doch einfach per deny from 123.123.123.* lösen?

Dann schreibst du die Ranges einfach untereinander?

deny from 123.123.123.*
deny from 124.124.124.*
deny from 127.0.0.*

etc…

Da bin ich wieder :sunglasses:

ich war lange Zeit nicht da, ich weiß. Sorry nochmals ^^.

Da war doch nichts kompliziertes, du konntest die ipranges (als array) doch in einer foreach-schleife durchgehen lassen…

Egal !haue

du bist ein schwerer fall :slight_smile:

richtig würde der code so aussehen.

<?php
$ip = $_SERVER['REMOTE_ADDR'];
if (substr($ip,0,9) == "32.43.22." OR substr($ip,0,9) == "55.33.62." OR substr($ip,0,9) == "35.23.32.")
{
$dd="sperrseite.com";
header("location: $dd");
}
?>

hier mal eine kleine erklärung:

substr liest aus $ip zeichen aus. das ist alles. $ip (da ist die ip gespeichert),0 (ist die position von der er anfängt zu lesen),10 (die anzahl der zeichen, die er einliest).

lautet die ip zum beispiel “132.43.22.” sind es nicht 9 zeichen sondern 10 die er einlesen muss. einfach erklärt: substr schaut nur ob die ersten 10 zeichen der ip mit den 10 zeichen die du in anführungszeichen schreibst übereinstimmen und wenn ja wird auf die vorgegebene seite weitergeleitet.

wenn sie nicht übereinstimmen geht es einfach normal weiter mit dem code. das heisst, alles was nach diesen code steht wird ausgeführt.

die ip, die du in anführungszeichen schreibst, sollte nur die ersten 3 oktetts anzeigen. dann ist egal was im letzten oktett steht. egal ob nun die letzte zahl 1 ist oder 255.

hoffe du verstehst es diesmal besser :slight_smile:

mfg Drenton

Besser gleich str_pos nehmen - dann ist die Länge egal, und man braucht die Stelle(n) nicht anpassen, wenn man mal längere oder kürzere IP-Teile einsetzen will.