Summary
Neighbor Discovery protocols allow us to find devices compatible with MNDP (MikroTik Neighbor Discovery Protocol), CDP (Cisco Discovery Protocol), or LLDP (Link Layer Discovery Protocol) in the Layer2 broadcast domain. It can be used to map out your network.
Neighbor list
The neighbor list shows all discovered neighbors in the Layer2 broadcast domain. It shows to which interface neighbor is connected, its IP/MAC addresses, and other related parameters. The list is read-only, an example of a neighbor list is provided below:
[admin@MikroTik] /ip neighbor print # INTERFACE ADDRESS MAC-ADDRESS IDENTITY VERSION BOARD 0 ether13 192.168.33.2 00:0C:42:00:38:9F MikroTik 5.99 RB1100AHx2 1 ether11 1.1.1.4 00:0C:42:40:94:25 test-host 5.8 RB1000 2 Local 10.0.11.203 00:02:B9:3E:AD:E0 c2611-r1 Cisco I... 3 Local 10.0.11.47 00:0C:42:84:25:BA 11.47-750 5.7 RB750 4 Local 10.0.11.254 00:0C:42:70:04:83 tsys-sw1 5.8 RB750G 5 Local 10.0.11.202 00:17:5A:90:66:08 c7200 Cisco I...
Sub-menu: /ip neighbor
Property | Description |
---|---|
address (IP) | The highest IP address configured on a discovered device |
address6 (IPv6) | IPv6 address configured on a discovered device |
age (time) | Time interval since last discovery packet |
discovered-by (cdp|lldp|mndp) | Shows the list of protocols the neighbor has been discovered by. The property is available since RouterOS version 7.7. |
board (string) | RouterBoard model. Displayed only to devices with installed RouterOS |
identity (string) | Configured system identity |
interface (string) | Interface name to which discovered device is connected |
interface-name (string) | Interface name on the neighbor device connected to the L2 broadcast domain. Applies to CDP. |
ipv6 (yes | no) | Shows whether the device has IPv6 enabled. |
mac-address (MAC) | Mac address of the remote device. Can be used to connect with mac-telnet. |
platform (string) | Name of the platform. For example «MikroTik», «cisco», etc. |
software-id (string) | RouterOS software ID on a remote device. Applies only to devices installed with RouterOS. |
system-caps (string) | System capabilities reported by the Link-Layer Discovery Protocol (LLDP). |
system-caps-enabled (string) | Enabled system capabilities reported by the Link-Layer Discovery Protocol (LLDP). |
unpack (none|simple|uncompressed-headers|uncompressed-all) | Shows the discovery packet compression type. |
uptime (time) | Uptime of remote device. Shown only to devices installed with RouterOS. |
version (string) | Version number of installed software on a remote device |
Starting from RouterOS v6.45, the number of neighbor entries are limited to (total RAM in megabytes)*16 per interface to avoid memory exhaustion.
Discovery configuration
It is possible to change whether an interface participates in neighbor discovery or not using an Interface list. If the interface is included in the discovery interface list, it will send out basic information about the system and process received discovery packets broadcasted in the Layer2 network. Removing an interface from the interface list will disable both the discovery of neighbors on this interface and also the possibility of discovering this device itself on that interface.
/ip neighbor discovery-settings
Property | Description |
---|---|
discover-interface-list (string; Default: static) | Interface list on which members the discovery protocol will run on |
lldp-med-net-policy-vlan (integer 0..4094; Default: disabled) |
Advertised VLAN ID for LLDP-MED Network Policy TLV. This allows assigning a VLAN ID for LLDP-MED capable devices, such as VoIP phones. The TLV will only be added to interfaces where LLDP-MED capable devices are discovered. Other TLV values are predefined and cannot be changed:
When used together with the bridge interface, the (R/M)STP protocol should be enabled with Additionally, other neighbor discovery protocols (e.g. CDP) should be excluded using |
mode (rx-only | tx-only | tx-and-rx; Default: tx-and-rx) |
Selects the neighbor discovery packet sending and receiving mode. The setting is available since RouterOS version 7.7. |
protocol (cdp | lldp | mndp; Default: cdp,lldp,mndp) | List of used discovery protocols |
Since RouterOS v6.44, neighbor discovery is working on individual slave interfaces. Whenever a master interface (e.g. bonding or bridge) is included in the discovery interface list, all its slave interfaces will automatically participate in neighbor discovery. It is possible to allow neighbor discovery only to some slave interfaces. To do that, include the particular slave interface in the list and make sure that the master interface is not included.
/interface bonding add name=bond1 slaves=ether5,ether6 /interface list add name=only-ether5 /interface list member add interface=ether5 list=only-ether5 /ip neighbor discovery-settings set discover-interface-list=only-ether5
Now the neighbor list shows a master interface and actual slave interface on which a discovery message was received.
[admin@R2] > ip neighbor print # INTERFACE ADDRESS MAC-ADDRESS IDENTITY VERSION BOARD 0 ether5 192.168.88.1 CC:2D:E0:11:22:33 R1 6.45.4 ... CCR1036-8G-2S+ bond1
LLDP
Depending on RouterOS configuration, different type-length-value (TLV) can be sent in the LLDP message, this includes:
- Chassis subtype (MAC address)
- Port subtype (interface name)
- Time To Live
- System name (system identity)
- System description (platform — MikroTik, software version — RouterOS version, hardware name — RouterBoard name)
- Management address (all IP addresses configured on the port)
- System capabilities (enabled system capabilities, e.g. bridge or router)
- LLDP-MED Media Capabilities (list of MED capabilities)
- LLDP-MED Network Policy (assigned VLAN ID for voice traffic)
- Port Extension (Port Extender and Controller Bridge advertisement)
- End of LLDPDU
Зная, что каждый маршрутизатор, при маршрутизации должен уменьшать значение TTL на единицу, и значение TTL которое отдает ОС можно выследить наличие роутеров в сети.
Вот распространенные значения:
TTL Операционная система
54 FreeBSD / BSD
64 Linux
128 Windows
255 Cisco / Solaris
Итак, добавим правило:
/ip firewall mangle add action=add-src-to-address-list chain=prerouting in-interface=ether01 ttl=equal:63 address-list=routers
/ip firewall mangle add action=add-src-to-address-list chain=prerouting in-interface=ether01 ttl=equal:127 address-list=routers
Эти правила ловят пакеты с TTL уменьшенную на единицу и IP источника записывают в address-list(все IP адреса, которые сидят за роутерами автоматом попадут в адрес лист). По аналогии можно создать доп. правила с другими значениями TTL.
Подписаться на новые статьи. |
|
Благодарим за помощь Дмитрия Рахманина @alta_v1sta
2450
Сегодня мы поговорим о настройке MikroTik Neighbor Discovery Protocol (MNDP). Настройки этого протокола находятся в разделе /IP/Neighbors/.
Данное окно через cli:
[admin@MikroTik] > /ip/neighbor/ print Columns: INTERFACE, ADDRESS, MAC-ADDRESS, IDENTITY, VERSION # INTERFACE ADDRESS MAC-ADDRESS IDENTITY VERSION 0 ether1 172.16.120.254 2C:C8:1B:CC:15:56 MikroTik-ISR 7.6 (stable) Oct/17/2022 10:55:40 1 ether1 172.16.150.253 44:1E:A1:86:CB:22 SW03
Здесь у нас всего одна кнопка Discovery Settings, которая и отвечает за полную конфигурацию данного протокола.
Поговорим о самом протоколе.
MirkoTik Neighbor Discovery Protocol – это протокол, который рассылает информацию об оборудовании MikroTik в L2 сегменте. По сути, это аналог Cisco протокола – CDP (Cisco Discovery Protocol) и LLDP (Link Layer Discovery Protocol) – Open Source протокола, который используется на большом количестве оборудования.
Данный протокол необходим для поиска устройств MikroTik в локальной сети. Когда мы открываем Winbox, у нас имеется раздел Neighbors. В данном разделе указаны все устройства на операционной системе RouterOS, находящиеся в L2 сегменте с нами. Мы видим MAC-адрес устройства, его IP адрес, идентификатор (Identity), его версию операционной системы (Version), имя модели (Board) и продолжительность работы (Uptime).
Это может быть использовано для удобства идентификации устройств системным администратором, также возможно нарисовать карту сети с помощью различных систем автоматизации.
Давайте рассмотрим, какие настройки у нас имеются. Нажмем на кнопку Discovery Settings.
Interface – это список interface-list, на которых работает MNDP. Также у нас есть опция установить Not (!), т.е. отрицание. Очень часто настройка MNDP сводится к !WAN, т.е. кроме внешней сети.
Идеальный вариант работы – это, конечно, отключенный MNDP.
Данный протокол работает в широковещательном домене (broadcast) и, в теории, возможна отправка большого количества сообщений MNDP, LLDP, CDP, что приведет к нагрузке процессора и дальнейшего зависания устройства. Особенно этим страдают дешевые устройства, например, hAP AC Lite, hAP lite, hAP mini.
Если у вас большая сеть, т.е. устройств 100 и более, то рекомендуется MNDP настраивать на Management VLAN – на сеть, в которой ничего кроме устройств, систем автоматизации и администраторов быть не может.
LLDP MED Network Policy VLAN – опция добавления номера VLAN в MNDP сообщение, например, для IP-телефонии. Когда IP-телефон получит номер VLAN, он сможет автоматически прописать его в свою конфигурацию. Данная опция появилась с версии RouterOS 6.47.
Protocol – типы протоколов, которые наш MikroTik будет слушать. Данную опцию невозможно закрыть через Firewall.
Mode – выбор режима отправки и получения пакетов обнаружения. По умолчанию tx-and-rx. Данная опция доступна с версии RouterOS 7.7.
Для примера, через cli предположим, что нам нужно указать следующие настройки:
[admin@MikroTik] > /ip/neighbor/discovery-settings/ [admin@MikroTik] /ip/neighbor/discovery-settings> set discover-interface-list=!WAN [admin@MikroTik] /ip/neighbor/discovery-settings> set lldp-med-net-policy-vlan=170 [admin@MikroTik] /ip/neighbor/discovery-settings> set protocol mndp [admin@MikroTik] /ip/neighbor/discovery-settings> print discover-interface-list: !WAN lldp-med-net-policy-vlan: 170 protocol: mndp mode: tx-and-rx
В окне /IP/Neighbors/ мы видим другие устройства, кликнув по которым откроется новое окно с полезной информацией о них и некоторыми инструментами.
Инструменты:
Ping – это отправка ICMP запросов по IP на удаленное устройство.
MAC Ping – это отправка ICMP по MAC-адресу. Работает только с оборудованием на RouterOS.
Telnet – это подключение по telnet с использованием IP адреса, если он разрешен на удаленном устройстве.
MAC Telnet – это подключение по telnet с использованием MAC-адреса. Работает только с оборудованием на RouterOS.
Torch – данная опция позволяет проводить мониторинг трафика, который проходит через интерфейсы MikroTik.
Как уже говорилось ранее, наиболее безопасная работа с MNDP – это его отключение. Компромиссная опция – ни в коем случае не отправлять и не принимать MNDP сообщения с внешнего интерфейса, т. е. указать !WAN или вовсе назначить вещание MNDP только на Management VLAN, т.к. в сети провайдера может быть большое количество CDP, LLDP, MNDP устройств.
Это лишняя информация, которая может быть использована атакующим. Например, вы редко обновляете RouterOS или вовсе не обновляете, чего делать не стоит. Через MNDP протокол на внешнем интерфейсе злоумышленник может узнать версию вашего RouterOS и затем по уязвимостям вашего RouterOS (публичная информация) может быть произведена атака.
Узнать адреса всех микротиков в сети
-
pin
- Сообщения: 51
- Зарегистрирован: 16 авг 2018, 13:46
Wibox->Neighbors обнаруживает микротик N1.
Заходим в N1->IP>neighbors и обнаруживаем микротик N2, который является сервером l2tp для N1.
Соответственного, войдя в микротик N2 я вижу еще 3 микротика: N3,N4,N5 — клиента VPN.
Благодаря маршрутизации я могу подключаться с N1 к N2-N3-N4-N5
А как с N1 обнаружить все доступные микротики?
-
vbsev
- Сообщения: 84
- Зарегистрирован: 19 авг 2018, 09:35
27 сен 2018, 01:00
А зачем? Адреса меняются?
Это если Вы спланируете сеть как в этой статье написано: https://habr.com/post/134892/
и в каждом микротике предусмотрите Management для управления ими, ip адреса будут из одной сети, тогда получится увидеть не только микротики, а все устройства, поддерживающие протокол LLDP
-
pin
- Сообщения: 51
- Зарегистрирован: 16 авг 2018, 13:46
27 сен 2018, 08:41
Дело не в том, что меняются или нет.
Нужен способ обнаруживать «скрытые» микротики, допустим <широковещательный запрос>, в этом роде.
Цель- узнать к каким устройствам я могу достучаться…
-
Kato
- Сообщения: 271
- Зарегистрирован: 17 май 2016, 04:23
- Откуда: Primorye
27 сен 2018, 09:40
Взламывать собираетесь?)
Форум —
Admin
mikrotik
1
1
Есть интерфейс на устройстве, на котором стоит mikrotik и раздает по dhcp адреса ( интернет подключен через GSM через другой интерфейс). Как найти ip mikrotik ?
- Ссылка
← |
telnet открывается, но последний узел перед целевым не знает, куда отправить запрос |
DNS Server Bind9 |
→ |
arp -a | egrep -i "(^4C|^64|^6C|^D4|^E4)"
slowpony ★★★★
()
- Ссылка
tcpdump -i any 'dst port 68'
tcpdump -i any 'src port 67'
slowpony ★★★★
()
- Ссылка
nmap --script broadcast-dhcp-discover
slowpony ★★★★
()
- Ссылка
nmap -sU -p 67 192.168.1.0/24 | grep -B5 -i routerboard
slowpony ★★★★
()
- Ссылка
Winbox по neighbors его увидит.
anonymous
()
- Показать ответ
- Ссылка
Ответ на:
комментарий
от anonymous
Если MAC Server и Neighbours Discovery не выключен на тике.
digitaldark ★
()
- Ссылка
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.
← |
telnet открывается, но последний узел перед целевым не знает, куда отправить запрос |
Admin
DNS Server Bind9 |
→ |
Похожие темы
-
Форум
[Mikrotik] Запрет подмены IP? (2010) -
Форум
DNS по DHCP в Mikrotik (2013) -
Форум
Syslog фильтрация по тегу. [rsyslog][mikrotik] (2012) -
Форум
Обновление прошивки Mikrotik (2018) -
Форум
Mikrotik (2020)
-
Форум
Мониторинг очередей Mikrotik (2017) -
Форум
mikrotik VLAN Hybrid (2016) -
Форум
Gateway в mikrotik (2018) -
Форум
Mikrotik Wi-Fi (2021) -
Форум
proxmox и mikrotik (2016)