Почему wireshark не видит dns пакеты
Перейти к содержимому

Почему wireshark не видит dns пакеты

  • автор:

Почему DNS пакеты уходят напрямую на DNS сервер? Wireshark

В Wireshark посмотрел структуру DNS пакета. Там в MAC-адресе пункта назначения указан адрес шлюза по умолчанию, но в IP-адресе назначения указан IP DNS сервера. Хотя во многих статьях об устройстве пакетов DNS я встречал, что там указан IP шлюза по умолчанию, а не DNS сервера. От чего это зависит и почему так?

Отслеживать
задан 24 окт 2021 в 18:33
ComeInRage ComeInRage
1,601 6 6 серебряных знаков 14 14 бронзовых знаков
Можно пример такой статьи?
24 окт 2021 в 18:36
24 окт 2021 в 18:37

Статья выглядит безграмотной, скорее всего на маршрутизаторе просто установлен свой маленький DNS-сервер, то есть пакеты точно так же уходят напрямую на DNS-сервер, а автор статьи не смог этого понять

24 окт 2021 в 18:39

@andreymal собственно, если подводить итог. В пакете DNS в поле пункта назначения всегда указан конечная точка всего маршрута — DNS Сервер, а в поле MAC-адреса пункта назначения — следующая точка в пути (в данном случае адрес роутера)? И в статье, получается, DNS Сервером является сам шлюз по умолчанию?

24 окт 2021 в 18:42

Да. Практически все домашние роутеры являются (кэширующими) dns серверами и анонсируют по DHCP себя в качестве DNS сервера. (При дефолтных настройках)

Wireshark — приручение акулы

Wireshark — это достаточно известный инструмент для захвата и анализа сетевого трафика, фактически стандарт как для образования, так и для траблшутинга.
Wireshark работает с подавляющим большинством известных протоколов, имеет понятный и логичный графический интерфейс на основе GTK+ и мощнейшую систему фильтров.
Кроссплатформенный, работает в таких ОС как Linux, Solaris, FreeBSD, NetBSD, OpenBSD, Mac OS X, и, естественно, Windows. Распространяется под лицензией GNU GPL v2. Доступен бесплатно на сайте wireshark.org.
Установка в системе Windows тривиальна — next, next, next.
Самая свежая на момент написания статьи версия – 1.10.3, она и будет участвовать в обзоре.

Зачем вообще нужны анализаторы пакетов?
Для того чтобы проводить исследования сетевых приложений и протоколов, а также, чтобы находить проблемы в работе сети, и, что важно, выяснять причины этих проблем.
Вполне очевидно, что для того чтобы максимально эффективно использовать снифферы или анализаторы трафика, необходимы хотя бы общие знания и понимания работы сетей и сетевых протоколов.
Так же напомню, что во многих странах использование сниффера без явного на то разрешения приравнивается к преступлению.

Начинаем плаванье

Для начала захвата достаточно выбрать свой сетевой интерфейс и нажать Start.

После чего и начнется процесс захвата, причем прилетевшие пакеты будут появляться в реальном времени.
В процессе рассмотрения и изучения пакетов бывают ситуации, когда нужно вернуться предыдущему пакету. Для этого есть две кнопки (см скриншот).

А следующая за ними кнопка позволяет сделать быстрый переход к пакету, указав его номер.
В случае если колонки перекрываются и наползают друг на друга, можно кликнуть по такой колонке правой кнопкой мыши и выбрать “Resize Column”.
Произойдет автоматическая подгонка размеров под текущую ситуацию.
И кроме того, есть кнопка “Resize all Columns”, которая приведет в порядок все колонки.
Используя меню View – Time Display Format, можно, например, настроить, чтобы отсчет времени шел не с начала захвата, а с момента получения предыдущего пакета (Since Previous Captured Packet).
Самое важное в каждой программе (Help – About Wireshark) покажет не только версию и список авторов, но и содержит закладку Folders, которая покажет пути размещения каталогов с конфигурациями.
Изучая интерфейс, можно выбрать, например, пакет http, и увидеть, что HTTP инкапсулируется в TCP (транспортный уровень), TCP инкапсулируется в IP (сетевой уровень), а IP в свою очередь инкапсулируется в Ethernet (перед этим даже мелькает 802.1Q).

