【スポンサーリンク】

ネットワークを抽象化する「ドメイン」の役割(DNS)

ネットワークを抽象化する「ドメイン」の役割(DNS)
  • ドメイン」は人間にわかりやすい名前だけでなく、ネットワークを柔軟に管理するために「抽象化」する役割を果たしています。
  • DNS」を活用した仕組みとしては、バーチャルホスティングCDNなどがあり、インターネットの柔軟性と拡張性を支えています。
ネットワークを抽象化する「ドメイン」の役割(DNS)

「そのドメインであれば、どのサーバでもよい」という仕組みのおかげで、効率的に回っているんだね。
IPアドレスで指定してしまうと、「〇〇会社の担当の〜〜さんじゃないと話が進まない」ことになるけど、ドメイン名なら「話が通っているなら〇〇会社の誰でもよい」ということになるんだね。

ネットワークを抽象化する「ドメイン」の役割(DNS)

「ドメイン」が「領域」という意味なのは、そういう「広さ」があるからです。

特典ダウンロード
【ちいラボ読者特典】印刷してすぐ使える!
\記事が役に立ったらシェアしてね/
【スポンサーリンク】

1. ドメインはただの「人間にわかりやすい名前」ではない

現代のDNSは、単なる「名前解決システム」とは言えません。

ドメインは「IPアドレスは人間にとってわかりにくいので、名前をつけている」などと説明されることも多いですが、それだけではありません。

DNSとは(インターネット通信) – スマホ教室ちいラボ
DNSとは(インターネット通信) – スマホ教室ちいラボ

ドメインには、ネットワークを柔軟に管理する機能があり、インターネットを支える基盤になっています。

ドメインはただの「人間にわかりやすい名前」ではない

たとえ人間がURLを入力することがなくなっても、ドメインには役割があります。

2. 初期のDNSは名前とIPアドレスを結ぶデータベース

DNSとドメインの機能は、時代とともに進化してきました。

確かに、DNSが生まれたころは、ドメイン名とIPアドレスを結ぶための分散型のデータベースシステムとして登場しました。

しかし、ARPAnetの誕生から約15年の間に、ネットワークの急速な拡大に伴って名前解決の方法が進化し、最終的にDNSという分散型システムが開発・導入されました1

2-1. DNS以前の時代(ホストファイル)

1960年代後半~1970年代、「ARPAnet(Advanced Research Projects Agency Network)」が稼働を開始した時期は、まだネットワークに接続されたコンピューターの数は非常に限られていました。
各コンピューターのホスト名とIPアドレスの対応表(/etc/hosts)をFTPで配布する方法が使われていました。

2-2. ネットワークの拡大・インターネットへ

しかし、1980年代に入ると接続されるコンピューターの数が急増し始めました。
ホストファイルの更新や管理が追いつかなくなる問題が顕著になりました。

そこで、1983年に Paul Mockapetris氏によってDNSの設計が始まり、1984年にDNSの基本的な仕様が公開されました。

1990年代に入ると、World Wide Webの登場とともに、DNSの重要性がさらに高まり、インターネットの基本的なインフラストラクチャーとして確立されました。

3. 「ホスト名」と「ドメイン名」の違い

「ホスト名」と「ドメイン名」の違い

あれ?
「ホスト名」って「ドメイン名」のこと?

「ホスト名」と「ドメイン名」は、インターネット上で使われる名前の異なる部分を指しています。

ホスト名とドメイン名
  • ホスト名
    • 特定のデバイスやサーバー名
      www, mail, ftpなど
  • ドメイン名
    • 組織や個人が所有する識別子
      example.comなど

ドメイン名」は、インターネット上の階層的な名前空間の一部で、組織や個人が所有する識別子です。
たとえば、「example.com」、「google.co.jp」など。

一方、「ホスト名」は、ネットワーク内で特定のデバイスやサーバーに付けられた個別の名前です。
たとえば、「www」、「mail」、「ftp」など。

このホスト名とドメイン名を組み合わせた、インターネット上での完全な名前を「完全修飾ドメイン名2」といいます。

構造: [ホスト名].[ドメイン名]

