DNS-пакет (заголовок, запросы, ответы) Как разобрать

#dns #header #packet

#dns #заголовок #пакет

Вопрос:

Каков наилучший способ анализа потока ответов DNS.

DNS-пакет разделен на 3 части.

DNS-заголовок DNS-запросы DNS-ответы

Разобрать каждый файл легко. Но как мне узнать, где разделены все части. Нет разделителя.

43bf8100000100010000000003777777076773746174696303636f6d0000010001c00c000100010000003c0004acd91663

43bf81000001000100000000 (заголовок)

03777777076773746174696303636f6d0000010001 (запросы)

c00c000100010000003c0004acd91663 (ответы)

Смотрите здесь: http://www.tcpipguide.com/free/t_DNSMessageHeaderandQuestionSectionFormat.htm

Когда у меня есть несколько ответов или, возможно, вопросов. Как мне узнать, где отделить раздел запроса от раздела ответа?

Приветствия

Комментарии:

1. Вам нужно начать с чтения RFC 1034 и 1035 несколько раз. Обратите особое внимание на сжатие имен, поскольку это является (было) источником многих ошибок. Кроме того, все основные языки программирования имеют библиотеки DNS, которые способны анализировать и генерировать DNS-пакеты, так зачем же изобретать велосипед (если у вас есть причины для этого, вы их не указали)

2. И у вас не может быть нескольких вопросов, это противоречило бы спецификациям DNS. На самом деле у вас может быть несколько ответов, а также для полномочий и дополнительных разделов.