Диагностика неисправностей то ещё занятие. Но всякий, кто изучил данную практику, может ничего не бояться. Поиск и устранение требуют глубокие знания, но выработанный навык много стоит. Компания Mikrotik имеет большое количество инструментов диагностики сети (Troubleshooting), как для проводных, так и WiFi. В данной статье рассмотрим наиболее часто используемые для проводных сетей. Конфигурация будет использоваться самая домашняя на RouterOS 6 47.4.
Если вы хотите углубить свои знания по работе с роутерами MikroTik, то наша команда рекомендует пройти курсы которые сделаны на основе MikroTik Certified Network Associate и расширены автором на основе опыта . Подробно читайте ниже.
Содержание
- Torch
- IP Scan
- Cable Test
- Log
- Traceroute
- Ping
- ARP
- Connections
- Passthrough
- Sniffer
- Profile
- Bandwidth Test
- 89 вопросов по настройке MikroTik
Torch позволяет просматривать трафик на интерфейсах в реальном времени.
В качестве примера, я запущу с рабочей станции ping на 8.8.8.8. Скриншот ниже демонстрирует всех, кто отправляет эхо запросы на 8.8.8.8. Для удобства вывода я отключил IPv6. Так же выбрал основной бридж, т.к. мне нужно понять, кто из локальной сети отправляет и нажал Start. Статус Running в скобках, говорит о том, что идёт прослушка трафика.
Теперь давайте взглянем на какой IP адрес роутера, нам отвечает Google, поменяв местами SRC и DST, а также выберем внешний интерфейс.
Из дополнительного, вы можете просмотреть какая метка VLAN бегает внутри кадра.
Вы можете жёстко задать Src. Address. Посмотрим, куда лезет мой телефон, если я открою YouTube.
Открыть данную утилиту можно в контекстном меню любого из интерфейсов. Есть возможность использовать в консольном режиме.
IP Scan
Маленькая утилита, позволит узнать, какая подсеть/подсети или адреса видны на определённых интерфейсах.
Попробуем выяснить, что живёт на провайдером интерфейсе самого крупного оператора нашей страны.
Если вы хотите просканировать определённую подсеть, то можете ее указать в Address Range.
Как только я получил данный адрес, мой порт тут отключился. Позвонив в ТП, меня уверяли, что никаких блокировок на порту нет и т.д. и т.п. Оператор утверждала, что проблема в обрыве кабеля. Давайте проверим кабель.
Cable Test
Да, Mikrotik умеет диагностировать разрыв физической линии с помощью утилиты Cable Test, причём довольно точно. После разговора с оператором, я запустил данную утилиту. Картина интересна, по трём парам 94 метра, а по одной 98, и все они разорваны на одинаковом расстоянии от меня.
Полагаю, что оператор был не прав (оно и очевидно), т.к. мой линк снова загорелся, спустя 5 минут.
Будьте осторожны, подобные ситуации, могут быть и у вас.
Log
Логирование основных действий пишется в ОЗУ и хранится до перезагрузки устройства. Вот тут, помимо засвеченных маков, можно увидеть, что WAN интерфейс поднялся и через 40 секунд отключился основной провайдерский линк.
Вы можете детализировать отображаемую информацию через System – Logging. На примере ниже, я добавил хранение в ОЗУ всех DNS запросов. Лог сразу же стал быстро заполняться и пролистываться.
Для приостановки автопролистывания есть кнопка Freeze, она замораживает автоскролинг.
В Actions, вы можете настроить отправку логов на удалённый Syslog Server, или хранить их локально на диске.
Не сложными манипуляциями возможно сделать debug определённых служб, допустим DHCP.
Берите на вооружение, очень полезная штука.
Traceroute
Tools — Traceroute
Графическая утилита, для определения количества хопов по пути. Фишка ее в том, что она постоянно будет рисовать потери, историю и время до хопа.
Вы можете указать максимальное количество прыжков, исходящий адрес, таблицу маршрутизации, интерфейс и размер пакета.
Ping
Tools — Ping
Простенькая тулза, с дополнительными фишками по аналогии с Traceroute. Позволяет сделать пинг на L2 – ARP-Ping. Для этого нужно выбрать интерфейс. На скриншоте видно стабильное время отклика до моего ноутбука, подключённого через WiFi.
ARP
IP – ARP-List
Таблица ARP адресов доступна на просмотр соответствий. Можно создать постоянную запись соответствия IP к MAC.
Connections
Если ваш роутер, настроен на преобразование адресов, или по-русски, есть хотя бы одно правило NAT, то включается тот самый Connection Tracker. С помощью его фильтров, можно просматривать состояние соединений.
Открываем IP – Firewall – Connections, нажимаем на фильтр:
Я хочу просмотреть все соединения с 192.168.10.51
Тут можно увидеть новые, устоявшиеся и любые другие соединения. В колонке Connection Mark отображается метки пакетов – удобно диагностировать при Dual WAN.
Passthrough
Очень полезная функция, которая ничего не делает.
Допустим, вы хотите заблокировать определённый порт на входящем или проходящем трафике, но переживаете что-то поломать.
Открываем IP – Firewall и создаём правило:
Если входящий трафик с 192.168.10.51 по протоколу ICMP…
… Action – passthrough
Теперь данное правило ставим выше, предполагаемого блокируемого.
Отправляю эхо-запрос и вижу, что счётчик Bytes и Packets – тикнули. Улавливаете?
Т.е. если есть пакет, подходящий под это правило, мы ничего не делаем, ну кроме тика счётчика. Данная штука так же работает и для маркировки (Mangle). Главное двигайте его правильно.
Sniffer
Ещё одна полезная фикция в микротик находится Tools – Packet Sniffer позволяет захватывать и анализировать трафик. Доступны разные фильтры.
Сохранять дамп на диск указав максимальный его размер в File Limit. Memory Limit указывает на объем занимаемый в ОЗУ самого снифера.
Так же увидеть направление пакетов, протокол, размер в Packets. И дополнительную информацию в Connections, Hosts, Protocols.
Есть возможность передачи прослушанного трафика на удалённый сервер. Для этих целей подойдёт Wireshark на вашем ПК или ноутбуке.
Доступен так же в CLI. Можно просмотреть входящий/исходящий трафик по определённым портам, очень удобно при диагностировании блокировки L2TP/IPSEC со стороны провайдера, указав их через запятую. Стрелочки, отображают направление.
Profile
Просмотреть нагрузку на само устройство можно через Profile. У ребят, которые не закрывают DNS снаружи, колонка Usage будет в 100%. Есть возможность фильтрации по ядрам.
Bandwidth Test
Bandwidth Test Клиент-серверная утилита созданная компанией mikrotik, позволяет проверить скорость соединения между устройствами по протоколу UDP (порт 2000). Достаточно сильно нагружает процессор на больших скоростях иди маленьких ЦП. Есть инструмент для скачивания на Windows, а также общедоступные сервера в интернете. Доступен в меню Tools.
Кнопкой enable включаем инструмент. Галочка Authenticate разрешает аутентифицироваться под пользователем RouterOS (System – Users).
Так же есть встроенная версия клиента. Вы можете замерить скорость как по UDP так и по TCP. Выбрать направления (Direction), приём, передача или сразу оба. Задать логин и пароль для аутентификации на уделённой стороне.
В самом низу представлен удобный график. Можете мерить скорости внутри VPN или LAN, между мостами и офисами или промежуточных узлов.
89 вопросов по настройке MikroTik
Вы хорошо разбираетесь в Микротиках? Или впервые недавно столкнулись с этим оборудованием и не знаете, с какой стороны к нему подступиться? В обоих случаях вы найдёте для себя полезную информацию в курсе «Настройка оборудования MikroTik». 162 видеоурока, большая лабораторная работа и 89 вопросов, на каждый из которых вы будете знать ответ. Подробности и доступ к началу курса бесплатно тут.
- Powered by Atlassian Confluence 8.2.2
- Printed by Atlassian Confluence 8.2.2
- Report a bug
- Atlassian News
Atlassian
24.04.2018 — Инструменты Troubleshooting в сети на MikroTik 
Разберем утилиты для troubleshooting в сетях MikroTik, такие как torch, ip scan, romon, bandwidth test и другие.
В данной статье мы поговорим о том, что использовать для troubleshooting в сети на оборудовании MikroTik. Речь пойдет о следующих инструментах:
- Torch
- Ip scan
- Sniffir
- Cable test
- RoMON
- Bandwidth Test
- Traffic Monitor
Наверняка многими из них вы уже пользовались, но я попытаюсь рассказать интересные вещи, которые может смогут вам помочь в работе. Во всяком случае мы, в нашей практике ИТ-аутсорсинга, используем их регулярно
Torch
Этот инструмент используется для мониторинга трафика в реальном времени, как всего трафика, так и через конкретный интерфейс.
Доступен в winbox, cli, webfug. Находится /tool torch.
Также кроме стандартного расположения torch можно открыть через Simple Queue и в настройках интерфейса.
Хочу отметить что torch видит метки DSCP и VLAN ID.
Через CLI у torch есть некоторые дополнительные функции, например запустить его на определеное время командой duration и задать интервал обновления данных командой freeze-frame-interval.
IP SCAN
Следующий очень полезный инструмент, который я всегда использую в своей работе это ip scan.
Находится он /tool ip scan. При помощи его можно быстро просканировать сеть и примерно уяснить что в ней находится. Так же при помощи его можно сразу определить если у нас есть где-то за двоение ip адресов.
Если у микротика указаны DNS сервера по в соответствующем поле будет заполнены и имена. Так же удобно отображается в графе Time(ms) задержка. Так же он доступен и в CLI.
Sniffer
Sniffer – это инструмент, который может захватывать и анализировать пакеты, которые уходят или проходят через маршрутизатор. Находится он /tool sniffer, также от доступен и в CLI. Есть возможность сохранять dump в файл или отправлять на удалённый сервер (например в wireshark), а также просмотра в реальном времени.
На вкладке General
- Memiry Limit – задается какое количество ОЗУ будет доступно снифиру для аботы
- File Name – имя файла дампа
- File Limit – максимальный размер файла дампа.
- Галочки Only Headers – собирать только заголовки.
- memory-scroll — нужно ли переписывать устаревшие данные, когда достигнут предел памяти.
На вкладки Streaming включаем собственно его и указываем сервер на который будет отправляется.
На вкладки Filter задаем параметры фильтрации. После старта можно нажать на кнопку «Packets» и посмотреть результаты.
Cable test
Еще один полезный инструмент в микротике называется cable test. Доступен он в настройках интерфейса, помогает определить расстояние до обрыва таковой есть и длину кабеля
В моем примере я откусил одну пару на расстояние примерно 50 см. Мерит он не идеально +- пару метров.
RoMON
RoMON – утилита для доступа к устройствам через MikroTik находящихся в одном l2 сегменте с пограничным устройством, к которому у нас есть прямой доступ. Находится в /tool RoMON, помогает при удаленном администрировании.
Этот инструмент удобно использовать, когда по каким-либо причинам нам не хочется для настройки новых устройств за роутером использовать CLI (Mac Telnet) а хочется все делать через winbox.
Для использования этой функции нужно ее активировать как на роутере, к которому у нас есть доступ так и на тех (через Mac Telnet) которые находятся за нашем устройством. Включается оно /tool RoMON.
Все дальше подключаемся в winbox к нашему устройству через кнопку «Connect To RoMON» и в списки винбокса появятся все доступные устройства для подключения.
BandwidthTest
- Инструмент позволяющий оценить скорость соединения с удаленным сервером
- Есть в winbox, cli, webfig
- Есть клиент и сервер
- Возможно, использовать в различных скриптах
Есть отдельная утилита под windows. Есть общедоступные сервера которыми можно пользоваться. https://forum.mikrotik.com/viewtopic.php?t=104266
Очень удобно мерить скорость этим инструментом. Стоить также предупредить что если у вас большая скорость подключения и не очень мощное устройство (smips) то при запуске теста можно загрузить CPU на 100% и на время потерять доступ к устройству.
TrafficMonitor
И последний инструмент о котором мы поговорим это Traffic Monitor. Он используется для выполнения консольных скриптов, когда трафик интерфейса пересекает заданный порог. Находится он /tool traffic-monitor.
Его можно сравнить у утилитой «Netwatch» которая по доступности или недоступности определённого хоста выполняет какие-либо действия. Пример одного из применений, можно настроить отправку на почту уведомления если канал будет загружен на 95 % в течении 5 минут, вариантов много и примеров в интернете тоже.
На этом на сегодня все.
Продолажем активно использовать оборудование Mikrotik , данная заметка касается диагностика портов, диагностика кабеля.
/interface ethernet monitor ether1
name: ether1-uplink
status: link-ok
auto-negotiation: done
rate: 100Mbps
full-duplex: yes
tx-flow-control: no
rx-flow-control: no
advertising: 10M-half,10M-full,100M-half,100M-full
link-partner-advertising: 10M-half,10M-full,100M-half,100M-full
Начиная с версии RouterOS V6rc4, появилась возможность определения проблем с кабелем:
/interface ethernet cable-test ether2
name: ether2
status: link-ok
# или
name: ether2
status: no-link
cable-pairs: open:6,open:6,open:6,open:6
В первом случае проблем нет, во втором 4 пары открыты на расстоянии 6 метров от коммутатора.
Более подробно можно посмотреть на станице официальной документации Mikrotik — http://wiki.mikrotik.com/wiki/Manual:Interface/Ethernet
Размещено в разделе Mikrotik
25.02.2015
Мы можем работать, заниматься какими-то другими делами и при этом даже не подозревать, что один из маршрутизаторов Mikrotik Routerboard недоступен.
Рис.1. Схема сети.
Для того, чтобы мы были в курсе дел, напишем скрипт, который будет проверять статус Mikrotik Routerboard и, если какой-то Mikrotik Routerboard недоступен, выдаст звуковое сообщение.
#!/usr/bin/env python
# -*- coding: utf_8 -*-
import time
import subprocess
ip_list = [«192.168.4.1», «192.168.4.2», «10.0.0.25»]
while 1:
for ip in ip_list:
ping = subprocess.call([«ping», «-c 4», ip])
if ping == 0:
print u»Все хорошо»
else:
print u»Маршрутизатор %s не доступен» % (ip)
subprocess.call([«play», «pick2.wav»])
time.sleep(15)
Разберем скрипт:
Импортируем модули:
import time
import subprocess
Создаем список с IP-адресами устройств Mikrotik Routerboard:
ip_list = [«192.168.4.1», «192.168.4.2», «10.0.0.25»]
Запускаем бесконечный цикл:
while 1:
В цикле for заносим по очереди значения IP-адресов из списка ip_list в переменную ip:
for ip in ip_list:
Выполняем команду ping и помещяем результат в ping:
ping = subprocess.call([«ping», «-c 4», ip])
Если действие выполнено успешно, то ping будет равен нулю, если нет — единице.
Выполняем проверку if ping == 0:
Если ping равен нулю, то выводим сообщение: print u»Все хорошо»
Если ping не равен нулю то выводим сообщение: print u»Маршрутизатор %s не доступен» % (ip) и подставляем значение IP-адреса.
Воспроизводим звуковой файл:
subprocess.call([«play», «pick2.wav»])
Чтобы выполнить play pick2.wav для операционной системы ubuntu, нужно выполнить установку программы:
apt-get install sox
Усыпляем скрипт, чтобы мы успели увидеть, какой маршрутизатор недоступен:
time.sleep(15)
Рис.2. Работа скрипта.
На рисунке 2 мы видим, как скрипт проверил связь в первым устройством и вывел сообщение «Все хорошо».
Рис.3. Вывод звукового сигнала.
Маршрутизатор с IP-адресом 10.0.0.25 оказался недоступен, поэтому скрипт вывел соответствующие текстовое и звуковое сообщения.
Евгений Рудченко специально для ASP24.












































