Guten Tag,
wenn ich eine Domain eingebe bzw eine IP dann werden die Blacklist Server nachgefragt ob die IP Adresse gefunden wird bzw ob die Blacklisted ist. Ich wollte es so machen das in allen gefundenen Server wo die IP gefunden ist, den Hostname in meiner Datenbank speichern (Und die IP).
Ich möchte nicht alles in einer Liste haben bsp:
id | ip | host
1 | 5.5.5.5 | dns.server1, dns.server2
Meine Vorstellung wäre so:
id | ip | host
1 | 5.5.5.5 | dns.server1
2 | 5.5.5.5 | dns.server2
ist das möglich?
Code sieht so aus:
PHP Code:
$ip = gethostbyname(gethostname($_POST['url']));
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",
"blacklist.woody.ch",
"combined.abuse.ch",
"dnsbl-2.uceprotect.net",
"dnsbl.dronebl.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($insert = $pdo->prepare("INSERT INTO `blacklist` (`domain`,`ip`,`dns_host`) VALUES (:domain, :ip, :dns_host);")) :
$insert->BindValue('domain', $domain, PDO::PARAM_STR);
$insert->BindValue('ip', $ip, PDO::PARAM_STR);
$insert->BindValue('dns_host', $host, PDO::PARAM_STR);
if(!$insert->execute()) {
print_r($insert->errorInfo());
}
endif;
}
}
}
if (empty($listed)) {
echo '"A" record was not found';
} else {
echo $listed;
}
}
Sorry für den Spam kann geschlossen werden, es ist genau so wie ich es wollte trotz danke