DNSプロトコルとは

2024年3月12日

執筆者

Camilo Quiroz-Vázquez

IBM Staff Writer

DNSプロトコルとは

ドメイン・ネーム・システム(DNS)プロトコルは、インターネットユーザーが数字のIPアドレスの代わりにホスト名を使用してインターネットをナビゲートできるようにするプロセスです。DNSはインターネットの電話帳のようなもので、Webブラウザーを使用して特定のWebサイトを検索するプロセスを簡略化します。

DNSクライアントがwww.example.comなどのホスト名を使用してDNSリクエストを行うと、一連の関数がそのリクエストと対応するIPアドレスを結び付けます。これらの機によりIPアドレス(IPv4とIPv6の両方)の認証を提供し、カスタマイズ可能なドメイン名を複雑な数値アドレスに変換することでインターネットがより利用しやすくなります。

これらの機能を果たすために、DNSプロトコルは4種類のDNSサーバーに依存しています。これらのサーバーが正しく機能すれば、処理が迅速かつ安全になります。DNSサーバーは、DNSレコード(解決プロセスのガイドとなる情報を含むAレコードやCNAMEレコードなどのレコード)を使用して、DNSリクエストを適切にルーティングします。これらのレコードは「ゾーン・ファイル」として知られるテキスト形式のファイルで、DNS構文で記述されています。

DNSリソースレコードは、権威ネームサーバーとも呼ばれる権威DNSサーバーに保存されます。これらには、Time-to-live(TTL)という、サーバーがDNSレコードをキャッシュに保持する期間期間など、ドメインに関連する情報が含まれています。これらのレコードにより、ドメインとサブドメインのリンクと電子メールの適切なルーティングが可能になり、DNSセキュリティーなどを支援します。

ビジネス街をバックにスマホを持つ手

The DX Leaders

「The DX Leaders」は日本語でお届けするニュースレターです。AI活用のグローバル・トレンドや日本の市場動向を踏まえたDX、生成AIの最新情報を毎月お届けします。

DNSプロトコルのステップバイステップガイド

次のプロセスを通じて、DNSクエリが解決され、ユーザーはサイトをホストしているWebサーバーのIPアドレスに接続されます。

  • コンピュータ、スマートデバイス、Webブラウザ、アプリケーションなどのDNSクライアントを使用してドメイン名に接続すると、再帰クエリ、DNSリクエスト、DNSルックアップ、またはDNSクエリと呼ばれるものが実行されます。

  • スマートフォン、コンピュータ、タブレットなどのデバイスからDNSレコードのリクエストが行われると、ブラウザ(Google Chromeなど)は最初にレコードのキャッシュを確認します。レコードが存在しない場合は、オペレーティングシステムレベルのリゾルバーを照会します。スタブリゾルバーと呼ばれるこのオペレーティング・システム・コンポーネントがレコードをチェックします。

  • 要求されたレコードがローカルレベルでキャッシュされていない場合、DNSクエリは、要求の解決に役立つ一連の外部DNSサーバーを通じて送信されます。

  • 最初に稼働するサーバーは、再帰DNSサーバーです。このサーバーはDNSリカーサーまたは再帰DNSリゾルバーとも呼ばれ、多くの場合、インターネットサービスプロバイダー(ISP)が運用しています。データの利用が可能であれば、再帰リゾルバーはDNSキャッシュデータを使用して目的のサイトにリーチします。データが利用できない場合、そのリクエストはルートネームサーバーに転送されます。

  • ルートネームサーバー(ルートDNSサーバー)はリクエストを受け取り、サイトの拡張子(.com)に基づいて、トップレベルドメインまたはTLDネームサーバーとして知られるサーバーにリクエストをルーティングできます(例:.orgまたは.net、など)。

  • TLDネーム・サーバーは、特定の拡張子のリクエストを受け取り、権威DNSサーバーまたは権威ドメイン・ネーム・サーバー(あるいはそれぞれの名称で知られる)に送信します。

  • 権威ネームサーバーにはDNSリソースレコードに保存されている特定のドメイン名に関連する情報など管理するDNSゾーンの情報が含まれており、このサーバーがドメイン名を対応するIPアドレスとの関連付けを行います。

  • 情報はDNSクライアントに返され、DNS解決が完了します。

DNSサーバーが完全な応答を取得できない場合、反復DNSクエリを開始します。サーバーは、IP アドレスが見つかるか、タイムアウトまたはエラーに達するまで、さまざまなサーバーを通じてリクエストをバウンスし続けます。

NS1 Connect

IBM NS1 Connect

IBM NS1 Connectでネットワークのレジリエンスを強化しましょう。このビデオでは、アプリケーションのレジリエンスと性能におけるIBM NS1 Connectの価値について説明します。

DNSプロトコル仕様

ドメイン名前空間

DNS名前空間は、インターネット上のパブリックDNSホスト名を管理します。名前空間はツリーのように構造化された階層を作成し、ツリー内の各ノードにはドメインを説明するテキストのラベルとDNSリソースレコードがあります。ドメイン名は、ラベルとその親ノートのラベルで構成され(「example.com」のように、これらのセクションはドットで区切られています)、ゾーンに分かれています。各ゾーンは管理を行う特定の法人に委任されます。この構造により、Webサイトに一意の名前を付けることができます。

ドメイン名の構文

