Сколько записей A может поместиться в одном ответе DNS? - PullRequest
1 голос
/ 22 июля 2011

Каковы ограничения на размер ответов DNS?Например, сколько «A» записей ресурсов может присутствовать в одном ответе DNS?Ответ DNS все еще должен поддерживать кэш.

Ответы [ 2 ]

3 голосов
/ 22 июля 2011

Согласно данного RFC ограничение основано на предельном размере сообщения UDP, который составляет 512 октетов.Стандарт EDNS поддерживает согласованный ответ с практически неограниченным размером ответа, но на момент написания этой статьи (март 2011 г.) его поддерживали только 65% клиентов (что означает, что вы не можете на него полагаться)

2 голосов
/ 28 июля 2011

Самый большой гарантированный поддерживаемый размер сообщения DNS составляет 512 байт.

Из них 12 используются заголовком (см. §4.1.1 RFC 1035 ).

Секция Вопрос появляется следующей, но имеет переменную длину - в частности это будет:

  • доменное имя (в проводном формате)
  • два байта каждый для QTYPE и QCLASS

Следовательно, чем длиннее ваше доменное имя, тем меньше места у вас осталось для ответов.

При условии, что используется сжатие метки (§4.1.4), каждая запись A потребует:

  • два байта для указателя сжатия
  • два байта каждый для TYPE и CLASS
  • четыре байта для TTL
  • два байта для RDLENGTH
  • четыре байта для данных самой записи A

т.е. 16 байтов для каждой записи A (§4.1.3).

Вы должны , если возможно также включить ваши записи NS в Раздел авторизации .

Учитывая все это, вы можете сжать вокруг 25 записей в один ответ.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...