Linuxでwhoisコマンドを使用する方法

公開: 2022-01-29
Ubuntuスタイルのデスクトップを備えたLinuxPCのターミナルウィンドウ。
Fatmawati Achmad Zaenuri / Shutterstock

whoisルックアップは、インターネットドメインの所有者に関する多くの情報を提供します。 Linuxでは、コマンドラインからwhoisルックアップを実行できます。 順を追って説明します。

whoisシステム

whoisシステムは、ドメインの所有権と所有者の両方に関する詳細を含むレコードのリストです。 Internet Corporation for Assigned Names and Numbers(ICANN)は、ドメイン名の登録と所有権を規制していますが、レコードのリストは、レジストリと呼ばれる多くの企業によって保持されています。

誰でもレコードのリストを照会できます。 これを行うと、レジストリの1つがリクエストを処理し、適切なwhoisレコードから詳細を送信します。

先に進む前に、次の用語に精通していることが重要です。

  • レジストリ:ドメイン名のセットを含むリストを管理する会社(これらの多くがあります)。
  • 登録者:ドメインの法的な所有者。 この人に登録されています。
  • レジストラ:レジストラは、レジストラを使用して登録を行います。

whoisレコードには、ドメイン名を登録した個人、会社、またはその他のエンティティに関連付けられているすべての連絡先情報が含まれています。 一部の登録には他の登録よりも多くの情報が含まれており、一部のレジストリは異なる量の情報を返します。

一般的なwhoisレコードには、次の情報が含まれます。

  • 登録者の名前と連絡先情報:ドメインの所有者。
  • レジストラの名前と連絡先情報:ドメイン名を登録した組織。
  • 登録日。
  • 情報が最後に更新されたのはいつですか。
  • 有効期限。
広告

Web上でwhoisリクエストを行うことができますが、Linuxのwhoisコマンドを使用すると、コマンドラインから直接ルックアップを実行できます。 これは、グラフィカルユーザーインターフェイスのないコンピューターからルックアップを実行する必要がある場合、またはシェルスクリプトからルックアップを実行する場合に役立ちます。

whoisのインストール

whoisコマンドはすでにUbuntu20.04にインストールされています。 ご使用のバージョンのUbuntuにインストールする必要がある場合は、次のコマンドを使用してインストールできます。

 sudo apt-get install whois 

Fedoraでは、以下のコマンドを使用します。

 sudo dnf install whois 

そして最後に、Manjaroで次のように入力します。

 sudo pacman -Syu whois 

ドメイン名でwhoisを使用する

whoisコマンドは、ドメイン名またはインターネットプロトコル(IP)アドレスで使用できます。 これらのそれぞれについて、わずかに異なる情報のセットが返されます。

最初の例では、ドメイン名を使用します。

 whois cnn.com 

whoisレジストリからの応答は、要約で始まり、追加情報が含まれた状態で繰り返されます。 以下に、商標に関する記述と利用規約を削除した例を示します。

 ドメイン名:CNN.COM
レジストリドメインID:3269879_DOMAIN_COM-VRSN
レジストラWHOISサーバー:whois.corporatedomains.com
レジストラのURL:http://www.cscglobal.com/global/web/csc/digital-brand-services.html
更新日:2018-04-10T16:43:38Z
作成日:1993-09-22T04:00:00Z
レジストリの有効期限:2026-09-21T04:00:00Z
登録者:CSC Corporate Domains、Inc。
レジストラIANAID:299
レジストラの不正使用の連絡先メールアドレス:[email protected]
レジストラの不正使用の連絡先電話:8887802723
ドメインステータス:clientTransferProhibited https://icann.org/epp#clientTransferProhibited
ドメインステータス:serverDeleteProhibited https://icann.org/epp#serverDeleteProhibited
ドメインステータス:serverTransferProhibited https://icann.org/epp#serverTransferProhibited
ドメインステータス:serverUpdateProhibited https://icann.org/epp#serverUpdateProhibited
ネームサーバー:NS-1086.AWSDNS-07.ORG
ネームサーバー:NS-1630.AWSDNS-11.CO.UK
ネームサーバー:NS-47.AWSDNS-05.COM
ネームサーバー:NS-576.AWSDNS-08.NET
DNSSEC:署名なし

これはかなり自明です。 連絡先の詳細、登録日など、レジストラとレジストリに関するさまざまな詳細が表示されます。 リストには、認識できない可能性のあるエントリがいくつかあります。

Internet Assigned Numbers Authority(IANA)は、トップレベルのドメインネームシステムゾーン、IPプロトコルアドレス指定システム、レジストリのリストなどを監視および調整します。 このレジストリの番号は299で、リストには「IANA ID:299」と示されています。

広告