И на самом верху идет нечто вроде небольшого обзора собранной информации о кадре.

Про фильтры мы поговорим дальше, а на данном этапе, если нужно быстро отфильтровать лишние пакеты, достаточно сделать правый клик на пакете, выбрать меню Apply as Filter – Not selected и изменения сразу же вступят в силу.
Если нужно еще что-то убрать, то в следующий раз выбирать “and not Selected”, и новое правило просто добавится к фильтру.

Убираем заусенцы

Довольно часто при работе с Wireshark возникает ошибка IP checksum offload – ошибка контрольной суммы заголовка IP пакета.

Современные сетевые карты насколько умные, что сами считают контрольную сумму, зачем это делать на уровне стека TCP/IP программно, если можно делать хардварно.
А Wireshark натурально перехватывает пакеты, до того как они попадают в сеть.
И до того как эта сумма была просчитана и была добавлена в заголовок пакета.
Соответственно есть два пути решения этой проблемы — выключать функцию offload в настройках сетевой карты или в настройках сниффера указать, чтобы он не обращал внимание на это значение.
Хардваные функции зачастую лучше софтварных, в основном из-за скорости обработки (в железе обычно выше) поэтому лучше изменить настройки самого сниффера.
Для этого нужно зайти в настройки (Edit — Preferences), затем Protocols – IPv4 – и снять флаг с “Validate IPv4 checksum if possible”.

  • Локально на своем хосте;
  • Организовать зеркалирование трафика на коммутаторе;
  • Подключаться непосредственно в интересующие места;
  • или же отравление протокола ARP (еще более незаконно, чем пассивное прослушивание трафика)

Фильтруем поток

Wireshark содержит два вида фильтров – захвата (Capture Filters) и отображения (Display Filters).
Вначале рассмотрим Capture Filters.
Как можно догадаться по названию, они служат для фильтрации еще на этапе захвата трафика.
Но в таком случае, безусловно, можно безвозвратно потерять часть нужного трафика.
Фильтр представляет собой выражение, состоящее из встроенных значений, которые при необходимости могут объединяться логическими функциями (and, or, not).
Для того, чтобы его задействовать, нужно зайти в меню Сapture, затем Options, и в поле Capture Filter набрать, например, host 8.8.8.8 (или, например, net 192.168.0.0./24)

Так же, конечно, можно выбрать и заранее созданный фильтр (за это отвечает кнопка Capture Filter).
В любом из вариантов фильтр появится возле интерфейса, можно жать Start.

Теперь перейдем к Display Filters.
Они фильтруют исключительно уже захваченный трафик.
Что можно фильтровать?
— Практически все — протоколы, адреса, специфические поля в протоколах.
Операции, которые можно использовать при построении фильтров:

Команда Значение Пример использования
== равенство ip.dst == 193.168.3.10
!= Не равно udp.dst != 53
меньше чем ip.ttl < 24
> больше чем frame.len > 10
меньше или равно frame.len
>= больше или равно tcp.analysis.bytes_in_flight >= 1000
matches регулярные выражения frame matches «[Pp][Aa][Ss][Ss]»
contains содержит dns.resp.name contains google

Как вы, наверное, заметили, в таблице в качестве примеров были разнообразные выражения, достаточно понятные и зачастую говорящие сами за себя.
Например, ip.dst – это поле протокола IP.
Чтобы увидеть это поле, можно просто посмотреть на пакет, и в нижней части окна можно увидеть его значение, которое потом можно применять в любом фильтре.
Например, нас интересует, как создать фильтр, где будет проверяться значение TTL.
Для этого раскрываем L3 часть и становимся на соответствующее поле:

И видим, что для построения фильтра, нужно использовать выражение ip.ttl.
Если начать набирать фильтр, то после точки автоматически появится список возможных значений:

