Linuxでwhois
コマンドを使用して、.email、.guruなどの新しいTLDを検索するにはどうすればよいですか?
新しいTLDでwhois
を実行すると、応答のみが返されます。
No whois server is known for this kind of object.
新しいTLDのwhoisサーバーを手動で構成できます。
ファイル/etc/whois.conf
を作成して次のコンテンツを追加するだけで、新しいTLDを検索できます。
whois.conf (Github Mirror: whois.conf )
Whois.confは 正規表現 を使用しています。
追加のファイルやテーブルを編集することなく、適切なwhoisサーバーIANAから直接を簡単に取得できます。
"。de" TLDの例
Linux、OSX(および互換):
whois -h whois.iana.org .de |
egrep -e '^whois:' |
sed -e 's/[[:space:]][[:space:]]*/ /g' |
cut -d " " -f 2
楽しんで
ほとんどのwhoisクライアントは、クライアントがまだ認識していないTLDを実行するときにIANAからwhoisサーバーをアクティブに取得する代わりに、TLD whosサーバーをハードコーディングします。
すべてのルックアップはIANAで開始され、必要に応じてレジストリとレジストラに移動するため、すべてのTLDとIPアドレスをサポートする http://gwhois.org/ を使用できる、独自のオンラインwhoisルックアップツールを作成しました。
また、whoisデータをユーザーフレンドリーな方法で表示するインテリジェントなwhoisパーサーの作成にも多くの時間を費やしました。
スクリーンショットの例:
これはほとんどの新しいTLDで機能するようです:
サーバーのホスト名は、whois.nic.newtldnameという形式です。
例えば。:
whois -h whois.nic.Host example.Host
「この名前はICANNポリシーに従ってレジストリによって予約されています。」などなど
また、http://nic.newtldname
は通常、「レジストリ/起動」ページに移動します。
標準のLinuxクライアントを使用している場合、定義はまだ更新されておらず、新しいTLDSが含まれています。
次の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ドメインでのみテストしました)。
1つの方法は、whoisとして[〜#〜] tld [〜#〜]。whois-servers.netを使用することですサーバー、例:
whois -h mobi.whois-servers.net npr.mobi
whois-server.netドメイン(CenterGate LLCによって実行され、アフィリエーションなし)には、公式のTLDへのDNS CNAMEリダイレクトのうまくいけば最新のリストが含まれていますwhoisサーバー、例えば:
Dig mobi.whois-servers.net
...
;; ANSWER SECTION:
mobi.whois-servers.net. 146 IN CNAME whois.dotmobiregistry.net.
/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
私のソリューションはあまり洗練されていませんでした。 Debian WheezyまたはSqueeze、またはOS X El CapitanまたはSnow Leopardで特定のTLDを検索できませんでした。しかし、Debian JessieでTLDを検索できることがわかりました。 Debianマシンでは、Jessieのwhoisのソースを入手してビルドしました。今は正常に動作します。 OS Xの場合、MacPortsを通じて新しいバージョンのwhoisを入手しました。
リクエストの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.
または、より優れたツールを使用することもできます。例えば。 GNUjwhois最初に適切なwhois
サーバーを柔軟に検索し、次に実際の検索を使用してそのサーバー。
jwhoisは、正規表現またはCIDRブロックを使用して柔軟な構成ファイルに基づいてクエリするWhoisサーバーを選択できる、改善されたWhoisクライアントです。
GNUパス: https://ftp.gnu.org/gnu/jwhois/
Github one: https://github.com/jonasob/jwhois