Как собрать DNS, который запрашивает запись?

grep 'mydata' *

Звезда * символ показывает, что Вы хотите искать в нескольких файлах. Если Вы хотите перерыть несколько файлов в нескольких каталогах, можно добавить -R для рекурсивного поиска.

grep 'mydata' * -R
15
20.12.2011, 21:36
2 ответа

Используйте Wireshark:

tshark -f "udp port 53" -Y "dns.qry.type == A and dns.flags.response == 0"
12
27.01.2020, 19:49
  • 1
    я добираюсь tshark: "A" cannot be found among the possible values for dns.qry.type. –  Jack O'Connor 07.02.2017, 20:49
  • 2
    Для решения проблемы @JackO' Connor десятичного значения для типа, запись DNS равняется 1. Поэтому это должно работать: tshark -f "udp port 53" -Y "dns.qry.type == 1 and dns.flags.response == 0" –  Rolinh 14.03.2017, 10:54

Если у Вас нет wireshark установленным затем

tcpdumpdns=/tmp/tcpdumps
tcpdump -lvi any "udp port 53" | tee $tcpdumpdns

должен работать на Вас. Поскольку Вы хотели ограничить вывод предпоследним значением затем, я проанализирую Ваш файл журнала с:

grep -E 'A\?' $tcpdumpdns |sed -e 's/^.*A? //' -e 's/ .*//'|sort -u

Если Вы хотите это, живут затем:

tcpdump -lvi any "udp port 53" 2>/dev/null|grep -E 'A\?'|awk '{print $(NF-1)}'

должен сделать это, (здесь sed, и awk являются взаимозаменяемыми; и я выбрал бы awk.)

13
27.01.2020, 19:49

Теги

Похожие вопросы