Menunjuk Otomatis Whois Server yang Digunakan

Kalau kita melakukan query whois dari sebuah linux (jwhois pada CentOS), kita akan diberikan tampilan standar hasil output dari whois server pemegang Ekstension terkait seperti;

  • whois.verisign-grs.com untuk .net, .com
  • whois.publicinterestregistry.net untuk .org
  • whois.afililas.info untuk .info
  • dan lain lain

Sementara saat ini masing-masing registrar memiliki whois server tersendiri yang menyimpan data lebih lengkap di banding whois server tersebut di atas.

Tulisan ini akan menceritakan cara *sederhana* untuk mendapatkan informasi yang lebih lengkap dengan bantuan pyrhon. Script yang ada di sini tidak siap pakai, melainkan lebih menceritakan konsep dari fungsi terkait.

Pada prinsipnya yang harus dilakukan adalah;

  • Memeriksa apakah domain tersebut sudah terdaftar
  • Mencari di registrar mana didaftarkan dan whois server registrar terkait yang dapat digunakan melalui port 43
  • Menyimpan output dari whois domain.tld -h whoisserver
def _whois_query(domain):
result = os.popen('whois %s' % domain).read()
whoisserver = ""
if re.search('no match', result.lower()):
result = 'Domain belum terdaftar.\nSilahkan coba kembali.'
else:
result = result.split()
for i in range(len(result)):
if re.search('^whois.', result[i]):
whoisserver = result[i]
if whoisserver:
result = os.popen('whois %s -h %s' %(domain,whoisserver) ).read()
result = result.split('\n')
return result

Mohon perhatikan hirarkinya, soalnya entah gimana caranya biar bisa di tampilkan.

4 Responses to “Menunjuk Otomatis Whois Server yang Digunakan”

  1. kombes.com Says:

    Wah master linux semua nich disini, bantuin dunk temen2 lainnya di Forum : http://forum.kombes.com/forumdisplay.php?f=62 (Linux Forum) Thanks yach


  2. uwiuw Says:

    bang tajib, apa ada kemungkian kalau tehnik ini di php kan heu heu heu sy ngak install linux :)


  3. Pradhana Says:

    Berdasar dari kode diatas, untuk di PHP mungkin bisa menggunakan kode dibawah ini.

    function _whois_query($domain) {
    //Cek apakah domain valid.
    if (!preg_match(”/^([a-zA-Z0-9-]+)\.[a-zA-Z]{2,6}$/”,$domain)) {
    return “Domain tidak valid\n”;
    }

    //Query whois
    exec(”whois $domain”,$output);

    //http://gnuwin32.sourceforge.net/packages/jwhois.htm
    /*Asumsi jwhois.exe pada direktori WINDOWS*/
    //exec(”jwhois.exe $domain”,$output);

    //Cek apakah domain ditemukan.
    if (eregi(”(.*)no match(.*)”,implode(”\n”,$output))) {
    $result = “Domain belum terdaftar.\nSilakan coba kembali.\n”;
    }
    else {
    //Mencari whois server spesifik
    for ($i=2;$i<count($output);$i++) {
    if (preg_match(’/whois[A-Za-z0-9\\-\\.]+$/’,
    $output[$i],$matches,PREG_OFFSET_CAPTURE)) {
    $whoisserver = $matches[0][0];
    break;
    }
    }
    //Destroy variable $output
    unset($output);
    //Query whois
    exec(”whois -h $whoisserver $domain”,$output);
    //exec(”jwhois.exe $whoisserver $domain”,$output);
    $result = implode(”\n”,$output);
    }
    //Mengembalikan hasil
    return $result;
    }

    print _whois_query(”tajidyakub.net”);

    Kode ini menggunakan fungsi exec dimana jika di-disable pada php.ini maka tidak bisa dijalankan.


  4. Tajid Yakub Says:

    Nah Mas Dhana dateng …, sry mas gak bisa tag code nya ternyata di comment .. sudah saya coba ..


Leave a Reply

XHTML: You can use these tags: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>