Чтобы применить фильтр, достаточно нажать enter или кнопку Apply.
Само поле для ввода фильтра может менять цвет в зависимости от того, что было набрано.
Зеленый цвет означает, что все в порядке. Красный — допущена ошибка, желтый — получен неожиданный результат, потому что существуют другие варианты написания фильтра (например можно написать ip.dst != 8.8.8.8 или же !ip.dst == 8.8.8.8, именно второй вариант более предпочтительный).
Фильтры можно сохранять для дальнейшего использования, нажав кнопку Save, затем ввести произвольное название

и после нажатия на кнопку ОК фильтр появится как кнопка на панели.

А если кликнуть на расположенную неподалеку кнопку «Expression…», то откроется достаточно мощный конструктор выражений, по которому можно чуть ли не изучать сетевые протоколы. Количество поддерживаемых протоколов постоянно увеличивается.

Как уже упоминалось ранее, можно выделить любой пакет и в контекстном меню выбрать Apply as Filter и в подменю выбрать режим — selected или not selected и соответственно сразу же появится фильтр, который будет показывать только выбранное или наоборот уберет выбранное с экрана.
Таким образом можно гибко выбирать, что видеть на экране, а что — нет.
Это может быть определенный ip-адрес, ttl, порт, dns ответ и многое другое.
Кроме того, есть два варианта для таких быстрых фильтров — Prepare as Filter и Apply as Filter.
Как можно догадаться по названию — разница заключается в том, что в первом случае только появится в поле для ввода Display Filter, но не применится (удобно, если например, добавлять таким способом несколько фильтров, а затем сразу применить готовый результат), а во втором — сразу же и применится.

Фильтры можно объединять, используя знакомые по булевой алгебре логические операции:
(dns) && (http) логическое и

(dns) || (http) это логическое или

Таким образом можно строить большие и сложные фильтры вроде:
(tcp.flags.syn==1) && (ip.src == 172.16.10.2) && (ip.dst == 172.16.10.1)
Здесь видим, что выбираются только TCP SYN сегменты, только с определенным адресом отправителя и получателя. При составлении больших фильтров нужно помнить, что фильтр по сути — логическое выражение, и если оно истинно, то пакет отобразится на экране, если ложно — нет.

Ныряем глубже

Достаточно частая ситуация, когда возникают жалобы на медленную работу сети, причин этого может быть множество.
Попробуем разобраться, в чем может быть причина, и рассмотрим два способа.
Первый состоит в добавлении колонки TCP delta.
Открываем пакет, находим поле Time since previous frame in this TCP frame, правый клик и выбираем Apply as Column. Появится новая колонка.
На ней можно кликнуть правой кнопкой мыши и выбрать режим сортировки, например, Sort Descending.

И сразу же рассмотрим второй способ.
Относительно недавно (в версии 1.10.0) появился фильтр tcp.time_delta, который, собственно, учитывает время с момента последнего запроса.

Если клиент делает запрос и получает ответ через 10 миллисекунд, и клиент говорит, что у него все медленно работает, то, возможно, проблема у самого клиента.
Если же клиент делает запрос и получает ответ через 2-3 секунды, тут уже, возможно, проблема кроется в сети.

Еще глубже

Если посмотреть в TCP пакет (или сегмент если быть точным), то можно увидеть там Stream index, который начинается обычно с нуля.
Само поле будет называться tcp.stream.

По нему можно сделать правый клик и создать фильтр.

Таким образом можно фильтровать нужные соединения.

Еще один способ – сделать правый клик на самом пакете, выбрать Conversation Filter и создать фильтр для l2 l3 l4 уровня соответственно.

В итоге мы опять увидим взаимодействие двух хостов.

И третий вариант — это одна из самых интересных фич — Follow TCP Stream.
Для того чтобы его задействовать, нужно опять таки кликнуть правой кнопкой мыши на пакете и выбрать “Follow TCP Stream”. Появится окно, где будет наглядно продемонстрирован весь обмен между двумя узлами.

Если же зайти в меню Statistics – Conversations, то, выбирая закладки, можно увидеть статистику по таким “разговорам” и различные сессии, при этом можно отсортировать их по различным колонкам, например, по количеству переданных данных.

