Когда DNS-запросы используют TCP вместо UDP?

Возможный дубликат:
Правда ли, что сервер имен должен отвечать на запросы через TCP?

Я знаю, что DNS использует UDP для большинства своих запросов, но в каких случаях он будет использовать вместо него TCP?

2 ответа

Решение

DNS использует TCP, когда размер запроса или ответа превышает один пакет, например, с ответами, которые имеют много записей или много ответов IPv6 или большинство ответов DNSSEC.

Максимальный размер изначально составлял 512 байт, но есть расширение протокола DNS, которое позволяет клиентам указывать, что они могут обрабатывать ответы UDP длиной до 4096 байт.

Ответы DNSSEC обычно больше максимального размера UDP.

Запросы на передачу обычно превышают максимальный размер UDP и, следовательно, также будут выполняться по TCP.

Протокол управления передачей (TCP) используется, когда размер данных ответа превышает 512 байт или для таких задач, как передача зон.

http://en.wikipedia.org/wiki/Domain_Name_System

Другие вопросы по тегам