#!/usr/bin/perl # # use Mail::RBL to look up spammy domains. # Mon Sep 15 08:29:30 PDT 2008, rudy # $cr = "
\n"; sub CheckRBL { my $host = shift; my $link_ip; use Net::DNS; my $res = Net::DNS::Resolver->new; my $query = $res->search($host); if ($query) { foreach my $rr ($query->answer) { next unless $rr->type eq "A"; $link_ip = $rr->address; print "$host has address $link_ip\n"; } } else { warn "query failed: ", $res->errorstring, "\n"; } if ($link_ip) { use Mail::RBL; my $list = new Mail::RBL('blackholes.five-ten-sg.com'); if ($list->check($link_ip)) { if (my ($ip_result, $optional_info_txt) = $list->check($link_ip)) { $err = "Oops... you IP $link_ip is blocked.${cr} $ip_result ${cr}"; $err .= "The blocking list says $optional_info_txt ${cr}" if $optional_info_txt; $err .= "${cr}Blocked by five-ten-sg.com"; die($err); } } } } ### Command line usage: $0 host.name.tld &CheckRBL(shift || 'casinofirstest.com');