静的なローカル リストは使用しないでください。whois サーバーは時間の経過とともに変化する可能性があります (毎日ではありませんが、発生する可能性があります)。特定のドメインまたは IP のサーバーを見つけるには、IANA の whois サーバーにクエリを実行することから始めます。基本的に、whois.iana.org:43 に接続し、クエリ文字列に続けて " \r\n " を送信します。たとえば、「ibm.com\r\n」または「72.163.5.201\r\n 」の場合、IANA whois サーバーは「ヒント」を含む回答を返します。たとえば、72.163.5.201 のクエリは
% IANA WHOIS server
% for more information on IANA, visit http://www.iana.org
% This query returned 1 object
refer: whois.arin.net
inetnum: 72.0.0.0 - 72.255.255.255 organisation: ARIN status: ALLOCATED
whois: whois.arin.net
changed: 2004-08 source: IANA
ここで、「 whois: 」エントリを検索する応答を解析し、IP またはドメイン (この場合は whois.arin.net) を担当する whois サーバーの名前を抽出し、そのサーバーを使用してクエリを繰り返します。ただし、場合によっては (例: "com" ドメインと verisign の whois サーバー)、2 番目の応答で別の whois サーバーへの紹介が返されることがあります。 .com ドメインが返されます
Domain Name: VERISIGN-GRS.COM
Registrar: CSC CORPORATE DOMAINS, INC.
Sponsoring Registrar IANA ID: 299
Whois Server: whois.corporatedomains.com
Referral URL: http://www.cscglobal.com/global/web/csc/digital-brand-services.html
Name Server: AV1.NSTLD.COM
Name Server: AV2.NSTLD.COM
Name Server: AV3.NSTLD.COM
Name Server: AV4.NSTLD.COM
Status: clientTransferProhibited https://www.icann.org/epp#clientTransferProhibited
Status: serverDeleteProhibited https://www.icann.org/epp#serverDeleteProhibited
Status: serverTransferProhibited https://www.icann.org/epp#serverTransferProhibited
Status: serverUpdateProhibited https://www.icann.org/epp#serverUpdateProhibited
Updated Date: 12-jan-2016
Creation Date: 08-sep-2000
Expiration Date: 08-sep-2016
このような場合、「Whois Server:」行を見つけて、whois サーバー名 (この場合は whois.corporatedomains.com) を抽出し、クエリを繰り返す必要があります。最後の注意点として、場合によっては、サーバーがクエリしたばかりのサーバーであっても「紹介」が返されることがあるため、無限ループを回避するためにそのような条件を確認する必要があります