1. DNS とは?

インターネットの電話帳

もし Google にアクセスするたびに、www.google.comではなくhttp://192.78.12.4と入力しなければならないとしたらどうでしょう。ドメインネームシステム(DNS)がなければ、インターネットはまさにそのような状態になります。低レベルのネットワーキングプロトコルは、ホストを識別するために数値の IP アドレスしか理解できません。DNS は、人間が長い数字の羅列の代わりに、ウェブサイトやサーバーに対して覚えやすい名前を使用できるようにするシステムです。インターネットの連絡先リストのようなものだと考えてください。名前を検索して、対応する番号を見つけます。

DNS の仕組み

DNS の核となる機能は、人間が読めるホスト名(例:www.google.com)を、機械が読める IP アドレス(例:192.78.12.4)に変換することです。このプロセスを名前解決(resolution)と呼びます。ブラウザにドメイン名を入力すると、コンピューターは DNS サーバーにクエリを送信し、DNS サーバーが正しい IP アドレスを検索して返送します。これにより、ブラウザはウェブサイトのサーバーに接続できるようになります。

分散されたグローバルシステム

DNS は単一の中央データベースではありません。むしろ、それは巨大な分散システムです。ウェブサイトの所有者は、自分のドメインを見つける方法を世界に伝えるために、独自の DNS レコードを管理しています。これらの個々のドメインはお互いに通信し合い、インターネット全体の広大な相互接続されたディレクトリを形成しています。この非中央集権的な構造により、システムは信じられないほど回復力があり、スケーラブルになります。

Linux で DNS を学ぶべき理由

システム管理やウェブ開発のためにLinux を学びたいのであれば、DNS を理解することは不可欠です。DNS を設定、管理、トラブルシューティングする能力は基本的なスキルです。このコースでは基礎を扱いますが、DNS は深く複雑なトピックであることを認識しておく必要があります。真に習得するには、追加の調査と練習が必要です。これは、linux learnへの道のりにおける素晴らしい第一歩です。

ログインして学習進捗を保存

サインイン

演習

練習あるのみです!DNS とホスト名の解決の理解を深めるための実践的なラボをいくつか紹介します。これらの演習でlabex linux ターミナルを使用することは、実践的な経験を積むための優れた方法です。

  1. dig と nslookup を使用して Linux で DNS レコードをクエリする - dignslookupなどの必須の Linux ツールを使用してさまざまな DNS レコードタイプをクエリする方法を学び、ホスト名が IP アドレスに解決される仕組みを理解するのに役立ちます。
  2. Linux でローカルホスト名解決を管理する - /etc/hostsファイルを編集してローカルのホスト名解決を管理する練習をします。これは、外部 DNS サーバーに依存せずに Linux システムが名前を解決する方法を制御するための基本的なスキルです。
  3. Linux 上にローカルの権威 DNS サーバーを設定する - bind9を使用して独自のローカルの権威 DNS サーバーを設定および構成することで実践的な経験を積み、DNS ゾーンとレコードがどのように管理されているかをより深く掘り下げることができます。

これらのラボは、概念を実際のシナリオに適用し、Linux 環境での DNS とホスト名解決に対する自信を構築するのに役立ちます。

クイズ

真偽:DNS はホスト名の MAC アドレスを見つけるのに役立ちますか?