web-dev-qa-db-ja.com

カスタムネームサーバーを作成する代わりにIPアドレスをネームサーバーとして使用できますか

ウェブサイトをホストするVPSを購入しました。
共有ホスティングからVPSへの移行中に私が直面した問題の1つは、プライベートネームサーバーのセットアップです。
提供したIPを使用して2つのプライベートネームサーバーを作成するように指示しました。

例:ns1.mydomain.comは127.0.0.1を指します(たとえば)
ns2.mydomain.comは127.0.0.1を指します

私の疑問は、そのようなネームサーバーを作成する代わりに、自分のIPをネームサーバーとして使用することが許可されない理由です。

ネームサーバーの入力を指示したフィールドに(私のWebサイトの)IPアドレスを入力しようとしています。 (

ネームサーバーを入力してください:

ネームサーバー1:-123.4.5.6
ネームサーバー2:-123.4.5.6( ここの画像を参照
(同じIP 123.4.5.6も指すns1.mydomain.com(custom Name Server)と入力した場合)

「X」が「Y」と等しい場合、「X」の代わりに同じ「Y」を使用できない理由
ns1.domain.comがIP 123.4.5.6を使用している場合、(ネームサーバー)ns1.domain.comの代わりに123.4.5.6を入力できないのはなぜですか?

または、IPおよびdomain.com(ここでdomain.com = IP)を介して自分のサイトにアクセスできる場合、これはネームサーバー(ここではns1.domain.com =いくつかのIP)の場合には適用できない理由であり、代わりにそのIPを埋めることができます。 ns1.domain.comの)

なぜこれができないのですか?

(追記:私の質問は、ネームサーバーの作成方法ではありません。できます。)

13
TheKid

1)このような質問は、本当にServerFaultに関するものです。

2)127.0.0.1はローカルホストであり、公的にアクセス可能なアドレスではありません。それぞれ、これを理解していない場合は、共有ホスティングに戻る必要があります...サイトを機能させるよりも、VPSの実行について学ぶことに多くの時間を費やすことになります。 (プレースホルダーとして127.0.0.1を使用しているだけの場合、これは当てはまりません。)

3)複雑なニーズがないほとんどの人は、可能であればドメインレジストラーのDNSサーバーを使用することを選択する必要があります(例: NameCheap )。レジストラが無料のDNSを提供していない場合、VPSプロバイダーはほぼ間違いなく提供します(LinodeとRackspace Cloudの両方がそうです)。 DNSをホストしている場所に関係なく、発明したアドレスではなく、構成でそれらのネームサーバーを使用する必要があります。 (実際には、djbdnsまたはBINDを使用して独自のネームサーバーを実行するつもりはありません。)

編集:質問を明確にした後、DNSの説明を試みます。

あなたの質問はまだはっきりしていませんが、同じ用語を使用していないためだと思います。 DNSは複雑なシステムであり、非常に正確でなければなりません。

状況に応じてDNS階層がどのように配置されるかを説明しましょう。

1)ドメインexample.comを登録します。これは.comトップレベルドメイン(TLD)にあります。各TLDには、そのTLDのルートネームサーバーを管理する単一のエンティティがあります。 .comの場合、これはVerisignです。誰かがwww.example.comを検索するとき、彼らは最初に(ここではあまり関係のないプロセスを通じて)TLDのルートネームサーバーと話します。

2)ルートネームサーバーは、ドメイン(example.com)の権限のあるネームサーバーを返します。これはあなたが設定しようとしていることだと私は信じています。 DNS仕様によれば、権威ネームサーバーはIPではなく名前で与えられます。あなたは(うまくいけば)独自の権威ネームサーバーを実行しようとしているわけではないので、ホスティング会社が指定したネームサーバーをレジストラー(TLDルートネームサーバーに通知する)に与える必要があります。これらは、コメントで提供したリンク(ns1.ixwebhosting.comなど)で提供されました。 これらをIPではなく名前にする必要がある理由は、ホスティング会社が後でIPアドレスを移動する必要がある可能性があるためです。IPの入力が許可された場合、IPを切り替えた場合、レコードは古くなります。名前を入力することにより、DNSシステムは信頼できるネームサーバー名をIPに適切に解決できます。

