インターネット上の通信では、ドメイン名とIPアドレスが密接に関係しています。私たちは普段、ドメイン名を使ってWebサイトにアクセスしますが、実際の通信ではIPアドレスが使われています。
Linuxでは、コマンドを使って簡単にドメイン名からIPアドレスを取得できます。サーバー管理やネットワーク診断の際に役立つこのスキルを、初心者向けにわかりやすく解説します。
本記事では、「nslookup」「host」「dig」「getent」などのコマンドを使ってドメイン名からIPアドレスを取得する方法を紹介します。
ドメイン名からIPアドレスを取得する方法
Linuxでは、複数のコマンドを使って簡単にドメイン名からIPアドレスを取得できます。ここでは、代表的な方法を4つ紹介します。
nslookup コマンドを使う
nslookup
は、DNSサーバーに問い合わせを行い、ドメイン名に対応するIPアドレスを取得するためのコマンドです。
nslookup example.com
出力例
Server: 8.8.8.8
Address: 8.8.8.8#53
Non-authoritative answer:
Name: example.com
Address: 93.184.216.34
ポイント
Non-authoritative answer
は、キャッシュされたデータであることを意味します。Server
は、問い合わせを処理したDNSサーバーを示します。
host コマンドを使う
host
はシンプルなDNS問い合わせツールで、ドメイン名に対応するIPアドレスを素早く取得できます。
host example.com
出力例
example.com has address 93.184.216.34
example.com has IPv6 address 2606:2800:220:1:248:1893:25c8:1946
ポイント
- IPv4アドレスだけでなく、IPv6アドレスも取得可能です。
host -t MX example.com
のように指定すると、メールサーバー情報(MXレコード)も取得できます。
dig コマンドを使う(詳細情報の取得)
dig
は詳細なDNS情報を取得できる強力なコマンドです。より多くの情報が必要な場合に便利です。
dig example.com
出力例(抜粋)
;; QUESTION SECTION:
;example.com. IN A
;; ANSWER SECTION:
example.com. 299 IN A 93.184.216.34
ポイント
ANSWER SECTION
に表示されているA
レコードがIPv4アドレスです。+short
オプションをつけると、IPアドレスのみを表示できます。
dig +short example.com
出力例
93.184.216.34
getent コマンドを使う(システムのホスト情報を参照)
getent
はシステムが参照するホスト情報(/etc/hosts
やDNS)を取得するコマンドです。
getent hosts example.com
出力例
93.184.216.34 example.com
ポイント
/etc/nsswitch.conf
の設定に基づき、ホスト情報が取得されます。- DNS以外のソース(ローカルの
/etc/hosts
ファイルなど)も参照される可能性があります。
このように、Linuxには複数の方法でドメイン名からIPアドレスを取得する手段があります。それぞれの用途に応じて使い分けてみましょう!
まとめ
本記事では、Linuxでドメイン名からIPアドレスを取得する方法について解説しました。それぞれのコマンドには特徴があり、用途に応じて使い分けることが重要です。
DNSの仕組みを理解し、さまざまなコマンドを活用することで、ネットワーク診断やサーバー管理のスキルが向上します。ぜひ、今回紹介した方法を実践してみてください!
コメント