例: 「www.example.com」
(「www」がホスト名、「example.com」がドメイン名)
例:「mail.example.com」
(「mail」がホスト名)

「ホスト名」と「ドメイン名」の違い

「www.example.com」って「example.com」と同じ意味だと思っていたけど、厳密には違うんだね。

ブラウザだと暗黙のうちに、ウェブサーバを選んでくれているんだね。

「ホスト名」と「ドメイン名」の違い

「ドメイン」というのは「領域(domain)」を表します。
ホスト名は特定のデバイスを指すのに対し、ドメイン名は組織や領域全体を指します。

3-1. 「インターフェース」としてのドメイン

「インターフェース」としてのドメイン

「直値」ではなく「識別子」を使うことには、「インターフェース」の意味があります。

DNSの仕組みは、「仮想化」の一種と考えることができます。
仮想化」とは、物理的な制約をカプセル化し、柔軟なインターフェースを通じてリソースを提供することです。

現在のDNSは、以下のような役割を果たしています。

  • 抽象化:
    DNSはIPアドレスという物理的な識別子を、人間にとってわかりやすいドメイン名に置き換えています。
  • 物理的な制約から自由になる:
    IPアドレスは変更されることがありますが、ドメイン名は変わらないので、安定したアクセスが可能です。
    物理的なネットワーク構成が変わっても、ドメイン名は変更する必要がありません。
  • 信頼性の指標:
    例えば、「.go.jp」というドメインは日本の政府機関を示すため、信頼できるウェブサイトだと判断できます。
  • 認証の基盤:
    ドメイン名を介してアクセス制御や認証を行うことで、セキュリティを強化できます。

また、ウェブサイトの安全性を確認するSSL/TLS証明書や、ブラウザのセキュリティ機能もドメイン名を基準に管理されています。

4. DNSレコード

DNSは単純な1対1の変換システムではありません。
多対多の関係を実現できる仕組みになっています。

DNSがインターネット上の「名前解決」をするときには、各ドメインに関する情報であるDNSレコードを参照します。
DNSの階層構造に従って、上位のDNSサーバーから順に適切なレコードを持つサーバーにたどり着きます。

4-1. AレコードとAAAAレコード

AレコードやAAAAレコードは、DNSの最も基本的な要素の一つです。

  • Aレコード(Address record)
    ドメイン名をIPv4アドレスに関連付けます。
  • AAAAレコード
    ドメイン名をIPv6アドレスに関連付けます。

Aレコードは、完全修飾ドメイン名(例:www.example.com)とIPアドレス(例:192.0.2.1)を結びつけます。

インターネット上でウェブサイトにアクセスする際、AレコードがあることでURLからIPアドレスを見つけ出すことができます。

AレコードとAAAAレコード

Aレコードは、電話帳のようなものです。
名前(ドメイン名)を知っていれば、その電話番号(IPアドレス)を調べることができます。

バーチャルホスティング

たとえば、共用レンタルサーバーでは、同じサーバを使って別々のサイトを運営しています。
これは、複数のドメイン名から1つのIPアドレスを登録しているからです。

例: 「example.com」と「example.net」の両方に192.0.2.1というIPアドレスを割り当てることができます。

このようにすれば、サーバは1台しかないのに、複数のウェブサイトを運用できます。
これを「バーチャルホスティング」といいます。

また、メインドメインとは別に、短縮URLなどのサブドメインを設定することもできます。

4-2. CNAMEレコード

DNSレコードは、Aレコードだけではありません。
CNAMEレコード(Canonical Name record)」では、あるドメイン名を別のドメイン名の「エイリアス(別名)」として定義します。

CNAMEレコード

別名を持つ意味ってなんかあるの?

現在のインターネットでは、「別名」を活用しています。

CNAMEレコードの主な目的と用途
  • サードパーティサービスの利用
  • ロードバランシングとCDNの利用
  • マルチリージョン展開
  • サブドメインの管理簡素化
  • ドメイン移行の簡易化
CNAMEレコード

メインの使い方は、自社のドメインの背後に他社のサービスを組み込むことができることです。

外部サービスとの連携

