network

whoisコマンドで新興TLDのドメイン創設日を調べる

投稿日:2019年8月12日

各ドメインの情報は属するトップレベルドメイン(.jpなど)が管理するDNSサーバによって管理されています。この情報を辿って指定したドメインの情報を参照する仕組みが「whois」です。

最近は各トップレベルドメインがWebサイトを持つようになり、ブラウザでwhois出来ますが、.jpなら.jpの検索に留まってしまいます。

その点Linuxのwhoisコマンドなら各トップレベルドメインへの参照ハブになる「whois-servers.net」がデフォルトwhoisサーバになっている為、大部分のトップレベルドメインがwhois参照できるようになっています。

ただwhois-servers.netも全トップレベルドメインをカバーはしておらず、カバーしてないTLDをwhoisするには少し手を加えなければならないのが実情です。

検証環境

  • CentOS 7.6

whoisコマンドインストール

CentOSにはデフォルトでwhoisが入っていないのでwhoisコマンドが入っているrpmを探します。

# yum provides \*/whois

    (snip)

jwhois-4.0-45.el7.x86_64 : Internet whois/nicname client
リポジトリー        : epel
一致          :
ファイル名    : /usr/bin/whois



whois-5.1.1-2.el7.x86_64 : Improved WHOIS client
リポジトリー        : base
一致          :
ファイル名    : /usr/bin/whois

jwhoisよりもデフォルトwhoisの方が安パイです。日本語で見る必要ないですしね。

# yum install whois

    (snip)

インストール:
  whois.x86_64 0:5.1.1-2.el7

完了しました!

google.comのドメイン創設日を調べてみる

whois ドメイン名、で調べます。Creation DateがDNSにドメイン登録された年月日時分秒です。google.comは1997年9月15日にDNS登録されていました。

# whois google.com
   Domain Name: GOOGLE.COM
   Registry Domain ID: 2138514_DOMAIN_COM-VRSN
   Registrar WHOIS Server: whois.markmonitor.com
   Registrar URL: http://www.markmonitor.com
   Updated Date: 2018-02-21T18:36:40Z
   Creation Date: 1997-09-15T04:00:00Z
   Registry Expiry Date: 2020-09-14T04:00:00Z
   Registrar: MarkMonitor Inc.
   Registrar IANA ID: 292
   Registrar Abuse Contact Email: abusecomplaints@markmonitor.com
   Registrar Abuse Contact Phone: +1.2083895740
   Domain Status: clientDeleteProhibited https://icann.org/epp#clientDeleteProhibited
   Domain Status: clientTransferProhibited https://icann.org/epp#clientTransferProhibited
   Domain Status: clientUpdateProhibited https://icann.org/epp#clientUpdateProhibited
   Domain Status: serverDeleteProhibited https://icann.org/epp#serverDeleteProhibited
   Domain Status: serverTransferProhibited https://icann.org/epp#serverTransferProhibited
   Domain Status: serverUpdateProhibited https://icann.org/epp#serverUpdateProhibited
   Name Server: NS1.GOOGLE.COM
   Name Server: NS2.GOOGLE.COM
   Name Server: NS3.GOOGLE.COM
   Name Server: NS4.GOOGLE.COM
   DNSSEC: unsigned
   URL of the ICANN Whois Inaccuracy Complaint Form: https://www.icann.org/wicf/

whoisコマンドで検索出来ないドメインたち

世の中には.com、.net、.jp等の他、分野別トップレベルドメイン(gTLD:Generic Top Level Domain)が沢山あります。

gTLDは2013年ごろから増え始め、最近では.tokyoや.osakaのようなローカルトップレベルドメインも有ります。然りこれらをwhoisコマンドで検索してみるとエラーになります

# whois domains.osaka
この種のオブジェクトに対する既知の whois サーバーはありません

(「domains.osaka」はosakaドメインwhois検索Webサーバドメインです)

whoisコマンドが参照しているデフォルトwhoisサーバ「whois-servers.net」は各トップレベルドメインを参照するハブのような役割を持っていてICANN(旧IANA)が管理しているドメインにwhoisすることが出来るようになっていました。

しかし上記のサイトで新しく加わった.tokyoや.osakaのリンクを開いて見ると、whoisサーバの在りかが書いてありません。

この為かデフォルト参照whoisサーバである「whois-servers.net」だけではドメイン情報が見れないのが現状になっているのです。

.tokyoや.osakaに属するドメインをwhoisする

日本の.jpドメインを管理するJPRSサイトを見てみると日本で使われる主なwhoisサーバが書いてあり、これらをwhoisコマンドが参照するサーバとして指定することでようやく.tokyoや.osakaにwhoisすることが出来るようになります。

この一覧はJPRSが管理していないリストというだけで.com、.netなどはwhois-servers.netで解決されます。

「Whois URL」はブラウザからwhois出来るWebサイトのURLになっています。