И прямо в этом окне можно правой кнопкой взывать контекстное меню и опять же применить как фильтр.

Со временем приходит опыт

После некоторого времени, проведенного за захватом разнообразного трафика, можно заметить какую-то шарообразную кнопку в нижнем левом углу, которая еще иногда меняет цвет.

Нажатие на эту кнопку приведет к открытию окна Expert Infos.
Того же результата можно добиться, пройдя в меню Analyze – Expert Info.

В этом окне будет содержаться информация по найденным пакетам, разбитая на группы Errors, Warnings, Notes и Chats.
Цветовая раскраска для этих групп выглядит следующим образом:
Ошибки — красный цвет
Предупреждения — желтый
Примечания — сине-зелёный (cyan)
Чат — серый

Wireshark содержит в себе мощный анализатор и умеет автоматически обнаруживать большое количество проблем, возникающих в сети.
Как вы уже могли заметить, буквально везде можно использовать фильтры и Expert Info не является исключением.
Для того чтобы создать такой фильтр, нужно использовать конструкцию expert.severity.
Например, expert.severity==error.

Грабим трафик!

Можно ли с помощью Wireshark узнать, что было скачано?
Да, можно. И сейчас это увидим.
Вначале возьмем HTTP трафик.
Сделаем правый клик по HTTP пакету — Protocol Preferences – и видим тут массу опций, которые непосредственно влияют на извлечение файлов из веб трафика.
Для того чтобы увидеть, что можно извлечь из текущего дампа нужно перейти в меню File – Export Objects – HTTP.
Появится окно, которое покажет все захваченные http объекты — текстовые файлы, картинки и т.д. Для того чтобы вытащить любой файл из этого списка, достаточно просто выделить его и нажать Save As.

Как можно заметить, рисунок был извлечен без каких-либо проблем.

Таким же способом, можно извлекать и потоковое видео/аудио.

Но на этом возможности Wireshark не заканчиваются!
Он умеет вытаскивать файлы и с протокола FTP.
Для этого можно использовать знакомый уже Follow TCP Stream.
В итоге отобразится только обмен по протоколу FTP, в котором нужно будет найти строку RETR, что собственно и будет означать передачу файла.

Затем опускаемся дальше, находим пакеты уже непосредственно с файлом (FTP-DATA) и опять выбираем Follow TCP Stream, видим содержимое файла, жмем Save As и сохраняем.

VoIP

Wireshark имеет несколько встроенных функций для работы с этой технологией.
Он поддерживает массу голосовых протоколов — SIP, SDP, RTSP, H.323, RTCP, SRTP и другие.
И, конечно же, умеет перехватывать и сохранять голосовой трафик для дальнейшего прослушивания.
Этот функционал как нельзя лучше подойдет для траблшутинга в сетях Voice over IP.
Меню Statistics — Flow Graph покажет наглядную картину, как происходил весь обмен пакетами.

А вообще целое меню Telephony отведено для работы с голосовым трафиком.
Например, Telephony – RTP – Show All Streams покажет подробно, что происходило с RTP, в частности jitter (параметр, который, вероятно, самый важный в голосе), что иногда сразу скажет о наличии проблем.

Нажав на кнопку “Analyze”, можно открыть окно RTP stream Analysis – и, выбрав там поток, можно его даже проиграть, используя кнопку player.
Сначала отроется окно проигрывателя, в котором вначале нужно установить подходящее значение jitter и использовать кнопку decode.

Появится нечто похожее на анализатор спектра, в котором можно отметить требуемый разговор, и после этого кнопка Play станет активной.

Так же существует еще один способ прослушивания голосовых звонков — можно зайти в меню Telephony – VoIP Calls.

Откроется окно со списком совершенных звонков, где опять же можно нажать кнопку player, отменить нужные разговоры флажками и нажать play.
Для того чтобы добиться приемлемого качества звучания, потребуется проиграться со значением поля jitter buffer, меняя его значение.

Небольшое отступление

Некоторое время назад появился сайт CloudShark.org.

