-
-
Save tbreuss/74da96ff5f976ce770e6628badbd7dfc to your computer and use it in GitHub Desktop.
<?php // Simple PHP script to lookup for blacklisted IP against multiple DNSBLs at once. ?> | |
<html> | |
<head> | |
<title>DNSBL Lookup Tool - IP Blacklist Check Script</title> | |
</head> | |
<body> | |
<h2>IP Blacklist Check Script</h2> | |
<form action="<?php echo $_SERVER['PHP_SELF'] ?>" method="post"> | |
<input type="text" value="" name="ip"/> | |
<input type="submit" value="LOOKUP"/> | |
</form> | |
<?php | |
/** | |
* The IP-address to be looked up. | |
* @param string $ip | |
*/ | |
function dnsbllookup($ip) | |
{ | |
// Add your preferred list of DNSBL's | |
$dnsbl_lookup = [ | |
"dnsbl-1.uceprotect.net", | |
"dnsbl-2.uceprotect.net", | |
"dnsbl-3.uceprotect.net", | |
"dnsbl.dronebl.org", | |
"dnsbl.sorbs.net", | |
"zen.spamhaus.org", | |
"bl.spamcop.net", | |
"list.dsbl.org" | |
]; | |
$listed = ""; | |
if ($ip) { | |
$reverse_ip = implode(".", array_reverse(explode(".", $ip))); | |
foreach ($dnsbl_lookup as $host) { | |
if (checkdnsrr($reverse_ip . "." . $host . ".", "A")) { | |
$listed .= $reverse_ip . '.' . $host . ' <font color="red">Listed</font><br />'; | |
} | |
} | |
} | |
if (empty($listed)) { | |
echo '"A" record was not found'; | |
} else { | |
echo $listed; | |
} | |
} | |
if (isset($_POST['ip']) && $_POST['ip'] != null) { | |
$ip = $_POST['ip']; | |
if (filter_var($ip, FILTER_VALIDATE_IP)) { | |
echo dnsbllookup($ip); | |
} else { | |
echo "Please enter a valid IP"; | |
} | |
} | |
?> | |
</body> | |
</html> |
@msl-durgesh Maybe this could help or inspire (https://dnsbl.tebe.ch, https://github.com/tbreuss/dns-blacklist-check)
Thanks @istiak101. I will go through your referencies and remove the UceProect RBLs.
Be aware: zen.spamhaus.org marks a lot of private ip adresses, which don't send out spam and fill out regular forms.
I would recommend using primarily uceprotect level 1, 2 and also 3.
Be aware: zen.spamhaus.org marks a lot of private ip adresses, which don't send out spam and fill out regular forms.
I would recommend using primarily uceprotect level 1, 2 and also 3.
you do know that uceprotect is even worst than spamhaus.
At least spamhaus has a usable delisting process and keeps its listings up to date.
Not to mention uceprotect charges for removal even if it is not your problem.
Hello.
The script works ok on A records, but actually due to my type of work i do not use A records but we add Name Servers. Can you please help me on how to change the script to work on NS.
Regards,
Mond
It works perfectly. Grete work
Thank You!
@TecDeveloper: Good idea, i changed the form to post.