Manual:IP/Neighbor discovery

From MikroTik Wiki
Jump to navigation Jump to search

Applies to RouterOS: v5 +


MikroTik Neighbor Discovery protocol (MNDP) and LLDP allows to "find" other devices compatible with MNDP or CDP (Cisco Discovery Protocol) or LLDP in Layer2 broadcast domain.


Sub-menu: /ip neighbor

This sub-menu lists all discovered neighbours in Layer-2 broadcast domain. It shows to which interface neighbour is connected, shows its IP/MAC addresses and several MikroTik related parameters. List is read-only.

Starting from ROS v6.45 amount of neighbour entries are limited to (total RAM in megabytes)*16 per interface to avoid memory exhaustion.

As an example, you can see several RouterBoards and two Cisco routers:

[admin@MikroTik] /ip neighbor> print 
 0 ether13    00:0C:42:00:38:9F MikroTik   5.99       RB1100AHx2
 1 ether11         00:0C:42:40:94:25 test-host  5.8        RB1000   
 2 Local     00:02:B9:3E:AD:E0 c2611-r1   Cisco I...                    
 3 Local      00:0C:42:84:25:BA 11.47-750  5.7        RB750  
 4 Local     00:0C:42:70:04:83 tsys-sw1   5.8        RB750G    
 5 Local     00:17:5A:90:66:08 c7200      Cisco I...


Property Description
address (IP) 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
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 device has IPv6 enabled.
mac-address (MAC) Mac address of 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 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

Discovery configuration

Sub-menu: /ip neighbor discovery-settings

In this menu, it is possible to change the state of the interface whether it participates in neighbor discovery or not. If it does, it will send out basic information about system and process received discovery packets broadcasted in Layer-2 network. List of interfaces is automatically managed by RouterOS. Items in the list cannot be removed nor added. Default settings depend on interface type and current state.

Removing an interface from this menu configuration will disable both the discovery of neighbours on this interface, and also the possibility of discovering this device itself on that interface.

Since RouterOS v6.44 a neighbor discovery is working on individual slave interfaces. Whenever 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

The neighbor list now 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                                      CC:2D:E0:11:22:33 R1         6.45.4 ... CCR1036-8G-2S+


Property Description
discover-interface-list (string; Default: !dynamic) Interface list on which members the discovery protocol will run on


RouterOS sends out:

Chassis subtype (MAC)

  • Port subtype (interface name)
  • TTL
  • System name (system identity)
  • Sys description ({platform} RouterOS {osvers} {boardName})
  • All IP addresses configured on the port

RouterOS accepts and processes:

  • identity (LLDP_TYPE_SYS_NAME)
  • interfaceName (depending on the priority, if one is empty checks the next: LLDP_TYPE_CHASSIS_ID, LLDP_TYPE_PORT_ID, LLDP_TYPE_PORT_DESC)
  • ip4 (first entry of IPv4 LLDP_TYPE_MANAGEMENT_ADDR)
  • ip6 (first entry of IPv6 LLDP_TYPE_MANAGEMENT_ADDR)
  • MAC (Source - 6-11 byte)

[ Top | Back to Content ]