web-dev-qa-db-ja.com

ネームサーバーがTCP経由でクエリに応答する必要があるのは本当ですか?

私はいくつかの大きなWebホストのDNSサーバーの監視を設定するプロセスです。私の目標は、pingに対する応答を追跡することにより、DNSサーバーの応答時間を比較することです。

その過程で、Bluehostネームサーバーがpingに応答しないことを発見しました。 bluehost.comのPingdom DNS Check を実行して詳細情報を取得しようとしたところ、次のエラーが発生しました。

ネームサーバーns1.bluehost.com(74.220.195.31)は、TCP経由のクエリに応答しません。

ネームサーバーは、TCP経由で送信されたクエリに応答できませんでした。これはおそらく、ネームサーバーが正しくセットアップされていないか、ファイアウォールでの構成が誤っているためです。 DNSがゾーン転送を提供しない限り、DNSにTCPが必要でないというのはかなり一般的な誤解です-おそらく、ネームサーバー管理者はTCPが通常は要件であることを認識していません。

以下について知りたいのですが。

  • 上記の説明はどの程度当てはまりますか?
  • ネームサーバーがTCP経由でクエリに応答しないことの意味は何ですか?
24
Taras Mankovski

Pingdomからの診断テキストは正確です。 TCP is notゾーン転送のみ。

DNSサーバーの実装are TCPをサポートするために(RFCが何かを必要とするのと同様に) "必須" RFC 5966 に従って、DNSトランスポートがTCP-実装要件」。

これはサーバーソフトウェアの実装の要件であり、notはすべてのサーバーの操作に厳密に適用されます。操作の実践はカバーされていません。

つまり、特定のDNSサーバーがTCPをサポートするように構成されていない場合、またはTCPがブロックされている場合、長期的な影響により、DNSSECを正しくサポートできなくなります。同様に、512バイトを超える応答を引き起こす他のDNSデータはブロックされる可能性があります。

ob免責事項:私はそのRFCを書きました。

[〜#〜] edit [〜#〜]RFC 5966は RFC 7766 に置き換えられました

48
Alnitak

TCPおよびUDP-TCPは512バイトを超える応答サイズ用です(ゾーン転送を含む))(私が読んだものによると、とにかく、私は通常TCPおよび実行しているNSのUDPを有効にします...)

3
Mark Regensberg