Guida MikroTik
Interfacce, switching e VLANBase

Gestione ARP e MAC address: tabelle, sicurezza e ottimizzazione

Come visualizzare e gestire la tabella ARP e la MAC address table su RouterOS v7: voci statiche, protezione da ARP spoofing e MAC flooding, modalità ARP per interfacce di rete.

ARP (Address Resolution Protocol) mappa indirizzi IP a indirizzi MAC a livello L2/L3. RouterOS mantiene una tabella ARP per ogni interfaccia IP (/ip/arp) e una MAC address table per il bridge (/interface/bridge/host). Capire entrambe è fondamentale per diagnosticare problemi di connettività e implementare misure di sicurezza L2.

Tabella ARP: visualizzazione e gestione

Comandi base per la tabella ARP
# Visualizzare tutte le voci ARP (D=dynamic, S=static, H=DHCP)
/ip/arp print

# Aggiungere voce ARP statica (IP fisso associato a MAC noto)
/ip/arp
add address=192.168.1.100 mac-address=AA:BB:CC:DD:EE:FF     interface=bridge1 comment="Server critico"

# Modificare timeout delle voci dinamiche (default: 30 minuti)
/ip/settings
set arp-timeout=10m

# Svuotare tutte le voci ARP dinamiche (utile per debug)
/ip/arp remove [find dynamic=yes]

Modalità ARP per interfacce

Ogni interfaccia IP può operare in diverse modalità ARP. La scelta ha impatto sia sulle funzionalità che sulla sicurezza:

  • enabled (default): risponde a tutte le ARP, impara dinamicamente i MAC.
  • disabled: nessuna risposta ARP. Il router non è raggiungibile via ARP su quella interfaccia. Usare con voci statiche.
  • reply-only: risponde alle ARP solo per i propri IP, ma NON impara nuovi MAC. Sicuro: il router non aggiorna la sua ARP table da richieste non solicited. Ottimo per interfacce LAN con IP fissi.
  • proxy-arp: risponde a richieste ARP per IP su altre reti, facendo da proxy. Usato in scenari bridging/VPN quando i client di reti diverse devono comunicare direttamente.
  • local-proxy-arp: come proxy-arp ma solo per host nella stessa subnet (utile con DHCP snooping o VPN client isolation).
Impostare modalità ARP su un'interfaccia
# reply-only su interfaccia LAN con IP fissi assegnati
/interface/bridge
set bridge1 arp=reply-only

# proxy-arp per connettere subnet diverse senza routing esplicito
/interface/bridge
set bridge-mgmt arp=proxy-arp

Protezione da MAC flooding e ARP spoofing

Il MAC flooding è un attacco in cui si inviano migliaia di MAC sorgente diversi per riempire la tabella del bridge e forzare il flooding del traffico (trasformando lo switch in hub). L'ARP spoofing manda risposte ARP false per dirottare traffico (MITM). RouterOS offre contromisure native:

Limitare i MAC appresi per porta (anti-MAC flooding)
# Impostare il limite globale di voci MAC sul bridge
/interface/bridge
set bridge1 max-learned-entries=1024

# Per protezione granulare per porta: usare bridge filter rules
# Bloccare i frame da MAC non autorizzati su porte access
/interface/bridge/filter
add chain=input     in-interface=ether2     src-mac-address=!AA:BB:CC:DD:EE:FF/FF:FF:FF:FF:FF:FF     action=drop     comment="Blocca MAC non autorizzato su ether2"
Usare ARP statico + reply-only contro ARP spoofing
# Su una LAN con IP fissi: disabilitare apprendimento dinamico ARP
# e inserire solo voci statiche verificate
/interface/bridge
set bridge1 arp=reply-only

# Aggiungere tutte le voci statiche
/ip/arp
add address=192.168.1.10 mac-address=AA:BB:CC:11:22:33 interface=bridge1
add address=192.168.1.11 mac-address=AA:BB:CC:44:55:66 interface=bridge1

# Verificare: solo voci statiche nella tabella ARP
/ip/arp print where !dynamic

MAC address table del bridge: flag e diagnostica

La tabella MAC del bridge (/interface/bridge/host) usa flag per classificare ogni voce: D (dynamic, appresa dal traffico), L (local, MAC del bridge stesso), E (external, appresa da interfaccia esterna), S (static), X (disabled). Utile per diagnosticare dove si trova un determinato host.

Ricercare un MAC specifico e vedere su quale porta è
# Trovare su quale porta è connesso un dispositivo dato il suo MAC
/interface/bridge/host print where mac-address="AA:BB:CC:DD:EE:FF"

# Tutte le voci dinamiche del bridge su VLAN 10
/interface/bridge/host print where vid=10 and !local

# Aggiungere voce MAC statica per un server critico su VLAN 20
/interface/bridge/host
add bridge=bridge1     interface=ether5     mac-address=AA:BB:CC:DD:EE:FF     vid=20     comment="Server DB - MAC statico"
BEST PRACTICE per WISP: su porte CPE (accesso cliente) abilitare sempre ingress-filtering=yes e bpdu-guard=yes nel bridge, e impostare arp=reply-only sulle interfacce VLAN cliente. Questo previene ARP flooding, BPDU injection e riduce il traffico broadcast non necessario sulla rete di accesso.
ARPMAC addresstabella ARPhost tableproxy-arpreply-onlyARP spoofingMAC floodingsicurezza L2static ARParp-timeout

Configura senza fatica con l'AI

In WispOS l'agente AI genera la configurazione RouterOS dalle tue parole e un tutor ti guida passo passo.

Prova WispOS