Mailinglisten-Archive |
Tach, > hmm, das würde doch aber immer noch 0.1.2.4 finden, oder? > allerdings muss ich zugeben, dass mich da meine weiteren kenntnisse über IP > Adressen verlassen... kann es welche geben, die mit weniger als 127. > beginnen? gibt es sonst noch was? Also unter 127 ist doch kein Problem. Class A Netz. Du würdest im Zweifelsfall Leute von IBM oder von der amerikanischen Regierung aussperren. 127.0.0.1 (localhost) oder 192.168 (privater Adressbereich für Intranets) wären zumindest erstaunlich, wenn du nicht lokal oder im Intranet testest. Ansonsten http://www.uni-karlsruhe.de/~za221/ossos/tcpip.htm > irgendwie könnte man das auf jeden Fall auch so aufbauen: > > if ( ereg( "^([0-9]{1,3})\.([0-9]{1,3})\.([0-9]{1,3})\.([0-9]{1,3})$", > $str1, $regs ) ){ Da will aber einer unbedingt zeigen, daß er REGEXP kann ;-)). Wie gesagt, gehen tuts, aber diese Banwürmer sind auch eher fehleanfällig. explode und is_int ist weniger fehleranfällig. > if($regs[1]<127 || $regs[1]>255 || $regs[2]>255|| > $regs[3]>255||$regs[4]>255){ < 127 ist wie erwähnt nicht sinnvoll. Außerdem müßtest du noch jeden einzelnen Sonderfall (Broadcast, erster Teil >224, privater Bereich, etc.) abfangen. Aber braucht man das wirklich? Nun gut, hoffen wir auf schönes Wetter und harren der Dinge, die da kommen. Bylle
php::bar PHP Wiki - Listenarchive