web-dev-qa-db-ja.com

DNSでは、IN NS CNAMEを指すことができますか?

NSレコードをCNAMEにすることは許可されますか?例:

subdomain.example.com.       IN NS  ns1.example.com.
ns1.example.com.             CNAME  foo.example.com.
foo.example.com.             IN A   10.1.1.1

これはバインドでは機能しないようですが(もちろん)機能します。

subdomain.example.com.       IN NS  foo.example.com.
foo.example.com.             IN A   10.1.1.1

この設定を禁止しているRFCへのポインタがあれば幸いです。

18
Mark Wagner

NS RR( RFC1035 )を定義する実際のRFCは、ターゲットのRRタイプを指定せずにドメイン名であることを示しているだけです(ただし、それはIPであってはならないことです。しかし、それは RFC1912 で具体的に言及されていますが、セクション2.4:

NS CNAMEを指すレコードは不良であり、現在のBINDサーバーと激しく競合する可能性があります。実際、現在のBIND実装はそのようなレコードを無視するため、不完全な委任につながる可能性があります。一定量があります。 DNSのなりすましを防止するためにBINDで行われるセキュリティチェックの方法NSレコード。また、古いBINDサーバーは、エイリアスネームサーバーのアドレスを見つけようとする無限クエリループに巻き込まれ、送信されるDNS要求のストリーム。

絶対にしてはならないことではありませんが、あなたが見ている振る舞いに確かに適合します

21
jj33