新しいTLDをwhoisする方法は?


46

whoisLinux のコマンドを使用して、.email、.guruなどの新しいTLDを検索するにはどうすればよいですか?

whois新しいTLDで実行すると、応答のみが返されます。

No whois server is known for this kind of object.

回答:


43

新しいTLDのwhoisサーバーを手動で構成できます。

ファイル/etc/whois.confを作成して次のコンテンツを追加するだけで、新しいTLDを検索できます。

whois.conf(Githubミラー:whois.conf

whois.confは正規表現を使用しています


1
わあ、ありがとう!この情報の入手元を教えてください。このリストは、時間の経過とともに時代遅れになると思います。
ポール14年

2
最新のIANAデータからWHOISサーバーを収集するスクリプトを作成し、この回答を更新しました。
ロイスウィリアムズ14

2
whoisのバージョンごとにwhoisサーバーのスナップショットが異なるため、特に何らかの理由で古いディストリビューションでスタックしている場合は、ユーザーごとに異なるリストが必要になります。リスト全体を毎回使用すると、すべての人にとって有効になります。また、それらすべてを単純に収穫する方がはるかに簡単です。:-)
ロイスウィリアムズ14

1
@TomBrossmanこれがなぜなのか完全にはわかりませんし、それがレジストラレベルに進まないルックアップに関係していることを発見するよりも詳しく調べていません。以下の回答の1つからgwhois.orgツールを使用すると、これがはるかによくわかります。
ポール

3
@TomBrossman正しい。.comドメインにはさまざまなWhoisサーバーがあります。たぶん、whois.confにこれらすべてを入力することが可能です。最も簡単な方法は、おそらく.comエントリを削除することです。
-thde

14

追加のファイルやテーブルを編集することなく、IANAから適切なwhoisサーバーを直接簡単に取得できます。

「.de」TLDの例

Linux、OSX(および互換):

whois -h whois.iana.org .de |
  egrep -e '^whois:' |
  sed -e 's/[[:space:]][[:space:]]*/ /g' |
  cut -d " " -f 2

楽しんで


あなたの答えがもっと支持されたことを願っています。これは完璧で正しい一般化されたソリューションです。ハードコーディングは必要ありません(そうしないと、すべてのOSが新しいTLDごとにWHOISサーバーをハードコーディングする必要があります!)。なぜこれがwhoisユーティリティのデフォルトの動作ではないのかはわかりません(おそらく負荷を減らすためでしょうか?)。とにかく、小道具とありがとう。
-apinstein

2
あなたのアイデアを使用して、ドメインのクエリは次のように機能しますwhois -h $(whois -h whois.iana.org .TLD | grep '^whois:' | sed 's/whois:\s*//') example.TLD。興味深いことに、whois.nic.TLD@ Andrewが指摘したように、ほとんど(またはすべてですか?)のTLDのデータベースホストとして使用するだけで十分です。
ペテルリーノ

これはすべてのTLDで機能するとは限りません。.tube責任をサーバーに公開されていません。おそらく、IANAサーバーがwhois -h whois.iana.org nic.tube作品として責任を負っているからでしょう。
thde

11

ほとんどのwhoisクライアントは、クライアントにまだ知られていないTLDを実行するときに、IANAからwhoisサーバーを積極的に取得する代わりに、TLD whosサーバーをハードコーディングします。

すべてのルックアップはIANAで開始され、必要に応じてレジストリとレジストラに移動するため、すべてのTLDとIPアドレスをサポートするhttp://gwhois.org/を使用できる独自のオンラインwhoisルックアップツールを作成しました。

また、whoisデータをユーザーフレンドリーな方法で表示するインテリジェントなwhoisパーサーの構築にも多くの時間を費やしました。

スクリーンショットの例:

スクリーンショット

スクリーンショット2


私はRubyを実行していないので、これに感謝します。Ubuntu Server 12.04を実行していgwhoisますが、公式リポジトリから追加の25個のパッケージをインストールする必要があるようです。〜4.4MBのストレージを見逃すことはありませんが、これらすべてがパッケージを正しく実行するために本当に必要ですか?
ポール

ああ。Gwhois.orgは、Linuxの「gwhois」パッケージとは関係ありません。混乱して申し訳ありません
iglvzx

さて、それは機能しますが、コマンドラインツールはありませんか?私は何とかコマンドラインの問題を解決したいと思っています。
ポール

1
うん。独自のwhoisツールを作成することにした主な理由は、すでに存在するソリューションに満足していないためです。:)
iglvzx

2
@iglvzxあなたのツールが好きです。アプリを積極的に変更できるように、コードをオープンソース化することを考えましたか?
デビッドオクウィー16

11

これは、ほとんどの新しいTLDで機能するようです:

サーバーのホスト名は次の形式です:whois.nic.newtldname

例えば:

whois -h whois.nic.host example.host

「この名前は、ICANNポリシーに従ってレジストリによって予約されています。」などなど

また、への参照はhttp://nic.newtldname通常レジストリ/起動ページに移動します。


素晴らしい!IANAによって公式にリストされているホストがほとんどのドメインレジストリで異なっていても、なぜこれが機能するのですか?これはどこかに文書化されていますか?これはIANAまたはICANNによって公式にサポートされていますか?-ソリューションの動的バージョンは次のようになりますwhois -h $(whois -h whois.iana.org .TLD | grep '^whois:' | sed 's/whois:\s*//') example.TLD
Peterino