Это тот самый сниффер Wireshark, но реализованный в виде онлайн-сервиса. Очевидно, что с его помощью не удастся захватывать сетевой трафик, но выполнять анализ дампа трафика – вполне. Загрузив туда через форму PCAP-файл на анализ, можно будет получить четкую последовательность пакетов, в которой всё данные будут разбиты на понятные поля в зависимости от протокола. В общем, тот же Wireshark, но немного облегченный и доступный из любого браузера.

Финальная битва

Напоследок рассмотрим как выглядит сканирование портов.
Смотрим на дамп и видим, что вначале происходит ARP запрос и затем непосредственно начинается сканирование. Адрес нашего маршрутизатора 192.168.10.11, сканирование идет с адреса 192.168.10.101

Это, так называемое, SYN сканирование, когда идут SYN-пакеты на указанный диапазон портов. Так как большинство портов закрыто, маршрутизатор отвечает пакетами RST, ACK.
Пролистав чуть ниже видим, что открыт telnet (tcp 23).

На это указывает то, что маршрутизатор ответил пакетом SYN, ACK.
К слову, для фильтрации портов в сниффере можно использовать конструкции вида: tcp.srcport, tcp.dstport и tcp.port. Для протокола UDP всё аналогично — udp.srcport, udp.dstport, udp.port.

Итоги

Мы пробежались по самым основным частям функционала лучшего анализатора пакетов.
Получилось несколько сумбурно, вероятно, потому что хотелось затронуть как можно больше его возможностей и не упустить ничего важного.
Оказалось, что анализатор пакетов, как отладчик и дизассемблер, демонстрирует мельчайшие подробности работы сети и сетевых протоколов.
Используя Wireshark и обладая необходимыми знаниями (которые можно почерпнуть изучив серию Сетей для Самых Маленьких на сайте linkmeup.ru) можно достаточно эффективно находить и диагностировать разнообразные проблемы, возникающие в сети.

В процессе написания использовались материалы сайта wiki.wireshark.org
Дампы с трафиком брались из разных источников, больше всего с сайта packetlife.net

  • wireshark
  • сети для самых маленьких
  • Информационная безопасность
  • Системное администрирование
  • Сетевые технологии

Как использовать Wireshark для захвата, фильтрации и проверки пакетов

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

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

Как установить Wireshark

Вы можете скачать Wireshark для Windows или macOS с официального сайта. Если вы используете Linux или другую UNIX-подобную систему, вы, вероятно, найдете Wireshark в его репозиториях пакетов. Например, если вы используете Ubuntu, вы найдете Wireshark в Центре программного обеспечения Ubuntu.

Небольшое предупреждение: многие организации не разрешают использовать Wireshark и аналогичные инструменты в своих сетях. Не используйте этот инструмент на работе, если у вас нет разрешения.

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

Захват пакетов

После загрузки и установки Wireshark вы можете запустить эту программу. В разделе «Захват» вы увидите названия всех доступных сетей (сетевых интерфейсов), рядом с которыми будет график сетевой активности.

Дважды щёлкните имя сетевого интерфейса, чтобы начать захват пакетов на этом интерфейсе. Например, если вы хотите захватить трафик в беспроводной сети, щёлкните свой беспроводной интерфейс. Вы можете настроить расширенные функции, нажав «Захват» → «Опции», но пока в этом нет необходимости.

Как только вы нажмёте на название интерфейса, вы увидите, что пакеты начинают появляться в реальном времени. Wireshark фиксирует каждый пакет, отправленный в вашу систему или из неё.

Если у вас включён неразборчивый режим (он включён по умолчанию), вы также увидите все другие пакеты в сети, а не только пакеты, адресованные вашему сетевому адаптеру. Чтобы проверить, включён ли неразборчивый режим, нажмите «Захват» → «Опции» и убедитесь, что в нижней части этого окна активирован флажок «Включить смешанный режим на всех интерфейсах».

Вы увидите, что даже если вы не выполняете никаких действий, то в сети всё равно непрерывно происходит некая активность.

Нажмите красную кнопку «Остановить захват пакетов» в верхнем левом углу окна, если хотите прекратить захват трафика.

Цветовое кодирование

