DNSに複数のPTRレコードが推奨されないのはなぜですか?


36

私は頻繁に 読ん DNS構成で複数のPTRレコードを使用することは推奨されていないこと。

ただし、その理由は多くの場合、曖昧であるか、それほど明白ではない命名です。

  • 「問題を引き起こす可能性がある」、
  • 「単一の答えを期待しているプログラムのバグを引き起こすことができます」:それはソフトウェアの問題ですよね?!
  • 「DNS応答パケットが大きすぎる可能性があります」:これはEDNSで修正されませんか?

これらの正当な理由はありますか?他の(良い)理由を知っていますか?このようなものはすべて、「レガシーの恐怖」のように見えます...


4
単一のIPアドレスに対して複数のPTRレコードが必要なのはなぜですか?理にかなっている理由は考えられません。
ペルフォンツヴァイベルク14

3
@PervonZweigbergkこれは私が尋ねたものではありませんが、たとえば、同じIPを指す複数の名前があり、それらのすべてと一致するように逆にしたいためです。
トートル14

10
@PervonZweigbergk複数のドメインのメールを処理するメールサーバーを想像してください。EHLOコマンドでメールを送信するドメイン内の名前を使用することもできます。特定の受信者はPTREHLOコマンド内のドメインに一致するレコードが必要です。そうでない場合、受信者はあなたからのメールを受け付けません。ただし、複数のPTRレコードがある場合は、それらのレコードの1つがランダムに選択されるだけで、そのレコードがEHLOコマンドと一致しない場合、メールは拒否されます。
カスペルド14

3
私はそれがあなたが尋ねたものではないことを知っているので、答えとしてではなく、コメントを通してこれを尋ねたのです。:-)あなたが話しているアプリケーションについては、決して言及していません。@kasperdが推測しているのは、送信メールのコンテキストについて話していることをより明確にすることです。
ペルフォンツヴァイベルク14

2
@kasperd誰かがそれをしたいと思うかもしれませんが、そうすることは型破りであり、質問が関係している問題のある状況を不必要に引き起こします。メールサーバーはEHLO、メールを処理するドメインの数に関係なく、コマンドで単一の名前のみを使用することが期待されています。HELO/ の名前EHLOMAIL FROMFromメールアドレス自体とは関係なく、メールサーバー自体を識別することが期待されています。
-HåkanLindqvist 14

回答:


19

PTR逆引き名(例:)のレコードは、そのIPアドレスに関連付けられている正規名7.2.0.192.in-addr.arpaを識別することが期待されています。

ネットワークノードのゲートウェイポインターとフルアドレスノードの通常のホストポインターの両方は、PTR RRを使用して、対応するホストのプライマリドメイン名を指し示します。

From:http : //tools.ietf.org/html/rfc1035#section-3.5

この期待は、逆引きを行うソフトウェアに反映されます。多くの場合、そのようなソフトウェアは具体的には単一の名前が返されることを期待し、そのホストの正規名としてその名前を使用できることを期待しています。複数の名前が返された場合、ランダムに名前を取得するのが一般的です。これは、この特定の機会にどの名前を使用するかを知る方法がまったくないためです。

一般的な期待として、IPアドレスに関連付けられた正規名が1つあり、その名前がPTR指すべきものであるため、複数の名前を追加することには一般に利点がありません(ランダムA/ AAAAレコードに一致するものはないことを期待しますPTR)が、潜在的な可能性があります欠点は、複数のPTRレコードを追加した場合にどのレコードを使用するかを制御できないため、奇妙な結果が生じる可能性があるためです。

本質的に、複数のPTRレコードがある場合、実際にはホストをより合法的に見せず、むしろ反対に見せることで、検証に失敗したり、何かを壊したりするリスクがあります。

おそらくいくぶん極端な比phorとして、5枚のパスポートをすべて写真で渡しますが、空港で名前が異なる場合は、パスポートを1枚渡すだけではないでしょう。


「1つの正規名」の詳細:IPアドレスを複数のエンティティに関連付けることができる場合、最も具体的な名前が優先されます。複数の名前ベースの仮想ホストを持つWebサーバーの場合、Webサーバー自体の名前が最も適切です。これは、情報RFCのアドバイスに従うPTRこと(常にA記録に同意すること)が完全に困難なケースの1つです。
アンドリューB

「PTRレコード識別することが期待される」:誰によって?ソフトウェア開発者は1つのPTRのみが標準であると考え始めたため、事実上のルールのように見えます。私は正しいですか?
トーター14

@Totorソースの引用とリンクを追加しました。
-HåkanLindqvist 14

逸話として、最近、Appleが9kバイト以上の回答に相当するいくつかのPTRレコードを持っていることが注目されました。間違いなく、それらだけではありません。これは、必須のPTRレコードポリシーがこの回答の詳細を考慮に入れない場合に最終的に何ができるかという極端な例です。
アンドリューB

16

RFCはこれらのPTRレコードを処理するための制限や方法を課していないため、すべては予測不可能な動作になります。ほとんどの実装ではラウンドロビンが選択され、目的の結果が得られません(多くの名前が単一のIPに完全に一致する)。

詳細については、https//supernoc.rogerstelecom.net/pdfs/multiple-ptrs.pdfをご覧ください。

また、Glibcのgetnameinfo関数(https://sourceware.org/bugzilla/show_bug.cgi?id=5790)からこのバグを確認してください。インターネット上の無数の異なるシステム(一部は非常に古く、パッチが適用されていない)でこれが発生しないことをどのように保証できますか?

経験則を強化するために、不特定で予測不可能な動作を避けることは常に良いことです。残念ながら、単一のIPの複数のPTRレコードはそのカテゴリに分類されます(RFCに関する限り)。


2
インターネット上のさまざまな「無限」のシステムで問題発生していないことをどのように保証できますか?あなたの答えは素晴らしいですが、この議論は価値がありません。さらに、クライアントのバグは、「かなりの」数のバグが影響を受ける場合を除き、無関係です。
トーター14

2

複数のPTRがある場合、PTRが特定の転送レコードと一致することをどのように保証しますか

これは、メールサーバーの相互作用で特に重要です。ほとんどの受信SMTPサーバーは、転送が逆に一致するかどうかをチェックします

かなり難しいのは、複数のPTRがあり、どのPTRが選択されているか、接続時に指定した転送と一致することを保証する方法がないことです。

完全な一致を保証する最も簡単な方法は、前方エントリと一致するPTRを1つ持つことです

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.