ドメインを購入するとき、私は常に2つを混同し、最終的に正しくなる前に設定を混乱させますが、それでもドメインの名前がWebホスティングのIPを指すのを助ける役割が何であるかを明確に理解していませんサーバ。
これまでの回答は、ネームサーバーとDNSについて、それらが2つの異なるものであるかのように書いています。そうではありません。 DNSサーバーisネームサーバー。他のネームサービスがあります。 CorbaのCOSNaming、RPC Portmapper、Java RMI Registryなど。ただし、DNSは通常の意味です。
また、他の回答で述べられていることとは反対に、DNS 含む DNSレコード。
何が起こっているのかを明確にするためには、概要を把握することが役立ちます。
最初に心に留めておくべきことは、インターネットがIPアドレスで実行されることですが、人々は数字よりも単語(ドメイン)を覚えていることを好みます。これは、DNSが解決しようとしている重要な問題です。これにより、サーバーのIPを透過的に変更できます。これは、私たちと接続するユーザーの能力に影響を与えることなくホスティングプロバイダーを変更できるため、あなたや私のようなウェブサイトの所有者にとって素晴らしいことです。つまり、DNSを使用すると、Webサイトの所有者とユーザーの両方に適した単語(ドメイン)に数字をマッピングできます。
そのベースであなたの質問に答えさせてください。 nameサーバーは、Webサイトの名前(ドメイン)を数字に変換する信頼できるソースです。そのため、ドメインに関する情報を見つけるためにどこに行くべきかを世界に伝える必要があります。その情報は、ICANN.orgで購入したすべてのドメイン名の中央リポジトリを管理するのと同じ人と一緒に保存され、 WHOIS データベースを介して検索できます。
ネームサーバーの場所を人に伝えたので、ネームサーバーに人を送る場所を伝える必要があります。この「人を送る場所」の問題は、Aレコード、AAAAレコード、CNAME、MXなどの他のDNS設定によって処理されます。
チェーン内のリンクのようなこれらのものを視覚化できます。
これを具体的に言えば、レジストラを介してドメインを購入すると、デフォルトのレジストラの標準ネームサーバーになります。
DNSレコードをレジストラに任せることに満足している場合(最も一般的):
DNSレコードを他の誰かに管理してもらうことにした場合(小規模なサイトでは一般的ではありません):
簡単な言葉で:
ネームサーバーは、インターネットにDNSレコードの場所を伝えます。 ns1.example.com
およびns2.example.com
次に、example.com
のDNSが、さまざまなサービスの場所をインターネットに指示します。 Aレコードは、WebサイトのIPアドレスです。 MXレコードは、メールサーバーの場所とそれらを選択する順序です。
多くの場合、DNSレコードはそれらが配置されているサーバーを指します。つまり、ネームサーバーが指している場所でWebサイトとメールがホストされます。これにより、初心者にとってはるかに簡単になります。
さまざまな機能の他のレコードがあるなど、DNSに含まれる可能性のあるLOTがさらにありますが、それは問題ではないため、これ以上の複雑さは追加しません。
簡単な答えは、DNSとNS(ネームサーバー)はほぼ同じですが、実際はそうではないということです。ネームサーバーという用語は、DNSサーバーが果たす役割を指します。
DNSサーバーは、クエリに応じて返される値にさまざまなレコードを割り当てるデータベース検索サービスの形式です。ああ!右?ただし、DNSは、ドメイン名をIPアドレスとそれに関連付けられたさまざまなレコードに変換する以外にも、多くのことに使用できます。 DNSは、階層スキームを表す必要がある他の目的に使用できます。
ネームサーバーはDNSサーバーであり、ネームサーバーという用語はIPベースのネットワーク、特にインターネットに適用されます。通常、NSは、IPネットワーク上のDNSクエリに対する信頼できる回答を保持します。 IPプロトコルとDNSは最初にARPA-Net用に開発され、その後インターネットに転送されたため、NSという用語はインターネット固有のものです。プライベートIPベースのネットワークが続きます。
したがって、NSは技術的にはDNSですが、実際には、任意のドメイン名および関連するレコード/値に割り当てられたIPアドレスを返す多くの権威あるDNSサーバーを指します。 NSは、他のNSサーバーから、ルートネームサーバーで始まるDNSサーバーの権限のある階層のメンバーとして参照されます。この定義された階層内にないDNSは、単なるDNSであり、ネームサーバーではありません。
たとえば、私は長い間Webホストでした。 DNSサーバーは多数ありましたが、ネームサーバーは2つだけでした。 5つの外部で利用可能なDNSサーバーのそれぞれが同じレコードを保持していましたが、誰かがブラウザ内にドメイン名を入力するときに、つまりネームサーバーを照会するのは2つだけでした。残りの外部で利用可能なDNSサーバーは権限がありません。また、外部IPアドレスがホストネットワーク外部のルーターでホストされているホストネットワーク内からのアクセスを許可するために、内部DNSが使用されました。この内部DNSには、IPアドレスがホストネットワークの内部にあることを除いて、外部で利用可能なDNSサーバーと同じレコードが含まれます。私のポイントは、内部DNSまたは権限のない外部DNS(DNSサーバー)を呼び出す一方で、それらがインターネットを構成する信頼できる階層スキームの一部ではないため、それらをネームサーバーと呼ぶことはできません。
DNSがNSかどうかを知る典型的な方法の1つは、インターネットでドメイン名を照会するときにSOAレコードを探すことです。他のすべては単なるDNSサーバーです。さらに混乱させるために、DNSはSOAレコードを持つことができますが、+trace
オプションでDig
を使用する場合、正式に認識されたSOAレコードが返され、他のレコードは返されません。
クライアントが電子メールを送信できるようにDNSにMXレコードを追加する場合、最初から最後まで従うには:
クライアントは、ドメイン名をIPアドレスに変更するためにDNSサーバーに接続します。これは、Example.com> '11 .22.33.44 'から移動する方法です。その名前に登録されているサーバーと通信するには、IPアドレスが必要です。
ドメインネームシステム(DNS)サーバーは、データベースをコンパイルするためにネームサーバーに接続します。さまざまなレジストラおよびその他のサービスは、現在の[ドメイン]> [IP]テーブルの詳細を検索する場所のリストを保持しています。クライアントはこれを行わず、DNSサーバーのみを行います。
ネームサーバーを変更すると、ドメインの記録を管理するユーザーが変更されます。会社Xが所有するネームサーバーから会社Yに変更した場合、レコードを更新するときに会社Yに対処する必要があります。
ネームサーバーとは?
ドメインの管理のコンテキストでは、ネームサーバーは 権限のあるDNSネームサーバー ドメイン用です(例:coolsite.com)。 NSレコードがあります 。
実際には、特定のドメインURL(www.coolsite.comなど)をマッピングする実際のDNSレコードを返す際の参照ポイントとして機能する責任があります。特定のIPアドレス(例:99.100.101.102)。
少し単純化しすぎると、「他のDNSサーバー」は、特定のドメインに関連するDNSレコードを返すという一般的な目標を達成するために広く機能します。
DNSとは?
ドメインネームシステム(DNS)は、インターネットまたはプライベートネットワークに接続されたコンピューター、サービス、またはその他のリソース用の階層型分散名前付けシステムです。
口語的には、「DNS」は、ドメインの特定のDNSレコードを保持および提供するプロセスを指すことがよくあります。これには、「ネームサーバー」の実行が含まれます。これは、これらのレコードを尋ねる人に提供するのに役立ちます。
明確にするために、これは事実上「ネームサーバー」と「DNS」(または「DNSサーバー」)が同じサービスの一部にすぎないことを意味します。
ほとんどすべてのユーザーがDNSレコード(およびネームサーバー)を管理できるという事実に関して、多くの混乱が生じています。ただし、someoneを実行する必要がありますが(ネームサーバーを自分で実行している場合でも)、本質的に特定のエンティティは必要ありません。
きれいな写真を表示できますか?
わかりやすくするために、 便利なイラストを盗みました を修正し、特定のドメインのIPをリクエストするプロセスがよりよくわかるように修正しました(例:www.coolsite。 com)が機能する可能性があります:
DNSレコードキャッシング をスキップして、少し(多く)抽象化します...
ルートDNSサーバー(ステップ3〜4)は、適切な Generic Top Level Domain(gTLD) ステップ5〜6で使用されたサーバーの場所に関する情報を保持します。
GTLDサーバー自体(手順5〜6)は、ネームサーバーに関する情報を保持しています。この場合、すべての*。comドメインを処理するサーバーと話します。これは、リクエストがwww.coolsite.comを探しており、それに関連付けられているネームサーバーを知る必要があるためです。
ステップ7では、リクエストfinallyがネームサーバー(「DNS」)に送信されます。この例では、dns1.provider.comまたはdns2.provider.comは、クライアントにDNSレコード(手順8〜9)を返すのに役立ちます。そのレコードは次のようになります。
coolsite.com. IN A 99.100.101.102 ; An "A" record e.g. an IP from ABC Hosting
www IN A 99.100.101.102 ; More commonly a "CNAME" entry
これは、www.coolsite.comが99.100.101.102(たとえば、Webホスティングプロバイダー)にあり、クライアントがこのIPに直接連絡できることを示しています(ステップ10)。
ネームサーバー(手順7〜8)は誰でも処理できます。Webホスティングプロバイダー、レジストラー、DNSのみのプロバイダー、雲の上に虹色のサーバーファームを密かに所有しているソファの上の想像上のユニコーンです。 。
ステップ10では多くの詳細が省略されていることに注意してください;-)
しかし、ネームサーバーエントリを更新するとどうなりますか?
レジストラのドメイン名コントロールパネルでネームサーバーエントリを更新すると、実際にgTLDサーバーを更新します(手順5〜6で前述)。
適切な適切なgTLDサーバーがネームサーバー情報で更新されると、レジストラはプロセスのその部分から抜け出します。
これは、多くのレジストラがレジストラのアクティビティから「DNSサービス」(手順7〜8)separateを提供しているため、混乱を招く可能性があります(gTLDサーバーの更新を支援するなど)。
繰り返しになりますが、gTLDサーバー(レジストラーやその他のDNSプロバイダーではありません)は、ドメインのネームサーバーに関する問い合わせに対する応答を返します(レジストラーで最後に入力したものは何でも)。
DNS(ドメインネームサービス)はサービスです。
ネームサーバーには多くの種類があります。
世界中に散在する固定IPアドレスにあるネームサーバーの選択グループ。これらには、アクティブなトップレベルドメイン(TLD)ネームサーバーを指すDNSレコードが含まれています。
TLDドメインの例は、「。com」、「。org」、「。ca」です。
これらは、TLDのドメインの信頼できるネームサーバーのアクティブリストを指すDNSレコードを含むネームサーバーです。
(サイドノート-彼らは本当に彼らのTLDの「サブドメイン」と呼ばれるべきです...しかし、その用語が使用されるとき、ほとんどの人は混乱します...ほとんどの人はドメインとして「google.com」を参照することに慣れており、 「com」をドメインと呼ぶのに使用)
「.com」TLDネームサーバーには、以下にリストされたドメインの信頼できるネームサーバーエントリがあります
ではなく
TLDのドメインの例は、「google.com」、「Amazon.com」、「google.ca」です。
完全修飾ドメイン名(FQDN)のDNSレコードを含むネームサーバー。 FQDNの例は「www.google.com」です。 「ホスト」部分(「www」)とドメイン部分(「google.com」)の両方が含まれています。
Authoritative Nameserverに存在するレコードの種類の例は、ドメイン内のすべてのレコードのリビジョン管理などに使用されるシリアル番号を含む「SOA」レコードです。
(SOA = Start of Authorityレコード)-「ホスト名」に関連付けられたIPアドレスを含む「A」レコード。ホスト名の例は「www」です。 「ホスト名」は、ホスト名が「。」で終わる場合を除き、ドメインの最後に連結されていると想定されます。
(A =アドレスレコード)他にも多くのDNSレコードが考えられますが、この回答には何も追加されません。これらのレコードに、キャッシングネームサーバーがレコードをキャッシュすると想定される最小秒数である「Time-To-Live」(TTL)を指定するフィールドがある場合。
これらのネームサーバーには通常、信頼できる記録がありません。ユーザーからDNSクエリを受け取り、上記のDNS構造を再帰的にたどって「FQDN」を「IP」に解決する機能があります。たとえば、通常は
に解決する
定義された期間(TTL)のこのレコードルックアップを、関連するドメインのSOAレコードとともに保存します。この定義された期間中、キャッシュネームサーバーは、キャッシュ内にあるIPと同じFQDNに対する追加のユーザークエリに応答します。
定義された期間の後、ユーザーが同じFQDNを照会すると、キャッシングネームサーバーは上記のDNS構造を調べ、最初にドメインのSOAレコードを取得します。 SOAレコードのシリアル番号がキャッシュにあるものと一致する場合、そのドメインのDNSレコードに変更がなかったと想定し、既にキャッシュされた結果を保持してユーザーに転送します。キャッシュの有効期間をさらにTTL秒延長します。
初めてのDNSメンテナーの一般的なエラーは、DNSの変更後にSOAレコードのシリアル番号を更新しないことです。