「ドメインステータス」の行は、ドメインの状態を示しており、同時に複数のドメインに存在する可能性があります。 状態は、Extensible ProvisioningProtocolで定義されています。 これらの中にはめったに見られないものもあれば、法的な紛争などの特定の状況に限定されているものもあります。

この登録には、次の状態が関連付けられています。

  • clientTransferProhibited:ドメインのレジストリは、現在のレジストラから別のレジストラにドメインを移管するリクエストを拒否します。
  • serverDeleteProhibited:ドメインを削除できません。
  • serverTransferProhibited:ドメインを別のレジストラに移管することはできません。
  • serverUpdateProhibited:ドメインを更新できません

最後の3つは通常、登録者の要求に応じて、または法的な紛争が進行中の場合に有効になります。 この場合、CNNはおそらく、会社のドメインを「ロックダウン」するためにこれらを強制するように要求しました。

「!DNSSEC」はドメインネームシステムセキュリティ拡張機能の略で、DNSネームリゾルバーがDNSゾーンから受信したデータが有効であり、改ざんされていないことを暗号で確認できるようにするスキームです。

応答の長い部分を以下に示します。

 ドメイン名:cnn.com
レジストリドメインID:3269879_DOMAIN_COM-VRSN
レジストラWHOISサーバー:whois.corporatedomains.com
レジストラのURL:www.cscprotectsbrands.com
更新日:2018-04-10T16:43:38Z
作成日:1993-09-22T04:00:00Z
レジストラ登録の有効期限:2026-09-21T04:00:00Z
登録者:CSC CORPORATE DOMAINS、INC。
レジストラIANAID:299
レジストラの不正使用の連絡先メールアドレス:[email protected]
レジストラの不正使用の連絡先電話番号:+1.8887802723
ドメインステータス:clientTransferProhibited http://www.icann.org/epp#clientTransferProhibited
ドメインステータス:serverDeleteProhibited http://www.icann.org/epp#serverDeleteProhibited
ドメインステータス:serverTransferProhibited http://www.icann.org/epp#serverTransferProhibited
ドメインステータス:serverUpdateProhibited http://www.icann.org/epp#serverUpdateProhibited
レジストリ登録者ID:
登録者名:ドメイン名マネージャー
登録組織:Turner Broadcasting System、Inc。
登録者ストリート:1つのCNNセンター
登録都市:アトランタ
登録者の州/県:GA
登録者の郵便番号:30303
登録国:米国
登録者の電話番号:+ 1.4048275000
登録者の電話番号:
登録者ファックス:+ 1.4048271995
登録者のFAX内線:
登録者の電子メール:[email protected]
レジストリ管理者ID:
管理者名:ドメイン名マネージャー
管理組織:Turner Broadcasting System、Inc。
管理ストリート:1つのCNNセンター
管理都市:アトランタ
管理者の州/県:GA
管理者の郵便番号:30303
管理国:米国
管理者の電話番号:+ 1.4048275000
管理者電話内線:
管理者ファックス:+ 1.4048271995
管理者FAX内線:
管理者の電子メール:[email protected]
レジストリ技術ID:
技術名:TBSサーバー運用
技術組織:Turner Broadcasting System、Inc。
Tech Street:1つのCNNセンター
テックシティ:アトランタ
技術州/県:GA
技術郵便番号:30303
技術国:米国
技術電話:+ 1.4048275000
Tech Phone Ext:
テックファックス:+ 1.4048271593
Tech Fax内線:
技術メール:[email protected]
ネームサーバー:ns-576.awsdns-08.net
ネームサーバー:ns-1086.awsdns-07.org
ネームサーバー:ns-47.awsdns-05.com
ネームサーバー:ns-1630.awsdns-11.co.uk
DNSSEC:署名なし

これにより、概要とほぼ同じ情報が得られますが、管理上および技術上の目的で、登録者とその連絡先の詳細に関する追加のセクションがあります。

登録者名は「ドメイン名マネージャー」として与えられます。 場合によっては、有料で、企業は、レジストラがこの目的のために維持する一般的な名前で、レジストラに代わってドメインを登録させることを選択します。 ここではそうなっているようです。 ただし、登録者の住所は「1 CCNセンター」であるため、登録者が誰であるかは明らかです。

IPアドレスでwhoisを使用する

IPアドレスでwhoisを使用するのは、ドメイン名で使用するのと同じくらい簡単です。 次のように、 whoisの後にIPアドレスを指定するだけです。

 whois 205.251.242.103 

これはwhoisによって返される出力です:

 NetRange:205.251.192.0-205.251.255.255
CIDR:205.251.192.0 / 18
ネット名:AMAZON-05
NetHandle:NET-205-251-192-0-1
親:NET205(NET-205-0-0-0-0)
NetType:直接割り当て
OriginAS:AS16509、AS39111、AS7224
組織:Amazon.com、Inc。(AMAZON-4)
RegDate:2010-08-27
更新日:2015-09-24
参照:https://rdap.arin.net/registry/ip/205.251.192.0

