可能性のある複製:
ネームサーバーがTCP経由でクエリに応答する必要があるのは本当ですか?
DNSはほとんどのクエリにUDPを使用していますが、どのような状況でTCPを代わりに使用しますか?
DNSはTCPを使用します。これは、要求または応答のサイズが、多数のレコードまたは多数のIPv6応答またはほとんどのDNSSEC応答を持つ応答などの単一のパケットよりも大きい場合です。
最大サイズは当初512バイトでしたが、クライアントが最大4096バイトのUDP応答を処理できることをクライアントが示すことを可能にするDNSプロトコルの拡張機能があります。
DNSSEC応答は通常、最大UDPサイズよりも大きくなります。
転送要求は通常、最大UDPサイズよりも大きいため、TCPを介しても行われます。
伝送制御プロトコル(TCP)は、応答データのサイズが512バイトを超える場合、またはゾーン転送などのタスクに使用されます。
http://en.wikipedia.org/wiki/Domain_Name_System#DNS_protocol_transport