web-dev-qa-db-ja.com

DNS紹介/委任:どのDNSが責任を負いますか。正しい方法を委任する方法は?

前書き

ドメインを購入しました earechnung.at with Hetzner そして私のウェブスペースを All-Inkl で使用しています。ウェブホスト(All-Inkl)のネームサーバーを使用したい。

ゾーンファイルとネームサーバー

ドメインをHetznerに登録すると、 nic.at (オーストリアのドメインレジストリ)に次のネームサーバー(Hetznerのすべてのネームサーバー)が一覧表示されます。

ネームサーバー(ホスト名)1:ns.second-ns.com
ネームサーバー(ホスト名)2:ns1.your-server.de
ネームサーバー(ホスト名)3:ns3.second-ns.de

ヘッツナーのゾーンファイル

Hetznerのゾーンファイルは次のようになります。

$TTL 7200
@   IN SOA ns5.kasserver.com. office.earechnung.at. (
    2014030300   ; serial
    14400        ; refresh
    1800         ; retry
    604800       ; expire
    86400 )      ; minimum

@                        IN NS      ns6.kasserver.com.
@                        IN NS      ns5.kasserver.com.

@                        IN A       85.13.135.165
mail                     IN A       85.13.135.165
www                      IN A       85.13.135.165
w3                       IN A       85.13.135.165
ftp                      IN CNAME   www
imap                     IN CNAME   mail
pop                      IN CNAME   mail
relay                    IN CNAME   mail
smtp                     IN CNAME   mail
@                        IN MX 10   mail

だから私が欲しかったのは、すべてをAll-Inklネームサーバー(ns5/6.kasserver.com)に委任することでした。したがって、私はそれらをSOAおよびNSとして言及しました。しかし、HetznerDNSは要求に直接応答するようです。

オールインクゾーンファイル

All-Inklの管理システムは、DNSでは次のようになります。 All-Inkl DNS Administration System

DNS-クエリ

windowsクライアントからのnslookup

>nslookup -type=A -debug w3.earechnung.at.
------------
...
------------
Got answer:
    HEADER:
        opcode = QUERY, id = 2, rcode = NOERROR
        header flags:  response, want recursion, recursion avail.
        questions = 1,  answers = 1,  authority records = 2,  additional = 2

    QUESTIONS:
        w3.earechnung.at, type = A, class = IN
    ANSWERS:
    ->  w3.earechnung.at
        internet address = 85.13.135.165
        ttl = 4933 (1 hour 22 mins 13 secs)
    AUTHORITY RECORDS:
    ->  earechnung.at
        nameserver = ns5.kasserver.com
        ttl = 4608 (1 hour 16 mins 48 secs)
    ->  earechnung.at
        nameserver = ns6.kasserver.com
        ttl = 4608 (1 hour 16 mins 48 secs)
    ADDITIONAL RECORDS:
    ->  ns5.kasserver.com
        internet address = 85.13.128.3
        ttl = 3758 (1 hour 2 mins 38 secs)
    ->  ns6.kasserver.com
        internet address = 85.13.159.101
        ttl = 2220 (37 mins)

------------
Nicht autorisierende Antwort:
Name:    w3.earechnung.at
Address:  85.13.135.165

オンライントレース

simpledns.com でDNSファイルをトレースすると、次のように出力されます。

「w3.earechnung.at」のDNS委任のトレース:

ルートサーバーリスト(静的データ)の読み込み:
-> a.root-servers.net(198.41.0.4)
-> b.root-servers.net(192.228.79.201)
-> c.root-servers.net(192.33.4.12)
-> d.root-servers.net(128.8.10.90)
-> e.root-servers.net(192.203.230.10)
-> f.root-servers.net(192.5.5.241)
-> g.root-servers.net(192.112.36.4)
-> h.root-servers.net(128.63.2.53)
-> i.root-servers.net(192.36.148.17)
-> j.root-servers.net(192.58.128.30)
-> k.root-servers.net(193.0.14.129)
-> l.root-servers.net(199.7.83.42)
-> m.root-servers.net(202.12.27.33)
「f.root-servers.net」(192.5.5.241)へのリクエストの送信
受信した紹介応答-「at」のDNSサーバー:
-> r.ns.at(194.0.25.10)
-> d.ns.at(81.91.161.98)
-> ns9.univie.ac.at(194.0.10.100)
-> u.ns.at(195.66.241.82)
-> ns1.univie.ac.at(78.104.144.2)
-> n.ns.at(81.91.173.130)
-> j.ns.at(194.146.106.50)
-> ns2.univie.ac.at(192.92.125.2)
「n.ns.at」(81.91.173.130)へのリクエストの送信
受信した紹介応答-「earechnung.at」のDNSサーバー:
-> ns3.second-ns.de(IPアドレスなし)
-> ns.second-ns.com(IPアドレスなし)
-> ns1.your-server.de(IPアドレスなし)
DNSサーバー名「ns1.your-server.de」を解決しようとしています(詳細はログに記録されていません)
DNSサーバー名「ns1.your-server.de」をIPアドレス213.133.106.251に解決しました
「ns1.your-server.de」(213.133.106.251)へのリクエストの送信
受信した信頼できる(AA)応答:
->回答:w3.earechnung.at = 85.13.135.165のAレコード
->権限:earechnung.atのNSレコード= ns5.kasserver.com
->権限:earechnung.atのNSレコード= ns6.kasserver.com
別のドメイン名のDNS委任をトレースする