3)www.example.comに関心があり、example.comの信頼できるネームサーバー(ns1.ixwebhosting.com)の名前を取得(およびIPを解決)したクライアントは、信頼できるネームサーバーに連絡してIPを要求します。 www.example.comの場合。権威ネームサーバーはそのレコードをチェックし、あなたが伝えたIPを返します。つまり、www.example.comなどのexample.comのサブドメインを管理するために、ホスティングプロバイダーのインターフェイス(おそらく、ログインするWebページ...サポートに連絡する)を使用します。

ホストされたDNSを使用しない場合は、独自のDNSサーバー(BINDやdjbdnsなど)を実行する必要があります。これにより、質問の範囲を超えたその他の複雑な問題がすべて発生します。ホストされたDNSを使用して、プロバイダーにこれらの問題を処理させてください。

ここでns1.example.comについて言及しなかったことがわかります。このようなレコードを処理する必要があるのは、独自のDNSサーバーを実行している場合のみです。

要約すると:

1)ドメインがホスティングプロバイダーのDNSサーバーを使用していることをレジストラーに伝えます(私が提供したリンクから)。

2)ホスティングプロバイダーに、ドメインの実際のホスト名にVPSのIPアドレスを使用するように伝えます。

これで問題は解決しましたか?

18
Conrad Shultz

私はserverfaultでこれと同様の質問をしましたが、反対票が投じられましたが、それができない理由を説明する人は誰もいませんでした。 DNSの原則を探してWebを調査した後、ネームサーバーの代わりにIPを使用できない理由についての私の答えを次に示します。長いですが、慣習を理解するのにも役立ちます。

ドメインを登録したとしましょうabc123.com、「com」はトップレベルドメイン、「abc123」部分はセカンドレベルドメインです。

Webユーザーがアクセスしたい場合abc123.com、彼はabc123.com彼のウェブブラウザに。次に、ブラウザーはDNSリゾルバー(google DNS、level3、opendnsなど)に接続して、DNSリゾルバーにabc123.comのIPアドレスが以前に保存されているかどうかを問い合わせます。誰かが到達しようとした場合abc123.com以前はこのリゾルバーを使用していたため、リゾルバーはabc123.comドメイン名のIPアドレスを取得し、IPをブラウザーに返す必要があります。しかし、abc123.comのDNSリゾルバーを照会したことがない場合、リゾルバーはIPをキャッシュしていません。次に、リゾルバーはルートDNSサーバーに連絡してその情報を取得する必要があります。

ルートDNSサーバーは、従来の英数字ネームサーバー名の代わりにIPを使用できない理由を説明する方法で機能します。ルートDNSサーバーは、ドメインレジストラーから情報を取得します。 abc123.comドメインを登録すると、abc123.comがルートDNSサーバーによって記録されます。ネームサーバー/ IPとともに(オプション)。

ネームサーバー名がFQDN(完全修飾ドメイン名)形式に従う必要があるのは、ルートDNSサーバーが機能するように設計されているためです。例、ns1.mynameserver.comネームサーバー名。推測では、 "mynameserver.com"はルートDNSサーバーに存在している必要があります。論理的にns1.mynameserver.comが有効です。 mynameserver.comがレコードに存在しない場合、ns1.mynameserver.comは有効であってはなりません。同じことがネームサーバー名としてのIPにも当てはまります。ルートDNSサーバーは、IPを有効なドメイン名として記録することはできません(IPは有効なFQDN形式ではないため、数値のトップレベルドメインがないため、.42は現在有効なTLDではありません)。

ネームサーバー名としてIPアドレスを使用できるかどうかについての最初の質問に戻ります。規則を無視することを選択した場合でも、レジストラーが許可しないため、IPをネームサーバー名として設定することはできません。 abc123.comを所有していて、レジストラにログインしてネームサーバー名を登録すると、トップ( ".com")とセカンド( "abc123")のドメインがロックされます。サブレベルドメインの値のみを入力できます。したがって、最終的には12.23.45.33.abc123.comをネームサーバー名として使用します(つまり、レジストラが多くのドットを使用できる場合)。

8
Jamex