ETHERNET E LAN • GUIDA 10

MAC address e tabella MAC dello switch

Uno switch Ethernet deve capire su quale porta si trova ogni dispositivo. Per farlo osserva i MAC address, costruisce una tabella interna e decide se inoltrare, replicare o scartare un frame.

Quando colleghiamo diversi dispositivi a uno switch, quest’ultimo non conosce immediatamente la posizione di ogni computer, NAS o access point.

Deve impararla.

Lo fa osservando gli indirizzi MAC presenti nei frame Ethernet che riceve.

💡 In poche parole La tabella MAC permette allo switch di associare un MAC address alla porta Ethernet dalla quale quel dispositivo è stato visto.

📍 Cos’è un MAC address?

Il MAC address è un identificatore utilizzato a livello Ethernet per distinguere le interfacce di rete.

Viene normalmente rappresentato come una sequenza esadecimale, ad esempio:

00:1A:2B:3C:4D:5E

Ogni frame Ethernet contiene informazioni relative al MAC sorgente e al MAC di destinazione.

MAC destinazione Dove deve arrivare
MAC sorgente Da chi proviene
Dati Informazioni trasportate dal frame

MAC address e indirizzo IP sono la stessa cosa?

No.

L’indirizzo IP e il MAC address operano in contesti differenti.

MAC address Indirizzo IP
Usato nella comunicazione Ethernet locale Usato per la comunicazione a livello IP
Associato all’interfaccia di rete Associato alla configurazione IP
Utilizzato dagli switch Layer 2 Utilizzato dai router per il routing
Esempio: 00:1A:2B:3C:4D:5E Esempio: 192.168.1.20

🧠 Come impara uno switch i MAC address?

Il processo è molto interessante perché lo switch non deve conoscere in anticipo la configurazione dei dispositivi.

Impara osservando il traffico reale.

1
Arriva un frame sulla porta 1

Il PC invia un frame Ethernet allo switch.

2
Lo switch legge il MAC sorgente

Supponiamo che sia AA:AA:AA:AA:AA:AA.

3
Associa quel MAC alla porta 1

La tabella interna registra che quel dispositivo è raggiungibile attraverso quella porta.

4
Ripete il processo con gli altri dispositivi

Lo switch costruisce progressivamente una mappa della LAN.

Esempio di tabella MAC

Switch dopo aver appreso tre dispositivi
SWITCH ETHERNET
Porta 1 AA:AA:AA:AA:AA:AA
Porta 2 BB:BB:BB:BB:BB:BB
Porta 3 CC:CC:CC:CC:CC:CC
MAC address Porta
AA:AA:AA:AA:AA:AA 1
BB:BB:BB:BB:BB:BB 2
CC:CC:CC:CC:CC:CC 3

🔀 Cosa succede quando il MAC di destinazione è noto?

Supponiamo che il PC sulla porta 1 voglia inviare un frame al NAS sulla porta 2.

Lo switch legge il MAC di destinazione, consulta la propria tabella e scopre che quel MAC è associato alla porta 2.

Può quindi inoltrare il frame verso quella porta.

Forwarding Quando lo switch conosce la porta associata al MAC di destinazione, può inoltrare il traffico in modo selettivo.

Cosa succede se il MAC non è conosciuto?

Immaginiamo invece che il destinatario non sia ancora presente nella tabella MAC.

Lo switch non sa su quale porta si trovi.

In questo caso può effettuare unknown unicast flooding: inoltra il frame verso le altre porte appropriate dello stesso dominio Layer 2, eccetto normalmente quella da cui il frame è arrivato.

Quando il destinatario genera traffico di risposta, lo switch può impararne il MAC address.

Flooding non significa hub

È importante non confondere questo comportamento con quello di un vecchio hub.

Lo switch effettua flooding solo quando necessario, ad esempio quando non conosce ancora una destinazione.

Una volta appresa, può inoltrare i frame direttamente alla porta corretta.

📢 Cosa succede con un broadcast?

Alcuni frame Ethernet sono destinati a tutti i dispositivi del dominio broadcast.

In questo caso il MAC di destinazione può essere:

FF:FF:FF:FF:FF:FF

Lo switch inoltra il broadcast verso le porte appropriate della VLAN, escludendo normalmente quella di ingresso.

Da ricordare Unicast sconosciuto e broadcast possono entrambi essere inoltrati su più porte, ma per motivi differenti.

Cos’è l’aging della tabella MAC?

Le associazioni dinamiche tra MAC e porte non devono rimanere necessariamente per sempre.

Un dispositivo può essere:

  • scollegato;
  • spostato;
  • collegato a un’altra porta;
  • raggiunto tramite un altro switch.

Per questo gli switch utilizzano normalmente un meccanismo di aging.

Se una voce non viene utilizzata per un certo periodo, può essere rimossa dalla tabella.

Cosa succede se sposto un PC su un’altra porta?

Lo switch può imparare la nuova posizione quando vede un frame proveniente dal MAC del PC sulla nuova porta.

La tabella viene quindi aggiornata.

Questo permette alla rete di adattarsi dinamicamente ai cambiamenti.

La tabella MAC contiene solo dispositivi direttamente collegati?

No.

Questo è un punto molto importante.

Supponiamo che alla porta 8 dello switch principale sia collegato un secondo switch.

Dietro quello switch ci sono:

  • PC;
  • NAS;
  • TV;
  • access point.

Lo switch principale può imparare tutti quei MAC address associandoli alla stessa porta 8, perché quella è la direzione da cui li vede arrivare.