外部サービスを自社ドメインで提供しているように見せることができます。
たとえば、「mail.yourcompany.com」をGoogleのメールサーバーに向ければ、外部からは自社サービスというブランディングを維持しながら、専門的なサービスを利用できます。

CNAMEレコード

配線を付け替えるような感じだね。

CDN(コンテンツデリバリーネットワーク)

サイトのパフォーマンスを上げる目的でも、CNAMEは使われます。

たとえば、サブドメイン「content.example.com」をCDNプロバイダのドメインに向ければ、トラフィックを複数のサーバーに分散させることができます。

地理的に異なる複数のサーバーを同じドメイン名で提供します。
「api.example.com」を各地域のサーバーに向ければ、ユーザーの位置に応じて最適なサーバーにアクセスできます。

サイトの移行をスムーズに

CNAMEレコード

ウェブサイトの管理にも活用されます。

古いドメインから新しいドメインへの移行を滑らかに行います。
「old-domain.com」を「new-domain.com」に向ければ、ユーザーや検索エンジンへの影響を最小限に抑えられます。

また、サブドメイン「blog.example.com」を主ドメイン「www.example.com」にリダイレクトするようにすれば、ウェブサイトの構造変更時に、IPアドレスの更新を1箇所で済ませられます。

CNAMEレコード

このように、DNSは単なる名前解決システムを超えて、インターネットの柔軟性と拡張性を支える重要な基盤技術となっています。
その役割は、技術の進歩とともに進化し続けているのです。

こちらもどうぞ。
DNSとは(インターネット通信)
DNSとは(インターネット通信)
DNSサーバの役割は、ドメイン名をIPアドレスに変換して、ウェブサイトにアクセスできるようにすることです。家庭のWi-Fiルーターの場合、通常はプロバイダが提供するDNSサーバを利用していることが多いです。「ERR_NAME_NOT_RESOLVED」というエラーは、DNSサーバとの接続かうまくいっていないことを示しています。さらに理解を深めるプロバイダのDNSサーバ「DNS」とは、URLをIPアドレスに変換するシステムです。「Domain Name System」の略で、ウ...

「DNSレコード」とは?
「DNSレコード」とは?
「DNSレコード」は、「インターネットの住所帳」のようなものです。DNSレコードには、ドメイン名からIPアドレスに変換するプロセスで必要な情報が記録されています。DNSレコードは誰でも見られるDNSレコードは、誰でも簡単に確認できます。ドメイン名を使ってウェブサイトにアクセスしたり、メールを送受信したりする際に、バックグラウンドで自動的に参照されています。直接 確認するには:オンラインのDNSルックアップツールコマンドラインツールDNS「DNS(Domain Name Sys...

詐欺サイトでよく見る duckdns.org はどんなドメインなの?【ダイナミックDNS】
詐欺サイトでよく見る duckdns.org はどんなドメインなの?【ダイナミックDNS】
Duck DNSは、無料でサブドメインを取得できるので、詐欺サイトに悪用されるケースも多いです。

「URL」とは?
「URL」とは?
「URL」は、だいたい「https://〜」で始まる、ウェブページのアドレスのことです。インターネット上にある情報の「住所」を表しています。

アドレスバーの読み方(ドメイン名)
アドレスバーの読み方(ドメイン名)
ウェブサイトの信頼性を確認するには、アドレスバーに表示される「ドメイン名」を確認することが重要です。ドメイン名は管理会社による登録が必要で、特に企業サイトは厳格な審査があります。不自然なランダム文字列を含むドメイン名や、安易に取得できるトップレベルドメインを使用しているサイトは、フィッシングサイトの可能性も高いため注意が必要です。まずはアドレスバーを見てみようパスワードを入力する前に、「アドレスを確認すれば本物か偽サイトかわかる」って言われたんだけれど、どう見たらよいのかわか...
(参考)

(補足)

  1. インターネット10分講座 DNS – JPNIC
  2. FQDN:Fully Qualified Domain Name
QRコードを読み込むと、関連記事を確認できます。

ネットワークを抽象化する「ドメイン」の役割(DNS)
【スポンサーリンク】
タイトルとURLをコピーしました