รูปแบบ protocol ของ whois
การทำงานของ whois นั้นจะเป็นแบบ client/server ทางฝั่ง server จะทำงานอยู่ที่ port 43 โดยรองรับการติดต่อจาก client เพื่อรอรับคำสั่ง โดยการเรียกดูนั้นเพียงทำการส่งชื่อสิ่งเราต้องการค้นหาตามด้วย CRLF (\r\n) เท่านั้นแล้วรอรับข้อมูลกลับมา
แล้วเราจะติดต่อไปยัง server ไหนล่ะ?
โดยทั้งไปแล้วแต่ละ registrar จะมีบริการ whois server ของตนเองอยู่แล้ว แต่ไม่เป็นการดีแน่ที่ต้องตรวจสอบจากทุก registrar เรายังมีอีกทางคือผู้ให้บริการ whois server ซึ่งวันนี้จะแนะนำคือ whois-servers.net โดยสามารถรองรับได้ทก tld (Top-level domain) โดยมีการรองรับแต่ละ tld เช่น ต้องการตรวจสอบ .th ก็ติดต่อไปที่ th.whois-servers.net, ต้องการตรวจสอบ .com ก็ติดต่อไปที่ com.whois-servers.net โดยแต่ละซับโดเมนมีการชี้ไปยัง whois server ที่เหมาะสมเช่น th.whois-server.net นั้นจะมีการชี้ไปยัง thnic เป็นต้น
เราเพียงหาส่วนท้ายของโดเมนเราก็สามารถติดต่อเข้าไปเราก็จะได้ข้อมูลกลับมา
ตัวอย่างใน php
<?php
$server = "com.whois-servers.net";
$domain = "modoeye.com";
$conn = @fsockopen($server, 43);
@fwrite($conn, $domain."\r\n");
$result = NULL;
while($data = @fgets($conn)){
$result = $data;
}
@fclose($conn);
echo $result;
?>
แต่ในเนื่องจากบาง tld นั้นมีหลาย registrar ซึ่งอาจมีข้อมูลที่ไม่เป็นปัจจุบัน เราสามารถทำการติดต่อไปยัง server ของ registrar ดังกล่าวได้เพื่อให้ได้ข้อมูลที่ถูกต้อง โดย server นั้นจะมีอยู่ในผลของการ whois จาก whois-servers.net มาด้วยอยู่แล้ว