MikroTik Tutorial: show mac address table

MikroTik Tutorial: show mac address table

Here are the commands to show the mac address table on a MikroTik Router. In addition to using the command line to show the mac address table, this tutorial I will also show you how to search for a specific MAC address and filter the table to show mac addresses learned through a specific port. There are actually several commands that you should know, depending on how your router is configured.

The two types of configuration are software switching (using bridge interfaces) and hardware switching. You can actually have a valid configuration that uses both. And in this scenario, separate mac address tables are maintained.

CLI command to show mac table

interface bridge host print
  Flags: X - disabled, I - invalid, D - dynamic, L - local, E - external 
   #       MAC-ADDRESS        VID ON-INTERFACE      BRIDGE     AGE                 
   0   DL  D4:CA:XX:XX:XX:F6      bridge            bridge
   1   DL  EE:8A:XX:XX:XX:2A      loopback0         loopback0 
   2   D   00:08:XX:XX:XX:A0      ether10           MGMT_br... 3m31s               
   3   D   00:0C:XX:XX:XX:E3      ether10           MGMT_br... 0s                  
...
  12   D   80:2A:XX:XX:XX:6E      ether10           MGMT_br... 21s                 
  13   D   80:2A:XX:XX:XX:03      ether10           MGMT_br... 12s                 
  14   D   B4:FB:XX:XX:XX:85      ether10           MGMT_br... 35s                 
  15   D   B4:FB:XX:XX:XX:51      ether10           MGMT_br... 35s                 
  16   DL  D4:CA:XX:XX:XX:F7      MGMT_bridge       MGMT_br...
  17   D   F0:9F:XX:XX:XX:59      ether10           MGMT_br... 34s                 
  18   D   F0:9F:XX:XX:XX:10      ether10           MGMT_br... 8s                  

This command will print the contents of the mac address table for all bridges. If you have multiple bridge interfaces and want to narrow down the list to a specific bridge, here is the command.

List mac address table for a specific bridge interface

interface bridge host print where bridge=bridge1

where bridge1 is the name of your bridge interface.

Find mac addresses learned through a specific port

interface bridge host print where on-interface=ether10

This will find all mac addresses learned through ether10 across all mac address tables. If you want to target a specific bridge you will use the following command.

Find mac addresses learned through a specific port on a specific bridge

interface bridge host print where on-interface=ether10 bridge=bridge1

Filter out local mac addresses

The results so far will also include the local mac addresses of the bridge interface annotated with the L flag. If you want exclude these local mac addresses from the list just append local=no.

interface bridge host print where local=no

Search for a specific MAC address in the table

interface bridge host print where mac-address=44:D9:E7:36:E1:67

Search for all mac addresses with a specific OUI prefix

interface bridge host print where mac-address~44:D9:E7

show mac address table for hardware switching

interface ethernet switch host print
Flags: D - dynamic, I - invalid 
   #   SWITCH                              MAC-ADDRESS       PORTS                              TIMEOUT DROP MIRROR VLAN-ID
   0 D switch1                             00:A0:XX:XX:XX:D7 switch1-cpu                        3m30s   no   no           1
   1 D switch1                             6C:C2:XX:XX:XX:EA switch1-cpu                        3m30s   no   no           1
   2 D switch1                             84:2B:XX:XX:XX:50 switch1-cpu                        3m30s   no   no           1
   3 D switch1                             D4:CA:XX:XX:XX:59 switch1-cpu                        3m      no   no           1
   4 D switch1                             2C:C5:XX:XX:XX:94 switch1-cpu                        3m      no   no           1
...
  15 D switch1                             70:56:XX:XX:XX:B1 switch1-cpu                        3m30s   no   no           1
  16 D switch1                             E4:8D:XX:XX:XX:67 ether2                             3m30s   no   no           1
  17 D switch1                             C0:EA:XX:XX:XX:BC ether1                             3m30s   no   no           1

Find mac addresses learned from an interface

List all mac addresses learned from ether1

/interface ethernet switch host print where ports=ether1

Search switch mac table for a specific mac address

 /interface ethernet switch host print where mac-address=DC:A4:CA:A3:18:21

I hope you have enjoyed this tutorial about how to query the mac address table from the RouterOS command line. Did I miss something? Leave a comment below and checkout my other MikroTik Tutorials.


pictory

This site uses Akismet to reduce spam. Learn how your comment data is processed.

Ads Blocker Image Powered by Code Help Pro

πŸ™πŸ™A Humble Request to Disable AdBlock πŸ™πŸ™

You can close this message & continue reading but...
❀️❀️❀️ Please consider visiting one of my sponsors first ❀️❀️❀️

DigitalOcean πŸš€

Sign up and get a $200, 60-day credit to try DO.
Spend $25 after your credit expires and I will also get $25 in credit!
DigitalOcean Referral Badge

Pictory πŸ€–

Create amazing videos using Pictorys AI powered software.
Its FREE to create your first 3 video projects
pictory


Hi Reader, I noticed that you are using an ad blocker while visiting my website. While I completely understand that excessive ads can hinder your browsing experience, ad revenue helps pay for the cost associated with operating this website.

jcutrer.com is a labor of love, created with the primary aim to provide you with quality content, free of cost. It’s a space where I share information, ideas, and insights that I hope have a meaningful impact. However, maintaining and updating this platform incurs substantial costs.

Sincerely,
Jonathan