TLDWhoisサーバーWhois URL
.asiawhois.nic.asiahttp://www.whois.asia/cgi-bin/whois.cgi
.bizwhois.bizhttp://www.whois.biz/
.comwhois.verisign-grs.comhttp://www.verisign.com/ja_JP/whois/index.xhtml
.infowhois.afilias.nethttps://info.info/whois/
.kyotowhois.nic.kyotohttp://whois.nic.kyoto/
.mobiwhois.afilias.nethttp://dotmobi.mobi/find-a-domain/
.nagoyawhois.nic.nagoyahttp://whois.nic.nagoya/
.netwhois.verisign-grs.comhttp://www.verisign.com/ja_JP/whois/index.xhtml
.okinawawhois.nic.okinawahttp://whois.nic.okinawa/
.orgwhois.pir.orghttp://pir.org/products/org-domain/#domain_form
.osakawhois.nic.osakahttp://whois.nic.osaka/
.ryukyuwhois.nic.ryukyuhttp://whois.nic.ryukyu/
.tokyowhois.nic.tokyohttp://whois.nic.tokyo/
.yokohamawhois.nic.yokohamahttp://whois.nic.yokohama/
.コムwhois.nic.xn--tckwehttp://www.verisign.com/ja_JP/whois/index.xhtml
.ccccwhois.verisign-grs.comhttp://www.verisign.com/ja_JP/whois/index.xhtml
.tvtvwhois.verisign-grs.comhttp://www.verisign.com/ja_JP/whois/index.xhtml

上記一覧によると.osakaのwhoisサーバはwhois.nic.osakaでした。-hオプションで参照whoisサーバを指定します。

# whois -h whois.nic.osaka domains.osaka
Domain Name: domains.osaka
Registry Domain ID: D2403-OSAKA
Registrar WHOIS Server:
Registrar URL:
Updated Date: 2019-03-26T00:00:37Z
Creation Date: 2015-02-09T07:35:34Z
Registry Expiry Date: 2020-02-08T23:59:59Z
Registrar: Interlink Co., Ltd. (Registry)
Registrar IANA ID: 9998
Registrar Abuse Contact Email:
Registrar Abuse Contact Phone:
Domain Status: ok https://icann.org/epp#ok
Registry Registrant ID:

    (snip)

.osakaを管理するwhois.nic.osakaをwhoisサーバとして指定した為、domains.osakaのwhois検索が出来るようになりました。domains.osakaは2015年2月9日創設でした。

因みにwhois.nic.osakaではなく、デフォルトである「whois-servers.net」のサブドメインとしてドメインを付与すると解決出来るケースが多いです。
(この場合だと「osaka.whois-servers.net」)

恐らく、新しく出来たドメインはこの名前パターンで物理whoisサーバにエイリアスが張られるようになったのではないかと思われます。

// osaka.whois-servers.netのNameSpaceを検索すると、
# host -t ns osaka.whois-servers.net
// osaka.whois-server.netはwhois.nic.osakaのエイリアスになっている
osaka.whois-servers.net is an alias for whois.nic.osaka.
whois.nic.osaka is an alias for whois.osaka.dnrs.neustar.
whois.osaka.dnrs.neustar is an alias for whois.osaka.ash.dnrs.neustar.

ICANNが管理する替わりに、各ドメインレジストラ側でwhoisサーバのドメイン名を「whois.nic.ドメイン名」にしてください、みたいなお達しが有ったのではないのでしょうか。(真相は分かりませんが)

でもいちいちwhoisサーバをオプションで指定するのは面倒くさい

まったくです。whoisコマンドの設定ファイル/etc/whois.confで参照するwhoisサーバを設定すればオプション指定しなくて済むのでやっておきます。

# /etc/whois.conf

# whois configuration file
#
# This file can contain details of alternative whois servers to use if
# the compiled in servers are not suitable.  Each entry is a single
# text line and consists of a regular expression pattern to match and
# the whois server to be used for it, separated by blank space.
# IDN domains must use the ACE format.
#
# Eg:
# \.nz$ nz.whois-servers.net
#

# ↓追加
\.osaka$ whois.nic.osaka
\.tokyo$ whois.nic.tokyo
\.nagoya$ whois.nic.nagoya
   :

これでオプション指定しなくても「whois domains.osaka」だけでwhois検索できるようになりました。

whois出来ないドメインがあったらwhoisサーバを調べてwhois.confに加えて行けば良さそうです。

Webフロントエンドも便利

でも2019/08現在、.tokyoや.osakaに対応してないんですね。バックエンドでwhoisコマンドが動いていると思うので対応して貰えればなと思います。

そうしたらwhoisコマンドを入れる必要も無くなりますね。

-network
-

執筆者:

関連記事

JavaとPerlでTCPソケット通信

目次1 はじめに2 対象読者3 実装3.1 TCPサーバ(Perl)3.2 TCPクライアント(Java)3.3 実行4 まとめ はじめに 前回の続きです。One IT ThingJavaとPerlで …

hidden.inとSoftEtherで無料のビデオ会議環境を構築する

自粛が続いて会えない人も多くなり、人との交流が恋しくなりますね。 仕事ではミーティングをオンライン化するニーズが増え、以下メジャーなパブリックサービスを使っている人も増えていると思います。 Skype …

SSHトンネルを使ってリモートデータベースをBI

クラウド上のDB分析環境構築を想定して、ローカルPCにSSHトンネル(ポートフォワード)環境を作ります。 リモートDBポートにクラウド外からセキュアに接続できれば、クラウドにBIツールを入れる手間が省 …

LANに接続しているPCをWindowsから見つける

家庭内LANでNASのIPアドレスを忘れたので調べたい職場LANに接続中のホストを調べたい NetEnumを入れられれば取れる情報も多く、ポートスキャンやパケットキャプチャも出来て幸せになれます。 単 …

Linux、Mac、Windows間のネットワーク速度をiperf3で調べる

なんかネットワークが遅いから調べたい。あのLANケーブルひょっとして100Mbps用じゃない?1Gbpsじゃないかも。試験的にネットワーク帯域を絞ったから通信速度を確認したい。 こういった時、通信する …

 

shingo.nakanishi
 

東京在勤、1977年生まれ、IT職歴2n年、生涯技術者として楽しく生きることを目指しています。デスマに負けず健康第一。