ドメイン名は、さまざまなレベルの階層構造を作成します。ドメイン名はラベルと呼ばれる1つ以上の部分で構成され、各部分はドットで区切られます。ラベルの文字数は最大63文字までです。

例:forum.support.example.com

上記の例では「.com」はトップレベルドメイン、「example」はドメイン名、「support」は「example」のサブドメイン、「forum」は「support」のサブドメインであることを表しています。

DNSリクエストの解決

再帰DNSサーバーは、DNSリカーサーまたは再帰DNSリゾルバーとも呼ばれ、他のDNSサーバーと通信してIPアドレスを見つけて返します。このサーバーはDNSクエリを受信し、キャッシュされたデータを使用してユーザーを目的のサイトに接続できます。サイトデータがキャッシュされていない場合は、権威ネームサーバーにフォローアップリクエストが送信されます。

通常、権限ネーム・サーバーはDNSクエリを解決するプロセスの最終地点となります。このサーバーには、そのゾーン内のすべてのドメインのリソース・レコードが含まれています。時々、権威的な名前サーバーは、特定のサブドメインに関する情報を知るために、別の名前サーバーにリクエストを送信する必要があります。

DNSメッセージ形式

DNSメッセージはクエリとリプライで構成されており、以下のフィールドを含みます。

  • 識別、フラグ、Questions and Answers、典拠リソースレコード(RR)の数、追加リソースレコードの数を含むヘッダー。

  • メッセージのタイプ、ネームサーバーに権威があるかどうか、クエリのステータス、再帰的か切り捨てかを示すフラグフィールド。

  • 解決中のドメイン名とレコードタイプを含む質問セクション。

  • 照会された名前のリソースレコードを含む回答セクション。

DNSトランスポートプロトコル

DNSは速度が速くオーバーヘッドが少ないため、ユーザーデータグラムプロトコルを使用してDNSクエリに応答します。512バイトを超えるDNS応答や、サーバーがゾーン転送(プライマリDNSサーバーからセカンダリーDNSサーバーへのDNSレコードの転送)などを管理している場合は、TCP(Transmission Control Protocol)を使用します。TCPでは、データの整合性をチェックし、メッセージを小さなパケットに分割することでメッセージが送信先にできるだけ早くリーチするようにします。

DNSマスターファイル(ゾーン・ファイル)

DNSマスターファイルはDNSネームサーバーに保存されます。これらは、次のような単一のDNSゾーンのDNS情報を定義するテキストファイルです。

  • グローバル存続時間(TTL):これは、レコードをローカルDNSキャッシュに保存する時間の長さを定義します。

  • 権限の開始(SOA)レコード:これにより、特定のゾーンのプライマリ権限ネームサーバーが確立されます。

  • リソースレコード:これらのレコードは、DNSネームサーバーにホスト名、IPアドレス、その他の情報を格納するために使用されます。

エンタープライズ規模のDNS

小規模の場合、ユーザーはこのプロセスが発生していることに気付かないはずです。しかし、エンタープライズ規模の場合、内部と外部の両方のWebサービスを維持しマネージドDNSソリューションを選択する上で、DNSの仕組みを理解することが重要です。

マネージドDNSソリューションのユースケースには以下のようなものがあります。

マルチCDN

コンテンツ配信ネットワーク(CDN)は、配信パフォーマンスの向上とレイテンシーの削減に役立つサーバーのグローバル・ネットワークです。マルチCDNシステムでは、複数のCDNを動的に使用することで最高のサービスを提供できます。

グローバル・サーバー・ロード・バランシング(GSLB)

サーバーが過負荷になると、サーバーが故障したり、パフォーマンスが低下したりする可能性があります。ロード・バランシングは、ネットワーク・トラフィックをさまざまなサーバーに分散するプロセスであり、GSLBは世界中のデータセンターにワークロードを効率的に分散します。

地理的ルーティング

マネージドDNSソリューションは、エンドユーザーの地理的な位置に基づいて自動的なルーティングを実行することで、ネットワークとアプリケーションのパフォーマンスを向上させます。

DNSトラフィック・ステアリング

トラフィックステアリングにより、組織はリアルユーザーモニタリング(RUM)データ、負荷、ネットワーク状態に基づいてアプリケーション、サービス、コンテンツへの接続を最適化できます。

関連ソリューション
IBM NS1 Connect

IBM NS1 Connectは、エンタープライズDNS、DHCP、IPアドレス管理、およびアプリケーションのトラフィック・ステアリングのためのクラウド・サービスです。

NS1 Connectの詳細はこちら
ネットワーキング・ソリューション

IBMのクラウド・ネットワーキング・ソリューションは、アプリケーションとビジネスを強化する高性能な接続を可能にします。

クラウド・ネットワーキング・ソリューションの詳細はこちら
ネットワーキング・サポート・サービス

クラウド・ネットワーキングなどにおけるデータセンター・サポートをIBM Technology Lifecycle Servicesで統合しましょう。

クラウド・ネットワーキング・サービス
次のステップ

IBM NS1 Connectでネットワーク・レジリエンスを強化します。無料の開発者アカウントを作成し、マネージドDNSソリューションをお試しいただくか、またはデモを予約して、IBMプラットフォームがネットワークのパフォーマンスと信頼性をどのように最適化できるかをご確認ください。

マネージドDNS Servicesの詳細はこちら デモを予約