Назад | Перейти на главную страницу

как отслеживать трафик на порте 53 (DNS)

Меня немного смущает обилие руководств по tcpdump в Интернете. У меня есть несколько виртуальных машин, работающих на сервере виртуализации. Где я отлаживаю проблему. Порт 53 - это проблема. У меня есть мостовая установка, где из 4 сетевых карт на рассматриваемой машине одна активна, и это xen-br0. Я хочу проверить, поступает ли какой-либо запрос на порт 53 на сервере другими машинами в локальной сети. Я также хочу увидеть, отправляют ли гостевые операционные системы в локальной сети или на любой другой машине трафик на порт 53. Из-за большого количества сообщений, генерируемых через tcpdump, мне трудно получить вывод на желаемый порт с помощью grep.

Итак, как я могу его использовать, если кто-то может привести полезный пример. Заранее спасибо.

Вы можете использовать эту команду: tcpdump -n -s 1500 -i eth0 udp port 53 (Замените 'eth0' на имя вашего интерфейса Ethernet, например 'fxp0'). Это показывает все пакеты, входящие и исходящие из вашего компьютера для порта UDP. 53 (DNS) Источник:DNS-упражнение 1

Если вы хотите только видеть, кто с кем разговаривает на порту udp / tcp 53 без требуется подробная полезная нагрузка такого разговора, лучше всего использовать netflow.

Осмелюсь предположить, что вы используете Linux. Если да, вы можете использовать ulogd чтобы сгенерировать информацию о чистом потоке из трафика, который вы получаете, а затем обработать его с помощью nfdump (если вы ориентированы на командную строку) и / или nfsen (если вы больше относитесь к визуальному типу) (nfdump / nfsen являются частью того же проекта с открытым исходным кодом).

Например, ulogd включен только с одним правилом iptables:

-A INPUT -j ULOG --ulog-cprange 48 --ulog-qthreshold 50

и запуск fprobe-ulog, поэтому каждый поток, сгенерированный ulogd, направляется сборщику netflow (в данном случае nfdump), прослушивая порт, который вы настроили для прослушивания nfdump (в данном случае порт 9995):

29040 ?        Ssl   65:55 /usr/sbin/fprobe-ulog -Xeth0:100 localhost:9995

Итак, если вы хотите знать, кто пытался поговорить с вашим сервером через порт udp / tcp 53, вы можете запросить свои потоки с помощью nfdump:

root@my_machine:/usr/local/nfdump/bin/nfdump -R 2011 'dst port 53 && dst ip  XXX.XXX.212.184' | more
Date flow start          Duration Proto      Src IP Addr:Port          Dst IP Addr:Port   Packets    Bytes Flows
2011-01-07 06:23:28.031     0.000 UDP      200.80.42.244:54    ->  XXX.XXX.212.184:53           1       63     1
2011-01-07 20:34:07.287     0.000 UDP        38.229.1.72:42196 ->  XXX.XXX.212.184:53           1      119     1
2011-01-08 04:29:53.287     0.000 UDP     194.199.24.101:45274 ->  XXX.XXX.212.184:53           1       57     1
2011-01-28 08:47:45.171     0.000 UDP        38.229.1.72:42914 ->  XXX.XXX.212.184:53           1      119     1
2011-02-18 04:56:48.359    22.335 UDP    200.186.243.203:60808 ->  XXX.XXX.212.184:53           3      211     1
2011-02-18 04:57:07.363     9.026 TCP    200.186.243.203:60970 ->  XXX.XXX.212.184:53           3      144     1
2011-02-18 04:58:48.845     2.389 UDP    200.186.243.203:60808 ->  XXX.XXX.212.184:53           2      116     1
2011-02-18 04:58:48.844     8.385 TCP    200.186.243.203:61051 ->  XXX.XXX.212.184:53           3      144     1
2011-02-18 04:59:00.829    32.490 UDP    200.146.126.135:39171 ->  XXX.XXX.212.184:53           5      339     1
2011-02-18 04:59:22.738     9.132 TCP    200.146.126.135:57213 ->  XXX.XXX.212.184:53           3      152     1
...
...
...
Summary: total flows: 310, total bytes: 47456, total packets: 839, avg bps: 0, avg pps: 0, avg bpp: 56
Time window: 2011-01-07 06:23:28 - 2011-03-03 05:57:55
Total flows processed: 3087449, Blocks skipped: 0, Bytes read: 161058180
Sys: 0.966s flows/second: 3193300.5  Wall: 0.854s flows/second: 3611887.9

Для этой конкретной проблемы, которую вы описываете, установка ulogd и nfdump / nfsen может показаться излишней, но опыт подсказывает мне, что включение netflow вашей инфраструктуры очень поможет вам в устранении любых проблем с трафиком / безопасностью, которые вам могут понадобиться в будущем, поэтому это может очень хорошо стоит затраченных усилий.

Привет, я знаю, что это не полное решение, но оно быстрое и может пригодиться

lsof -i:53

Это должно дать вам представление о том, для чего используется порт. (ps для днс никогда не использовал)