Blacklists (5) - Lookup einer IP-Adresse (PHP)

Bei BlacklistAlert findet sich eine recht lange Liste von Blacklists, die allesamt als Subdomain des jeweiligen Blacklist-Providers realisiert sind. Man kann nach einem simplen Schema ein Lookup für eine bestimmte IP realisieren, das für alle Blacklist-Provider gleich lautet:

Man stellt die abzufragende IP in umgekehrter Reihenfolge vor den Namen der Subdomain, und macht ein DNS-Lookup. Bei der IP "85.182.76.104" wäre das z.B der Aufruf:

$ipv = gethostbyname ("104.76.182.85.subdomain.domain.net");

Konkretes Beispiel (PHP-Code):

$ip = explode(".", $_SERVER[REMOTE_ADDR]); $addr = "$ip[3].$ip[2].$ip[1].$ip[0].dnsbl-1.uceprotect.net"; $ipv = gethostbyname ($addr); if ($ipv == "127.0.0.2") /* Die IP ist auf der Blacklist */

Der Rückgabewert für eine gelistete IP - "127.0.0.2" - ist bei allen Blacklist-Providern derselbe (wenn die IP nicht gelistet ist, wird der übergebene Domain-Name unverändert zurückgegeben).

Es würde sich für einen Blog anbieten, die IP eines Users zumindest mit einigen Blacklists abzugleichen, und ihn zu warnen, falls er dort gelistet wird. Das sollte man spätestens dann tun, wenn er im Begriff ist, einen Kommentar zu posten.

Falls es hilft: man kann das Codefragment herunterladen, mit der ich die Warnung über dem Kommentarfeld meiner Seiten ausgebe, wenn mein Blacklist-Test positiv ausfällt.