質問

私の質問は次のとおりです。

  1. このシナリオのベストプラクティスはありますか(Hoster Aのドメイン、Hoster BのWebスペース)?
    1. SOAをHetznerDNSまたはall-inklに与える必要がありますか?
    2. Nic.atでネームサーバーを直接変更する必要がありますか?
    3. 私の理解では、ns5とns6.kasserver.comのグルーレコード(Aレコード)は提供していません。必要ですか、それとも自動的に行われますか?
  2. CloudFlare のようなものを使用したい場合はどうなりますか? Hetzner、All-Inkl、Cloudflare間の委任はどのように最適に機能しますか?
  3. どのサーバーが実際にリクエストに応答しますか?
    1. 両方のDNSサーバーに入力されたw3。earechnung.atを照会すると、Hetznersns1.your-server.deが応答するように見えます。信頼できる回答と、ns5.kasserver.comが信頼できると述べています)。私は正しいですか?
    2. All-Inkls DNSサーバーにのみ登録されているai。earechnung.atをクエリすると、aiのようなメッセージが表示されます。 earechnung.at。 wurde von UnKnown nicht gefunden:存在しないドメインまたはサーバーがai.earechnung.atを見つけることができません:NXDOMAIN
  4. サイト全体をall-inkldnsサーバーに委任したと思います。これは正しいですか、それとももっと良い方法がありますか? all-inklサーバーですべてのサブドメインを設定する必要がありますか?

研究

次の質問も調べましたが、答えが見つかりませんでした(または少なくとも理解できませんでした)。

まず、よく書かれ、明確で、よく研究された質問であり、ドメイン名を編集しなかったことを祝福します。その最後は答えるのに非常に役立ちます。

可能であれば、実質的な問題に対処しましょう。whoisは、権限を持つように設定したネームサーバーとは異なるネームサーバーのセットを指します。

[me@risby ~]$ whois earechnung.at
[Querying whois.nic.at]
[...]
domain:         earechnung.at
registrant:     MAT8777331-NICAT
admin-c:        AT8777330-NICAT
tech-c:         MH536567-NICAT
nserver:        ns1.your-server.de
nserver:        ns3.second-ns.de
nserver:        ns.second-ns.com
changed:        20121004 15:29:23
source:         AT-DOM

リストされている3つのサーバーに注意してください。私はあなたがそれらのサーバーを提供するように設定していることを自由に認めますNS他の場所でクエリを指すレコード-しかしあなたはまた権威に応答するためのデータでそれらを設定しますリクエストすると、サーバーはゾーンに対して権限があると信じているため、知らないRRに対して権限のある否定的な応答を合法的に返すことができます。この場合の正しい方法は、レジストラに戻ることです。これはHetznerだと思います。この場合、DNSサーバーではなく、登録サーバー(.at.whoisにデータを入力するデバイス)のネームサーバーレコードを変更して、2つの新しいサーバーns5.kasserver.com.を返します。およびns6.kasserver.com.

サブゾーンを委任するために一連のNSレコードを提供するというビジネスは、それを行うために使用される場合に完全に機能します。現在のネームサーバーのセットに続くサブゾーンのサブゾーンを委任します。 HTTP 301リダイレクトのように珍しく、-あなたが見つけたように-完全に機能しないかもしれません。

ベストプラクティスとしては、登録に1つのプロバイダーを使用し、DNSプロビジョニングに別のプロバイダーを使用するのが完全に正常です。とは言うものの、2つのタスクは非常に緊密に連携していることが多いため、一部のレジストラは、DNSサーバー以外のDNSサーバーに登録済みゾーンを設定することに対処できません。 Hetznerがそのようなものである場合は、ドメイン登録を別のレジストラに移動する必要があります。

6
MadHatter