Вы, вероятно, увидите пакеты, выделенные разными цветами. Wireshark использует цвета, чтобы помочь вам с первого взгляда определить типы трафика. По умолчанию серый цвет соответствует трафику TCP, бирюзовый — трафику UDP, а чёрный цвет обозначает пакеты с ошибками — например, они могли быть доставлены не по порядку.

Чтобы точно увидеть, что означают цветовые коды, нажмите «Просмотр» → «Цветовые правила». Вы также можете настроить и изменить правила раскраски здесь, если хотите.

Образцы захвата

Если в вашей собственной сети нет ничего интересного для проверки, вам поможет вики Wireshark. Вики-сайт содержит страницу с образцами файлов захвата, которые вы можете загрузить и проверить. Щёлкните Файл → Открыть в Wireshark и найдите загруженный файл, чтобы открыть его.

Вы также можете сохранить в файлы свои собственные захваченные сетевые данные в Wireshark и открыть их позже. Щёлкните Файл → Сохранить, чтобы сохранить захваченные пакеты.

Фильтрация пакетов

Если вы пытаетесь проверить что-то конкретное, например трафик, который программа отправляет при звонке домой, лучше закрыть все другие приложения, использующие сеть, чтобы вы могли уменьшить количество трафика, не имеющего отношение к вашему анализу. Тем не менее, вам, вероятно, всё равно придётся просеивать большое количество пакетов. Вот тут-то и пригодятся фильтры Wireshark.

Самый простой способ применить фильтр — ввести его в поле фильтра в верхней части окна и нажать «Применить» (или нажать Enter). Например, введите «dns», и вы увидите только пакеты DNS. Когда вы начнёте вводить текст, Wireshark поможет вам автоматически заполнить фильтр.

Вы также можете нажать Анализ → Дисплейные Фильтры (не очень удачный перевод), чтобы выбрать фильтр из заготовленного списка фильтров по умолчанию, включённых в Wireshark. Отсюда вы можете добавить свои собственные фильтры и сохранить их, чтобы легко получить к ним доступ в будущем.

Приведём несколько примером фильтров Wireshark.

Чтобы увидеть все DNS запросы и ответы:

Фильтр, который показывает только данные, переданные методом POST:

http.request.method == "POST"

Фильтр, который показывает только данные, переданные методом GET:

http.request.method == "GET"

Поиск запросов к определённому сайту (хосту):

http.host == ""

Поиск запросов к определённому сайту по части имени:

http.host contains "здесь.частичное.имя"

Фильтр для вывода HTTP запросов, в которых передавались кукиз:

http.cookie

Запросы, в которых сервер установил кукиз в браузер пользователя.

http.set_cookie

Нужно понимать, что мы не можем искать по содержимому передаваемых зашифрованных данных (по очевидным причинам — данные зашифрованы). То есть сетевой трафик к сайтам по протоколу HTTPS не всегда доступны для анализа.

Поиск сетевых подключений, в которых портом назначения был порт из диапазона 8000-8180:

tcp.dstport>=8000 && tcp.dstport

Показать IPv6 трафик:

ipv6

Для показа ARP трафика:

Показать трафик, источником которого является хост с IP адресом 138.201.81.199:

ip.src == 138.201.81.199

Показать трафик, адресатом которого является хост с IP адресом 138.201.81.199:

ip.dst == 138.201.81.199

Более подробный список смотрите в статье: Фильтры Wireshark

Ещё одна интересная вещь, которую вы можете сделать, — это щёлкнуть пакет правой кнопкой мыши и выбрать Следовать → Поток TCP.

Вы увидите полный TCP-диалог между клиентом и сервером. Вы также можете щёлкнуть другие протоколы в меню Следовать, чтобы просмотреть полные разговоры для других протоколов, если это применимо.

Закройте окно, и вы увидите, что фильтр применён автоматически. Wireshark показывает пакеты, из которых состоит беседа.

Анализ пакетов

Щёлкните пакет, чтобы выбрать его, и вы можете углубиться в его свойства, чтобы досконально просмотреть сведения о нем.

