Как выполнить поиск DNS с несколькими вопросами? - PullRequest
0 голосов
/ 11 марта 2019

Стандарт DNS позволяет указывать более 1 вопроса на запрос (я имею в виду внутри одного пакета DNS). Я пишу плагин Snort для анализа DNS, и мне нужно проверить, правильно ли он работает, когда есть DNS-запрос, содержащий несколько вопросов.

Структура DNS-пакета выглядит следующим образом:

0  1  2  3  4  5  6  7  8  9  A  B  C  D  E  F 
+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+
|                      ID                       |
+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+
|QR|   Opcode  |AA|TC|RD|RA|   Z    |   RCODE   |
+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+
|                    QDCOUNT                    |
+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+
|                    ANCOUNT                    |
+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+
|                    NSCOUNT                    |
+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+
|                    ARCOUNT                    |
+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+
|         <ACTUAL QUESTIONS GO HERE>            |
|                                               |
|                     ...                       |
|                                               |

Таким образом, если QDCOUNT больше 1, в одном запросе может быть несколько вопросов DNS.

Как я могу выполнить такой запрос с помощью инструментов Linux? dig domain1.example domain2.example создает только 2 отдельных запроса с 1 вопросом каждый. host и nslookup, кажется, позволяют запрашивать только 1 имя за один раз.

1 Ответ

1 голос
/ 11 марта 2019

См. Этот вопрос для получения полной информации: Запрос записей A и AAAA в одном DNS-запросе

Короче говоря, никто сегодня не задает несколько вопросов в одном запросе. Это никогда не было четко определено и ставит много вопросов (например: существует только один код возврата, так что вы делаете для 2 запросов в одном сбое, а не в другом?).

Было бы полезно, чтобы люди одновременно выполняли запросы A и AAAA (вместо устаревших ANY), но сегодня их в принципе не существует.

...