Зв’язка Mikrotik + Wireshark або налаштування всевидючого ока

packet_code

Бувають випадки, коли в локальній мережі ми стикаємося з так званими аномаліями, коли щось працює не так, як має. Іноді можна позбутися малої кров’ю, перезавантаживши, наприклад, глючний пристрій, але буває і так, що потрібен глибший аналіз. Якраз для таких ситуацій нам знадобиться пакетний сніффер. Програм-сніферів є безліч, на смак і колір, як кажуть… Але я волію користуватися Wireshark. Іноді на Linux використовую tcpdump, але не про нього йдеться сьогодні. Отже, уявімо, що у нас в мережі якась проблема і ми вирішили докопатися до суті. Запускаємо Wireshark і трохи його налаштуємо.

wireshark_settings

По-перше, вибираємо інтерфейс, який дивиться в локальну мережу, в моєму випадку це Ethernet5, і далі найцікавіше. У полі фільтрів вказуємо udp port 37008. Якщо ми не вкажемо цей фільтр, то нам прилетить весь трафік нашого широкомовного домену, а цього не потрібно. Розберемося, що це за фільтр та порт – 37008? MikroTik відправляє UDP пакети (трафік, який ми знімемо) саме на цей порт streaming сервера, а стрімінг сервером у нас виступає комп’ютер з Wireshark. Ці пакети інкапсулюються за протоколом TZSP (TaZmen Sniffer Protocol), який використовується для перенесення інших протоколів. Тому, ставимо такі налаштування і тиснемо Enter. Тепер переходимо до роутера Mikrotik. Підключаємося через Winbox та вибираємо Tools – Packet Sniffer

На вкладці General можна залишити все як є. Переходимо у вкладку Streaming

Тут обов’язково ставимо галку Streaming Enabled, у полі Server вказуємо IP-адресу комп’ютера, на якому запущено Wireshark, а в полі порт у нас вже вказано той самий 37008, який ми прописували у фільтрах Wireshark. Якщо поставити галку Filter Stream, можемо вказувати різні фільтри. Ставимо галку та поїхали у вкладку Filter.

Тут ми можемо вказати інтерфейс, з якого зніматимемо трафік, МАС, IP, протокол і так далі. У полі Direction вибираємо напрямок трафіку: rx/tx або будь-який. І напевно найважливіший параметр Filter operation, який має лише два параметри: and і or. При виборі or фільтрація буде відбуватися при збігу у пакета будь-якого з полів фільтра, якщо вказати and, то будуть виловлені всі пакети, які жорстко відповідають усім зазначеним полям у фільтрі. Логіка проста: любо все(and), любо будь-що(or).

Після внесення всіх необхідних значень, тиснемо Apply та Start. Якщо все зробили правильно, до нашого Wireshark полетить відфільтрований трафік

Далі можемо його фільтрувати засобами самого Wireshark або вже “на око” визначити проблему.