Вы также можете устанавливать фильтры отсюда — просто щёлкните правой кнопкой мыши одну из деталей и используйте подменю «Применить как Фильтр», чтобы создать фильтр на его основе.

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

Вы можете найти ссылки на разнообразные инструкции с Wireshark на русском языке на странице: https://kali.tools/?p=1407

Связанные статьи:

  • Как устранить проблемы с подключением к Интернету (94.6%)
  • Как из-за задержки даже быстрое подключение к Интернету может казаться медленным (94.6%)
  • Как проверить скорость подключения к Интернету или скорость передачи данных по сотовой сети (86.2%)
  • Почему вы, вероятно, не получаете ту скорость Интернета, за которую платите (и как это определить) (86.2%)
  • Что такое спутниковый интернет? (86.2%)
  • Как использовать компьютер из другой комнаты: 5 инструментов, которые вам понадобятся (RANDOM - 50%)

Wireshark фильтр по IP, по порту, по протоколу, по MAC

Любой анализатор протоколов должен иметь возможность не только захватить трафик, но и помочь эффективно его проанализировать

Любой анализатор протоколов должен иметь возможность не только захватить трафик, но и помочь эффективно его проанализировать. Основное отличие коммерческого анализатора протоколов от бесплатного – наличие встроенной экспертной системы, которая позволит быстро разобрать буфер по сервисам или типам ошибок. Что позволит существенно ускорить время локализации проблемы и работать с уже отсортированной и предварительно оцененной для вас информацией. Тут можно обратить внимание на решения от VIAVI Solutions под названием Observer или на ClearSight Analyzer от компании Netscout.

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

  • Цветовая кодировка ошибочных пакетов — можно настроить под себя. Пакеты, которые несут в себе ошибку, будут выделены в буфере специальным цветом.
  • Фильтр через строку фильтрации. Вы имеете большой опыт в работе с Wireshark и протоколами и можете ввести фильтр самостоятельно. Большой выбор фильтров можно найти здесь.
  • Выделение любой области в пакете, правый клик мыши и «Применить как фильтр». Метод для начинающих: очень удобно, так как не надо ломать голову.

Выделение любой области в пакете, правый клик мыши и «Применить как фильтр»

Какие основные фильтры существуют для отображения трафика?

Wireshark фильтр по протоколу

Достаточно в строке фильтра ввести название протокола и нажать ввод. На экране останутся пакеты, которые относятся к искомому протоколу. Таким образом, фильтр выглядит:

 На экране останутся пакеты, которые относятся к искомому протоколу

Если буфер захвата необходимо отфильтровать по нескольким протоколам, то необходимо перечислить все желаемые протоколы и разделить их знаком ||. Например:

arp || http || icmp

Если буфер захвата необходимо отфильтровать по нескольким протоколам, то необходимо перечислить все желаемые протоколы и разделить их знаком ||

Wireshark фильтр по IP адресу и фильтр по MAC

В зависимости от направления трафика фильтр будет немного отличаться. Например, мы хотим отфильтровать по IP адресу отправителя 50.116.24.50:

Например, мы хотим отфильтровать по IP адресу отправителя 50.116.24.50

По получателю фильтр будет выглядеть ip.dst == x.x.x.x, а если хотим увидеть пакеты в независимости от направления трафика, то достаточно ввести:

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

В случае если нам необходимо исключить какой то адрес из поля отбора, то необходимо добавить !=

Если мы анализируем трафик внутри локальной сети и знаем MAC адрес пользователя, то можно указать в качестве фильтра Wireshark его MAC адрес, например:

Wireshark фильтр по номеру порта

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

Так же как и с адресами IP и MAС мы можем отдельно фильтровать по портам получения или отправления tcp.srcport и tcp.dstport. Кроме указания номеров портов Wireshark дает отличную возможность отфильтровать буфер по флагам в TCP протоколе. Например, если мы хотим увидеть TCP пакеты с флагом SYN (установление соединения между устройствами), то вводим в строке поиска:

мы хотим увидеть TCP пакеты с флагом SYN (установление соединения между устройствами)

Популярные фильтры

В таблице ниже приведены наиболее популярные фильтры для отображения содержимого буфера захвата:

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *