イントロ
DNSとは、Domain Name System(ドメイン・ネーム・システム)の略。インターネットを機能させる中核技術である。その最も基本的な定義は、「DNSはウェブサイトのIPアドレスをドメイン名に解決する役割を担っている」です。
実際には、DNSはそれ以上の機能を持っている。DNSの機能はDNSレコードの助けを借りて実行される。DNSレコードは、DNSの機能に不可欠な情報を含むテキストファイルである。
この記事では、ウェブサイトの機能とセキュリティにおけるDNSレコードの重要性に焦点を当てます。そのために、さまざまな種類のDNSレコードをチェックし、ウェブサイトの機能またはセキュリティに関して、それらが何をするのかを説明します。
この記事の最後には、ドメインネームシステムについてより良い展望を持つことができるだろう。
DNSはどのように機能するのか?
DNSレコードと、ウェブサイトの機能とセキュリティにおけるその役割を理解するためには、ドメインネームシステム(DNS)についてある程度の知識を持つことが必須である。
つまり、すべてはあなたのコンピューターから始まる。ウェブサイトを探しているあなたのコンピュータはクライアントと呼ばれる。クライアントは、DNSリゾルバと呼ばれるサーバーにリクエストを送ります。DNSリゾルバは、あなたのISPによって割り当てられたサーバであり、またはオペレーティングシステムの設定で独自に設定することもできます。リゾルバの機能は、クライアントによって提起されたすべてのDNSクエリを処理することです。
効果的なSEOのためのオールインワン・プラットフォーム
ビジネスが成功する背景には、強力なSEOキャンペーンがあります。しかし、数え切れないほどの最適化ツールやテクニックがあるため、どこから手をつければいいのかわからないこともあります。でも、もう心配はありません。効果的なSEOのためのオールインワンプラットフォーム「Ranktracker」を紹介します。
そこでクライアントはリゾルバにこう尋ねる。「このドメイン名(xyz.com)を見つけたいのですが。IPアドレスを知っていますか?"リゾルバはキャッシュをチェックし、ドメイン名とIPが保存されているかどうかを確認する。そうでない場合は、DNS階層内の一連のサーバーに連絡して、IPアドレスがあるかどうかを確認する。
DNS階層イメージ
画像出典:https://www.menandmice.com/glossary/dns-server-types
通常、IPアドレスは比較的すぐに見つかる。しかし、リゾルバが階層の一番上まで行って、ルートネームサーバ(NS)と呼ばれるサーバに問い合わせなければならないこともある。
世界には13のルートネームサーバーがあり、ウェブ上のすべてのウェブサイトのIPアドレスが含まれています。あるドメインのIPアドレスがネームサーバー上に存在しない場合、そのドメインのDNSクエリは "解決不可能 "であることを意味します。
とにかく、IPアドレスが見つかったら、リゾルバはそれをクライアントに送り返す。その後、クライアントは指定されたIPアドレスのサーバーにリクエストを行い、サーバーは必要なウェブサイトを返答する。
これが単純なクエリの仕組みであり、これらはすべて数秒以内に行われる。DNSレコードはどこで登場するのか?DNS階層内のすべてのサーバーに保存されている情報は、DNSレコードという形で保存されています。
効果的なSEOのためのオールインワン・プラットフォーム
ビジネスが成功する背景には、強力なSEOキャンペーンがあります。しかし、数え切れないほどの最適化ツールやテクニックがあるため、どこから手をつければいいのかわからないこともあります。でも、もう心配はありません。効果的なSEOのためのオールインワンプラットフォーム「Ranktracker」を紹介します。
DNSレコードは、cPanel、Cloudflare、GoDaddyなどの一般的なツールを使用してウェブマスターが管理できます。このようなツールでウェブサイトを管理する方法については、cPanelについての記事をお読みください。DNSレコードの管理に関する詳細な文書の作成には時間がかかります。AI段落ジェネレーターは、高品質で有益なコンテンツを効率的に作成し、複雑な概念を明確に説明することを容易にします。
では、DNSレコードがどのようにウェブサイトの機能を助け、貢献しているのかを見てみよう。
さまざまなDNSレコードと、それらがウェブサイトの機能にどのように貢献しているか
まず、ウェブサイトの機能に関わる記録からチェックしていく。これらの記録 は、セキュリティの記録と比べると数が多い。
すべてのDNSレコードは同じテンプレートを共有している。左から順に、ドメイン名、生存時間、レコードクラス、レコード名、レコード値である。ほとんどのレコードは、名前と値だけが異なります。下図はAレコードのイメージです。
画像出典:DNSChecker
画像はMicrosoft.comの4つのAレコードを示している。ドメイン名は "microsoft.com "である。TTLは1290秒、IN(インターネット)はクラス、Aはレコード名、数字はIPv4アドレスすなわち値です。
さて、典型的なDNSレコードがどのようなものか分かったところで、DNSレコードが何をするのか、そしてDNSレコードがウェブサイトの機能にどのように貢献するのかを理解しよう。
1.A/AAAの記録
AレコードとAAAAレコードは、それぞれIPv4アドレスとIPv6アドレスを表す。その唯一の目的は、IPアドレスをドメイン名にマッピングすることである。これはDNSの最も基本的な機能であり、インターネットを機能させるものである。
IPアドレスは、ご存知のように、サーバーの位置を数値(IPv4)または16進数(IPv6)で表したものです。
ウェブ上のすべてのコンテンツは、世界中の多数のサーバーに保存されている。ドメイン名を検索すると、DNSリゾルバはそのドメインのAレコードまたはAAAAレコードがないかキャッシュをチェックします。
もし見つからなければ、リゾルバは階層内の他のサーバーに問い合わせ、そのサーバーにA/AAレコードがあるかどうかを確認する。該当するA/AAレコードが見つかると、リゾルバはそれをキャッシュに保存する。
ここまでで、ウェブサイト機能におけるA/AAAレコードの役割についてご理解いただけたと思います。これらのレコードがなければ、ウェブサイトを見つけることは不可能です。ですから、ウェブサイトのA/AAAレコードを設定することは、その機能にとって非常に重要です。
2.CNAMEレコード
CNAMEレコードはA/AAレコードほど重要ではありませんが、独自の用途があります。CNAMEレコードはあるドメインを別のドメインにエイリアスします。もっと簡単に言うと、あるドメインに対するすべてのDNSクエリが自動的に別のドメインに送られるようにすることができます。
たとえば、「cars.com」というドメインと「vehicles.com」というドメインがある場合、CNAMEレコードを使って「cars.com」を「vehicles.com」にエイリアスすることができる。
ブラウザのアドレスバーに "cars.com "と入力すると、自動的に "vehicles.com "にアクセスすることになる。これは、"cars.com "へのDNSクエリが、"vehicles.com "のA/AAレコードを参照するCNAMEレコードで満たされるからである。
これは複数の類似したドメインを持つウェブサイトに便利です。CNAMEレコードを使うと、エンドユーザーは常に正しいサイトに誘導されます。あなたのドメインが "xyz.org "であれば、"www.xyz.org "に "xyz.org "を指すCNAMEレコードを作成することができます。
3.MXレコード
MXはメール交換記録の略です。MXレコードはウェブサイトの電子メール機能にとって非常に重要です。基本的に、MXレコードの役割は、ドメインのメールを処理するメールサーバーを定義することです。
例えば、あなたがオンラインストアを運営しているとしましょう。当然、顧客とコンタクトを取るためのメールアドレスがあるでしょう。また、ビジネスパートナー候補のために別の メールアドレスを持つかもしれません。
MXレコードが適切に設定されていれば、メールの受信に問題はありません。あなたのドメインのメールアドレス宛のメールは、レコードに定義された適切なメールサーバーに送信されます。
MXレコードがなければ、これらのメールは失われてしまいます。どのメールサーバーにも送信されないので、あなたはメール を受け取ることができません。メールを受信できなければ、返信することもできません。このことは、あなたが非コミュニケーション的であるという印象を与え、ウェブサイトのユーザーに悪い印象を与えます。
4.TXTレコード
TXTレコードは、さまざまな機能に使用できる非標準レコードです。検索エンジン、メールサーバー、APIプロバイダーなどのサードパーティーサービスプロバイダーによるウェブサイトの検証に使用することができます。
TXTレコードには、他のレコードのように決まった値はありません。その値は、あなたが望むものであれば何でもいいのです。文字数制限内であれば、どのような値でも入力できます。
ウェブサイトの検証のために、前述のサードパーティサービスプロバイダーは、ウェブマスターがTXTレコードに追加する設定値を個人的に提供します。その値がサードパーティのサービスプロバイダーが与えたものと同じであれば、偽者ではなく正しいウェブサイトを扱っていることになります。
セキュリティのためにTXTレコードを使用する方法は他にもあるが、それは "セキュリティ・セクション "で確認する。
5.NSレコード
圧倒的に重要なレコードタイプはNSレコードである。NSはネームサーバーの略です。ネームサーバーはDNS階層の最上位に位置する。ネームサーバーにはすべてのドメインレコードが含まれています。
NSレコードは、あるドメインのレコードがどのネームサーバーに含まれているかを詳細に示します。NSレコードがなければ、リゾルバやDNSサーバーの下位階層は、特定のドメインに関する情報を取得するためにどのサーバーに問い合わせればよいのかわからなくなります。
そのため、NSレコードが存在しないと、あなたのウェブサイトは基本的に見つけることができず、役に立たなくなります。そのため、NSレコードをきちんと整えておきましょう。
6.SRVレコード
SRVはサービスの略です。これらのレコードは、VoIP、電子メール、メッセージングなど、どのインターネットサービスがどのポートを使用するかを定義する。
SRVレコードがないと、特定のポートに対する特定のトラフィックがドロップされます。通常、ほとんどのウェブサイトでは問題になりません。しかし、VoIP、電子メール、インスタントメッセージなどを使用するインターネットサービスを利用している場合は、SRVレコードを正しく設定する必要があります。
7.PTRレコード
PTRレコードはDNSの逆引きに使われる。PTRはポインターの略で、このレコードタイプはIPアドレスをドメイン名にマッピングする。つまり、A/AAレコードの逆です。
PTRレコードは検証のために使用されるため、ウェブサイトの機能には必要である。時々、ウェブサイトはドメイン名を詐称し、別のドメインのサーバーにリクエストを送ることができる。サーバーはPTRレコードを使用して、なりすましのIPアドレスが本物のドメインのIPアドレスと一致するかどうかを確認することができます。
不一致の場合、リクエストは拒否される。
セキュリティに貢献するDNSレコード
ウェブサイトのセキュリティは非常に重要です。詳しくは他の記事をご覧ください。
以下に挙げるのは、あなたのウェブサイトを保護し、なりすましやキャッシュポイズニングなどのさまざまなセキュリティリスクを防ぐのに役立つ記録です。
1.DNSSECレコード
DNSSECはDNSセキュリティの略である。これは、DNSの欠陥を抑制することを目的としたセキュリティ・プロトコルである。DNSはセキュリティを考慮して設計されていない。そのため、DNSを攻撃ベクトルとして利用するのは非常に簡単だった。
DNSSECでは、2種類の新しいレコードが導入された。これらのレコードは、他のレコードのコンテンツを保護し、そのレコードの発信元を検証するのに役立つ。
DNSSECは公開鍵暗号に基づいて運用される。基本的に、DNSレコードは暗号鍵で署名され、そのデータが改ざんされないことを保証する。
同様のキーは、レコードが正しいソースから発信されたものであることを確認するために使用される。
これは、キャッシュポイズニング攻撃を防御することで、ウェブサイトのセキュリティに役立ちます。悪意のある行為者は、リゾルバのキャッシュ内のDNSレコードを変更し、あるウェブサイトから別のウェブサイトへシームレスにトラフィックをリダイレクトすることができます。
DNSSECを使用すれば、ウェブサイトにアクセスしようとする訪問者を悪意のあるリダイレクトから保護し、評判を維持することができます。
DSレコードとDNSKEYレコードがどのように実装されているかを見てみよう。
2.DNSKEYレコード
DNSKEYレコードは公開鍵を含む。この公開鍵はゾーンの秘密鍵と対になる。ゾーンの全DNSレコードは秘密鍵で署名され、DNSKEYレコードの公開鍵が その署名の検証に使用される。
署名が検証できない場合は、レコードのデータが変更されたことを意味し、このレコードは無効である。
しかし、これでもまだ疑問が残る。公開鍵そのものが漏洩していないことをどうやって確認するのか?そこでDSレコードの出番となる。
3.DSレコード
DSレコードはDelegation Signerの略。これはドメインに権限を委譲するレコードである。DNS階層には、ゾーンと呼ばれる管理部門があります。ゾーンには親または子があります。親ゾーンは権威がある、つまり信頼されているとみなされ、その情報は信頼されます。
親ゾーンは子ゾーンに権限を委譲することができる。これはDSレコードの助けを借りて行う。DSレコードにはDNSKEYレコードに格納されたキーのハッシュが含まれる。
DNSKEYレコード値のハッシュが DSレコードのハッシュと一致する限り、その鍵は有効である。この検証は、ゾーンの親、その親の親など、全てのレベルで行われる。
4.SPF、DKIM、DMARCレコード
TXTレコードは、セキュリティにおいて多くの役割を持っている。セキュリティに関連するTXTレコードは、SPF、DKIM、DMARCと呼ばれます。これらは、お客様のドメインに関連するメールのセキュリティに関連しています。これらを設定することで、メール送信者のレピュテーションを保護し、ウェブサイトのメール配信性を高めることができます。
これらのレコードの役割は関連している。まずはSPFレコードから。
5.SPFレコード
SPFとは、Sender Policy Frameworkの略です。SPFレコードは、ドメインに代わってメールを送信することを許可されたメールサーバーをリストアップします。SPFレコードが普及する前は、誰でも特定のドメインからのメールだと偽って送信することができた。これは、フィッシングや悪意のあるリダイレクト、さらにはソーシャル・エンジニアリングにそのようなメールを使用する詐欺師という問題を引き起こした。
6.DKIMレコード
DKIMはDomain Keys Identified Mailの略。これもテキストレコードの一種である。DKIMレコードは、SPFレコードによって残された脆弱性のひとつをカバーしている。それは、メールアドレスを詐称する能力です。
DKIMレコードはまた、電子メールが正しい送信元から発信されたものであることを保証するために暗号を使用しています。DKIMには2つの部分があります:DNSレコードで利用可能な公開鍵 と、秘密鍵で署名された電子メールのDKIMヘッダーです。電子メール受信クライアントは、DKIMヘッダーキーとレコードキーが同じペアの一部であるかどうかをチェックする必要があります。もしそうであれば、そのメールは正しい送信元からのものであり、そうでなければ、そのメールは拒否される。
7.DMARCレコード
DKIMとSPFは、メールの送信元を確認し、なりすましを減らすために使用されます。DMARCは、前述のチェックに不合格となったメールを受信した際に、メール受信者が何をすべきかを伝えるために使用される。
効果的なSEOのためのオールインワン・プラットフォーム
ビジネスが成功する背景には、強力なSEOキャンペーンがあります。しかし、数え切れないほどの最適化ツールやテクニックがあるため、どこから手をつければいいのかわからないこともあります。でも、もう心配はありません。効果的なSEOのためのオールインワンプラットフォーム「Ranktracker」を紹介します。
DMARCとは、Domain-Based Message Authentication Reporting and Conformanceの略。
基本的に、DMARCレコードは、メールがSPFとDKIMのチェックに失敗した場合、メール受信者に以下の1つ以上のアクション を取るように指示します。
- メールをスパムとしてマークする。
- スパムメールを通過させる
- スパムメールを拒否する
さらに、SPFとDKIMのチェックに失敗したメールのドメインにも報告します。これにより、ドメイン所有者は、自分のドメインに何らかの問題があるかどうかを確認し、送信者の評判を維持するための対策を迅速に講じることができます。
DMARCレコードがないと、EメールサービスプロバイダはEメールを拒否するか受け入れるかを独自に判断します。これは、あなたのドメインのレピュテーション(ひいてはあなたのウェブサイトのレピュテーションも)に奇妙な結果をもたらす可能性があります。ですから、DMARCで管理したほうがよいのです。
結論
これで、DNSレコードがいかにウェブサイトの機能とセキュリティに不可欠であるかがお分かりいただけただろう。DNSレコードがなければ、ウェブサイトを見つけることは不可能です。DNSはまた、ウェブサイト上の個々のサービス(電子メールやVoIPなど)のポートを定義する役割も担っています。
DNSセキュリティレコードを使用することで、他者があなたのウェブサイトの肖像権を悪用して損害を与えることを防ぐことができます。また、あなたのウェブサイトのメール送信者の評判が保たれ、より多くのメールが消費者の受信トレイに届くようになります。