1
TLD拡張機能を受け入れてそのTLDを照会する他のwhoisサーバーを知っていますか?私は2つ知っています:whois.nic.$extそして$ext.whois-servers.net-私はリストに追加する他の人を探しています。
チョビー

5

標準のLinuxクライアントを使用している場合、定義はまだ更新されておらず、新しいTLDSが含まれています。

次の2つの解決策があります。

  1. すべての新しいgTLDのリストを取得し、whoisホストをパラメーターとしてwhoisクライアントに渡します
  2. 代替クライアントを使用します。現在、Ruby WHOISクライアントを新しいgTLDと同期させるために最善を尽くしています。CLIも提供します。

すべての新しいgTLDのリストを取得する場所がわかりません。また、whoisホストをパラメーターとしてwhoisクライアントに渡す方法がわかりません。サーバーにRubyがインストールされていません。これは良い答えではありません。
ポール

ここでのTLDのためのwhoisのホストのシモーヌのリストがあり、ここでは whoisのmanページのコピーです。
ケリートーマス

IANAのルートゾーンデータベースには、TLDのその他の情報とともに、whoisサーバーが含まれています。(TLDのエントリの下部にあります。)
マットノルドホフ

2

OS Xでは、whoisツールは/etc/whois.confサポートで構築されていないようです(slackwareのように?)。これを修正する簡単な方法は、homebrewから "重複" whoisをインストールすることです。あなたはそれをすることができます

brew tap homebrew/dupes
brew update
brew install whois
brew untap homebrew/dupes

この方法では、whoisサーバーの更新されたリストを使用します(ただし、.soおよび.ninjaドメインでのみテストしました)。


これを知ってよかった。更新されたwhoisCLI をインストールする1つのライナーはbrew install homebrew/dupes/whois

1

1つの方法は、TLD .whois-servers.netをwhoisサーバーとして使用することです。例:

whois -h mobi.whois-servers.net npr.mobi

whois-server.net(CenterGate LLC、ノー提携により実行)ドメインは、公式TLDのwhoisサーバ、例えばDNSにCNAMEリダイレクトのうまくいけば最新のリストが含まれています。

dig mobi.whois-servers.net
...
;; ANSWER SECTION:
mobi.whois-servers.net. 146     IN      CNAME   whois.dotmobiregistry.net.

ほとんどの場合、これは機能します。さらに短い構文があります(少なくともOSXでは)whois -c mobi npr.mobi。悲しいことに、それは、例えば書き込み時ではないすべてのドメインの作業を行いますwhois -c tube nic.tube
thde

1

/etc/whois.confを更新するには、次のようなスクリプトを使用できます

/*
 * Usage : node generateWhoisConf.js > /etc/whois.conf
 */

var json = require('comment-json');
var request = require('request');

request('https://github.com/weppos/whois/raw/master/data/tld.json', function(error, response, body){
  var obj = json.parse(body);
  Object.keys(obj).forEach(function(key){
    if(obj[key].host){
      console.log(key.replace(/\./g,'\\.') + '$ ' + obj[key].host);
    }
  });
});

https://gist.github.com/HugoPoi/4694a99f5a9d9b2c558557bbdd113f54

この他のgithubリポジトリは、whoisサーバーに関する良いデータを提供しますhttps://github.com/whois-server-list/whois-server-list


スーパーユーザーへようこそ!リンクされたページが変更されると回答が無効になる可能性があるため、回答の重要な部分を参照リンクから引用してください。
DavidPostill

0

私のソリューションはそれほど洗練されていませんでした。Debian WheezyまたはSqueeze、またはOS X El CapitanまたはSnow Leopardで特定のTLDを検索できませんでした。しかし、Debian JessieでTLDを検索できることがわかりました。Debianマシンで、私はJessieのwhoisのソースを取得してビルドしました。今は正常に動作します。OS Xの場合、MacPortsを介して新しいバージョンのwhoisを入手しました。


0

リクエストの1つに対して同じ問題のあるサーバーの応答がありました。

この場合、-aスイッチの使用は簡単で、うまく機能しました。

whois -a [your_request_here]

からman

[This flag is] understood by whois.ripe.net and some other RIPE-like servers:
-a
    Also search all the mirrored databases. 

0

または、より良いツールを使用できます。例えば、最初に適切なサーバーを柔軟に検索するGNU jwhoiswhois、次にそのサーバーを使用して実際の検索を実行します。

jwhoisは、正規表現またはCIDRブロックのいずれかを使用して、柔軟な構成ファイルに基づいてクエリするWhoisサーバーを選択できる、改良されたWhoisクライアントです。

GNUパス:https :
//ftp.gnu.org/gnu/jwhois/ Github one:https : //github.com/jonasob/jwhois


新しいTLDでは機能しません。
ポール

皮肉なことに、これが私が新しいTLDを誰にできないのかという理由でした。何らかの理由で、このツールはデフォルトでインストールされていました。プレーンなwhoisの1つをインストールし、新しいTLDを照会することができました。ハックは不要です。
意欲的な開発者
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.