Ogni scheda di rete, sia essa Ethernet o WiFi, consta di un indirizzo MAC (MAC è acronimo di Media Access Control). L’indirizzo MAC è assegnato in modo univoco (non ci sono al mondo due schede con lo stesso identificativo) dal produttore.
È lungo 48 bit (6 byte): i primi tre ottetti (un byte = otto bit) chiariscono qual è il produttore della scheda di rete mentre i successivi tre ottetti sono specifici della singola scheda.
Quando è utile l’indirizzo MAC e come cambiare il MAC address?
Diciamo, innanzi tutto, che il MAC address è importante in diversi frangenti:
1) Il MAC address permette di capire “al volo” i dispositivi connessi via cavo Ethernet o mediante WiFi alla propria rete locale.
Portandosi nel pannello di configurazione del router o dello switch oppure usando strumenti software come Fing e SoftPerfect WiFi Guard (Scoprire chi è collegato alla rete WiFi e gli indirizzi IP dei client) oppure Bitdefender Home Scanner (Come rendere la rete sicura sia in azienda che a casa), si possono identificare istantaneamente i dispositivi collegati.
I software citati oppure lo stesso firmware del router identificano i dispositivi proprio esaminando i primi tre ottetti con cui si presenta la scheda di ciascun dispositivo collegato.
Questo database degli identificativi usati nel MAC address aiuta a capire, osservando i primi tre byte dell’indirizzo MAC, se sia collegato un PC, un notebook, un dispositivo di rete, un stampante di rete, uno smartphone o un altro device mobile.
Ogni dispositivo può avere più schede di rete (è il caso dei notebook dotati sia della porta Ethernet che di un modulo WiFi) e ciascuna di esse userà un MAC address univoco.
2) Il MAC address può essere sfruttato per fare in modo che il router o comunque il server DHCP locale assegnino sempre lo stesso indirizzo IP privato al medesimo dispositivo.
Questa funzionalità, chiamata IP and MAC binding, si rivela particolarmente utile – ad esempio – quando sul dispositivo fosse installato un software server.
Ne abbiamo parlato nell’articolo Assegnare IP statico a PC, dispositivi mobili, stampanti e così via.
3) L’indirizzo MAC può essere anche utilizzato per l’identificazione del dispositivo. Alcune reti pubbliche, per esempio, limitano la possibilità di usare la connessione a 30 minuti (i.e. aeroporti) proprio controllando il MAC address dei client collegati.
Il MAC address può essere utilizzato anche dai gestori delle reti WiFi per consentire la connessione solo da parte dei dispositivi hardware conosciuti. Si tratta però di una misura di sicurezza che lascia il tempo che trova perché è piuttosto facile stabilire quali dispositivi si stanno collegando a una rete WiFi, anche protetta, e carpire il loro MAC address (vedere Indirizzo MAC (Wi-Fi e Ethernet): cos’è e come trovarlo e Craccare reti WiFi: accedere alle reti WiFi protette).
4) Alcune società usano il MAC address anche per tracciare gli spostamenti degli utenti. Un’azienda britannica chiamata Renew London utilizzare reti WiFi aperte sparse per la città per indurre i terminali degli utenti a connettersi e a condividere così il loro MAC address.
Registrando le connessioni sui vari punti strategici distribuiti in città, è possibile calcolare i percorsi lungo i quali si muovono di più i cittadini.
Da noi non è possibile realizzare nulla di simile, almeno a stretto rigore, perché il Garante Privacy ha valutato il MAC address dato personale: MAC address è dato personale: Garante sanziona un ateneo.
Come cambiare MAC address in Windows
Diciamo, innanzi tutto, che per scoprire i MAC address delle proprie schede di rete, basta aprire il prompt dei comandi di Windows (cmd
) e digitare quanto segue:
Il MAC address sarà subito visibile accanto alle voci Indirizzo fisico, in corrispondenza delle schede Ethernet e WiFi.
Nel caso delle interfacce virtuali (come quelle installate dai software per la virtualizzazione) il corrispondente indirizzo fisico è solitamente impostato a zero o generato in maniera casuale (a parte il primo ottetto che corrisponde alla società sviluppatrice della soluzione in grado di gestire macchine virtuali).
In alternativa, sempre al prompt di Windows, è possibile usare il comando seguente che estrae automaticamente tutti i MAC address delle schede di rete in uso:
Per cambiare MAC address in Windows basta premere la combinazione di tasti Windows+R
, digitare devmgmt.msc
e premere Invio.
Alla comparsa della finestra Gestione dispositivi, si dovrà accedere al contenuto della sezione Schede di rete: qui si troveranno sia le schede Ethernet che quelle WiFi.
Cliccando due volte sul dispositivo di rete del quale si vuole cambiare il MAC address, basterà portarsi nella scheda Avanzate, scegliere Indirizzo di rete oppure Indirizzo amministrato localmente, selezionare il campo Valore e digitare l’indirizzo MAC che si vuole assegnare alla scheda di rete (sostituendolo a quello impostato dal produttore).
Il MAC address che si inserisce nel campo Valore deve essere espresso in maniera completa, senza usare i due punti, spazi o trattini.
La modifica del MAC address non sarà definitiva, ovviamente: non sarà cioè assolutamente alterato l’indirizzo MAC memorizzato in hardware sulla singola scheda di rete. Per annullare la modifica basterà tornare nella finestra Gestione dispositivi e scegliere l’opzione Non presente.
Cambiare MAC address in Linux e macOS
Oltre che dall’interfaccia grafica, è possibile cambiare MAC address in Linux e macOS utilizzando i seguenti comandi dalla finestra del terminale:
sudo ifconfig eth0 down
sudo ifconfig eth0 hw ether xx:xx:xx:xx:xx:xx
sudo ifconfig eth0 up
Al posto di eth0
dovrà essere indicato l’identificativo dell’interfaccia di rete per la quale si desidera modificare il MAC address.
Va tenuto presente che riavviando il sistema Linux, la modifica relativa al MAC address verrà persa. Per far sì che ciò non avvenga, è sufficiente apportare le opportune variazioni nel file /etc/network/interfaces.d/
o nel file /etc/network/interfaces
.
Modificare il MAC address in macOS
Anche sui sistemi macOS, è sufficiente aprire il terminale del sistema operativo quindi digitare il comando seguente:
Anche qui en0
dovrà essere opportunamente rimpiazzato con il nome dell’interfaccia di rete.