Web ドメインが利用可能かどうかをプログラムで判断する最も効率的な方法は何ですか?
-
01-07-2019 - |
質問
ネットワーク ドメインが登録されているかどうかを確認するコードを作成しています。たとえば、「Google123.com」が利用可能かどうかを確認したいとします。これをプログラムで実行できる方法は少なくとも 2 つありますが、どちらがより有効であるかはわかりません。
- a)Linux/Cygwinでは、ドメインが使用されているかどうかを確認するためにWHOISコマンドを起動できます。
- b)Linux/Windowsでは、nslookupコマンドを起動して、ドメインが解決可能かどうかを確認できます。
私の質問は次のとおりです。
- nslookup は本当に登録を確認する有効な方法ですか?登録されているすべてのドメインにはネーム サーバーがあり、DNS に表示されますか?
- この登録確認を最も早く行う方法は何ですか?何かヒントや他の方法はありますか?
解決
nslookup は、システム設定にある DNS サーバーにアクセスします。時代遅れであるか、DNS エントリがない可能性があります。最善の方法は、whois.internic.net ポート 43 (whois ポート) に TCP 接続し、確認したい名前を渡すことです。そうすれば、それを知らせる応答が得られるはずです。存在しない場合は、次のような応答が返されます。 「domainyourchecking.com」に一致するものはありません
他のヒント
#1に関しては、いいえ。登録されたドメインに実際に DNS が存在する必要はありません。
Whois の問題は、さまざまな TLD から一貫した応答がないことです。
したがって、.com またはその他の特定の TLD だけを探している場合は問題ありません。さまざまな ccTld やその他の gTld を調べ始めると、whois コマンドによって返されたデータの「利用可能」が何を意味するかを理解しようとするロジック内に多くの特殊なケースが見つかる可能性があります。
Whois は、ドメインが使用可能な場合でも、常にシェルに成功を返します。:(
ドメインを検索できる Web サイトの中には、実際には、ドメインを検索するとすぐにそのドメインを買い占め、売ろうとするドメイン投機家の隠れ先になっているという噂があります。私はそのような詐欺に遭遇したことはありませんが、夢のドメイン名を検索する前に、新しいサイトでゴミドメインの検索をいくつか試してみるとよいでしょう。
これで「はい」か「いいえ」ですぐに答えられますが、無料だと思って欲しい場合は登録してみると、すでに利用されていることがわかるかもしれません。
system("whois $ドメイン名");