Python

MAC address in Python3

In informatica e telecomunicazioni l’indirizzo MAC (in inglese MAC address, dove MAC sta per Media Access Control), detto anche indirizzo fisico, indirizzo ethernet o indirizzo LAN, è un codice di 48 bit (6 byte) assegnato in modo univoco dal produttore ad ogni scheda di rete ethernet o wireless prodotta al mondo, tuttavia modificabile a livello software. Rappresenta in sostanza un identificativo per un particolare dispositivo di rete a livello di rete locale: ad es. due schede di rete in due diversi calcolatori avranno due diversi nomi (e quindi diversi indirizzi MAC), così come avranno nomi diversi una scheda Ethernet ed una scheda wireless posizionate nel medesimo computer.

Può essere utile ad esempio per proteggere i programmi da usi non autorizzati, facendo un controllo dell’indirizzo MAC all’avvio del programma, se esso corrisponde a dei criteri possiamo far andare avanti l’esecuzione del programma, altrimenti verrà interrotta.

Sarà sicuramente utile sapere che con Python possiamo con due righe di codice, ottenere l’indirizzo MAC del computer in uso, salvarlo in una variabile per poi usarlo o stamparlo a video.

import uuid
macAddress = hex(uuid.getnode())
print("MAC address:", macAddress)

Il codice è molto semplice, nella prima riga si importa il modulo uuid che è preposto alla gestione di Identificatori Universalmente Univoci.

Nella seconda riga si definisce una variabile nel quale verrà scritto in esadecimale l’indirizzo MAC della scheda di rete in uso.

La terza ed ultima riga stampa a video l’informazione.

Guarda anche come ottenere gli indirizzo IP pubblico ed IP locale, e come compilare uno script in Python.

Siti di riferimento e fonti

it.wikipedia.org/wiki/Indirizzo_MAC

docs.python.org/3/library/uuid.html