OrgName:Amazon.com、Inc。
OrgId:AMAZON-4
住所:1918 8th Ave
市:シアトル
StateProv:WA
郵便番号:98101-1244
国:米国
RegDate:1995-01-23
更新日:2020-03-31
参照:https://rdap.arin.net/registry/entity/AMAZON-4

OrgAbuseHandle:AEA8-ARIN
OrgAbuseName:Amazon EC2 Abuse
OrgAbusePhone:+ 1-206-266-4064 
OrgAbuseEmail:[email protected]
OrgAbuseRef:https://rdap.arin.net/registry/entity/AEA8-ARIN

OrgNOCHandle:AANO1-ARIN
OrgNOCName:AmazonAWSネットワークオペレーション
OrgNOCPhone:+ 1-206-266-4064 
OrgNOCEmail:[email protected]
OrgNOCRef:https://rdap.arin.net/registry/entity/AANO1-ARIN

OrgRoutingHandle:ADR29-ARIN
OrgRoutingName:AWS Dogfish Routing
OrgRoutingPhone:+ 1-206-266-4064 
OrgRoutingEmail:[email protected]
OrgRoutingRef:https://rdap.arin.net/registry/entity/ADR29-ARIN

OrgRoutingHandle:IPROU3-ARIN
OrgRoutingName:IPルーティング
OrgRoutingPhone:+ 1-206-266-4064 
OrgRoutingEmail:[email protected]
OrgRoutingRef:https://rdap.arin.net/registry/entity/IPROU3-ARIN

OrgTechHandle:ANO24-ARIN
OrgTechName:AmazonEC2ネットワークオペレーション
OrgTechPhone:+ 1-206-266-4064 
OrgTechEmail:[email protected]
OrgTechRef:https://rdap.arin.net/registry/entity/ANO24-ARIN

RTechHandle:ROLEA19-ARIN
RTechName:ロールアカウント
RTechPhone:+ 1-206-266-4064 
RTechEmail:[email protected]
RTechRef:https://rdap.arin.net/registry/entity/ROLEA19-ARIN

RAbuseHandle:ROLEA19-ARIN
RAbuseName:ロールアカウント
RAbusePhone:+ 1-206-266-4064 
RAbuseEmail:[email protected]
RAbuseRef:https://rdap.arin.net/registry/entity/ROLEA19-ARIN

RNOCHandle:ROLEA19-ARIN
RNOCName:ロールアカウント
RNOCPhone:+ 1-206-266-4064 
RNOCEmail:[email protected]
RNOCRef:https://rdap.arin.net/registry/entity/ROLEA19-ARIN
広告

最初のセクションには、検索したIPアドレスを所有している組織(この場合、Amazonが所有している多くの組織の1つ)に関する情報が含まれています。 また、レジストリによって内部的にAmazon.com、Inc。を識別するために使用されるいくつかの識別子が与えられています。

2番目のセクションには、登録者であるAmazon.com、Incのアドレスと名前が含まれています。「Ref:」フィールドのWebアドレスには、JavaScript Object Notation(JSON)形式のこの情報が含まれています。

他のセクションには、不正使用、ネットワーク操作、トラフィックルーティングなどに関する問題を報告できる連絡先情報が含まれています。

スクリプトでwhoisを使用する

スクリプトでwhoisを使用するために、有効期限を確認する必要のあるドメインのセットがあると仮定します。 これは、小さなシェルスクリプトで実現できます。

これをエディターに入力し、「get-expiry.sh」として保存します。

 #!/ bin / bash

DOMAIN_LIST = "howtogeek.com reviewgeek.com lifesavvy.com cloudavvyit.com"

echo「有効期限:」

$ DOMAIN_LISTのドメインの場合
行う
  echo -n "$ domain ::"
  whois $ domain | grep '有効期限' | awk '{print $ 5}'
終わり
広告

次に示すように、 chmodコマンドを使用して、実行可能権限を持つようにスクリプトを設定します。

 chmod + x get-expiry.sh 

名前でスクリプトを呼び出して、スクリプトを実行します。

 ./get-expiry.sh 

各ドメインの有効期限は、 whoisからの応答から、 grepを使用して文字列「Expiration」を含む行を検索し、 awkを使用してその行の5番目の項目を印刷することによって抽出されます。

関連: Linuxでawkコマンドを使用する方法

利便性と自動化

はい、whoisルックアップをオンラインで実行することもできます。 ただし、ターミナルウィンドウとスクリプトでwhoisコマンドを使用できるようにすると、利便性と柔軟性が提供され、ワー​​クロードの一部を自動化するオプションが提供されます。

関連:開発者と愛好家のための最高のLinuxラップトップ