MAC Porta sullo switch principale
PC 8
NAS 8
TV 8
Access Point 8
Concetto chiave Una singola porta dello switch può essere associata a moltissimi MAC address se dietro quella porta si trova un altro switch, un access point o un’infrastruttura più ampia.

Access point Wi-Fi e MAC address

Un access point può collegare alla LAN Ethernet molti client wireless.

Dal punto di vista dello switch cablato, più MAC address possono quindi essere raggiungibili attraverso la porta a cui è collegato l’access point.

Il comportamento preciso dipende comunque dalla modalità operativa e dall’architettura del sistema wireless.

🛠️ Static MAC e Dynamic MAC

Negli switch gestibili possiamo trovare differenze tra voci MAC dinamiche e configurazioni statiche.

Le voci dinamiche vengono normalmente apprese automaticamente.

Una voce statica, invece, può essere configurata manualmente in determinati scenari.

Cosa significa CAM table?

In alcuni contesti la tabella utilizzata per il forwarding Layer 2 viene chiamata anche CAM table.

Il termine può comparire soprattutto nella documentazione di apparati e corsi di networking.

Nel contesto pratico di questa guida, possiamo pensarla come alla tabella che associa MAC address e porte dello switch.

Quanto può essere grande una tabella MAC?

Dipende dal modello dello switch.

Nelle specifiche potremmo trovare valori come:

  • 2K MAC addresses;
  • 4K;
  • 8K;
  • 16K;
  • molti di più sugli apparati enterprise.

Per una normale rete domestica anche tabelle relativamente piccole sono generalmente più che sufficienti.

Cosa succede se la tabella si riempie?

Il comportamento dipende dal dispositivo e dalla sua implementazione.

Se lo switch non riesce a memorizzare una nuova associazione, può dover trattare quel traffico come destinazione sconosciuta, con maggior flooding.

Questo è uno scenario molto diverso da quello di una normale LAN domestica, ma è importante per comprendere perché la capacità della tabella compare tra le specifiche degli switch.

La tabella MAC può aiutare nella diagnostica?

Sì, soprattutto sugli switch managed.

Consultandola possiamo capire:

  • su quale porta è stato appreso un dispositivo;
  • se un MAC compare sulla porta prevista;
  • quanti dispositivi sono raggiungibili tramite un uplink;
  • se un apparato sembra spostarsi tra porte;
  • quale VLAN contiene una determinata voce, se lo switch mostra questa informazione.
⚠️ MAC address non significa necessariamente “un dispositivo fisico” Un computer può avere più interfacce, macchine virtuali e altri elementi capaci di utilizzare MAC differenti. Non bisogna quindi assumere sempre una corrispondenza uno-a-uno tra MAC e apparecchio fisico.

MAC address e VLAN

Quando utilizziamo uno switch con VLAN, la tabella MAC deve essere interpretata anche nel contesto della segmentazione Layer 2.

Lo stesso switch può gestire più domini logici separati.

Le VLAN verranno approfondite nelle Guide 13 e 14.

Riassumiamo il processo completo

1
Ricezione

Lo switch riceve un frame Ethernet.

2
Learning

Impara o aggiorna l’associazione tra MAC sorgente e porta di ingresso.

3
Lookup

Controlla il MAC di destinazione nella propria tabella.

4
Forwarding o flooding

Se conosce la destinazione, inoltra verso la porta corretta. Se non la conosce, può effettuare flooding nel dominio appropriato.

🧠 Cosa devi ricordare

  • Lo switch utilizza i MAC address per il forwarding Layer 2.
  • Impara i MAC osservando l’indirizzo sorgente dei frame ricevuti.
  • La tabella associa MAC address e porte Ethernet.
  • Se la destinazione è conosciuta, il frame viene inoltrato verso la porta appropriata.
  • Se una destinazione unicast non è conosciuta, può avvenire flooding.
  • I broadcast vengono propagati nel relativo dominio Layer 2.
  • Le voci dinamiche possono essere rimosse tramite aging.
  • Una porta può avere associati più MAC address.
  • MAC address e indirizzo IP non sono la stessa cosa.
  • Sugli switch managed la tabella MAC è utile anche per la diagnostica.

Domande frequenti

Cos’è la tabella MAC di uno switch?

È una tabella che associa gli indirizzi MAC alle porte attraverso cui sono raggiungibili.

Come impara lo switch un MAC address?

Osserva il MAC sorgente dei frame ricevuti e lo associa alla porta da cui sono arrivati.

Cosa succede se lo switch non conosce il MAC di destinazione?

Può effettuare unknown unicast flooding, inoltrando il frame verso le altre porte appropriate del relativo dominio Layer 2.

Cos’è l’aging della tabella MAC?

È il meccanismo con cui le associazioni dinamiche non più utilizzate vengono rimosse dopo un determinato periodo.

Una porta può avere più MAC address?

Sì. Succede normalmente quando dietro quella porta è collegato un altro switch o un’infrastruttura con più dispositivi.

MAC address e IP sono uguali?

No. Il MAC viene utilizzato per la comunicazione Ethernet Layer 2, mentre l’indirizzo IP appartiene al livello di rete.

Cos’è FF:FF:FF:FF:FF:FF?

È il MAC address di broadcast Ethernet, utilizzato per frame destinati a tutti gli host del relativo dominio broadcast.

Posso vedere la MAC table del mio switch?

Se utilizzi uno switch managed o smart che offre questa funzione, normalmente sì tramite interfaccia di gestione o CLI.