Chaque appareil com­pa­tible réseau possède au moins un iden­ti­fiant matériel unique au monde : l’adresse Media Access Control (adresse MAC en abrégé). Nous ex­pli­quons ci-dessous de quoi il s’agit et comment trouver ou réécrire l’adresse MAC.

Qu’est-ce qu’une adresse MAC ?

Chaque appareil qui doit être intégré dans un réseau in­for­ma­tique a besoin d’un adap­ta­teur réseau. Cet adap­ta­teur reçoit du fabricant un numéro d’iden­ti­fi­ca­tion unique au monde, l’adresse MAC. Cela permet d’iden­ti­fier des appareils tels que les or­di­na­teurs de bureau, les tablettes ou les té­lé­phones mobiles dans le réseau et de les adresser selon les besoins. Si un appareil dispose de plusieurs adap­ta­teurs réseau (par exemple pour plusieurs con­nexions LAN ou dif­fé­rents standards de com­mu­ni­ca­tion tels que Ethernet, WLAN, FDDI, Bluetooth ou Token Ring), une adresse dif­fé­rente est dis­po­nible pour chaque standard.

Dé­fi­ni­tion

L’adresse MAC (raccourci pour Media Access Control Adresse) désigne l’adresse ma­té­rielle unique au monde d’un seul adap­ta­teur réseau. Cette adresse physique est utilisée pour iden­ti­fier un appareil dans les réseaux in­for­ma­tiques

Dans la mesure où les adresses MAC sont at­tri­buées di­rec­te­ment par le fabricant du matériel, elles sont également appelées adresses ma­té­rielles. Sous Microsoft Windows, l’adresse MAC est appelée adresse physique. Selon le standard de com­mu­ni­ca­tion, Apple utilise les termes Ethernet ID, Airport ID ou adresse Wi-Fi. Le terme adresse d’appareil, d’autre part, est flou car un appareil peut avoir plusieurs adap­ta­teurs réseau et donc dif­fé­rentes adresses MAC.

L’adresse MAC en pratique

Des adresses MAC co­hé­rentes cons­ti­tuent la base d’une com­mu­ni­ca­tion réseau sans erreur.

La trans­mis­sion de données dans les réseaux in­for­ma­tiques est un processus de com­mu­ni­ca­tion complexe dans lequel dif­fé­rentes exigences de fiabilité, de sécurité et d’ef­fi­ca­cité doivent être sa­tis­faites. Ceci peut être clai­re­ment illustré à l’aide du modèle OSI (abré­via­tion d’Open Systems In­ter­con­nec­tion), le modèle de référence développé par l’ISO (In­ter­na­tio­nal Or­ga­ni­za­tion for Stan­dar­di­za­tion) qui car­to­gra­phie la com­mu­ni­ca­tion réseau sur 7 couches. Lors de la trans­mis­sion des données, chaque couche du modèle OSI est transmise à la fois du côté émetteur et du côté récepteur.

Les adresses MAC sont utilisées sur la couche de sécurité de couche 2 du modèle OSI, en par­ti­cu­lier sur la sous-couche de contrôle d’accès aux médias (Media Access Control) in­tro­duite par l’Institute of Elec­tri­cal and Elec­tro­nics Engineers (IEEE).

Note

Dans l’extension du modèle OSI conçu par l’IEEE, la couche de liaison (Layer2) est divisée en sous-couches Media Access Control (2a) et Logical Link Control (2b).

La couche de liaison est située entre la couche physique (couche 1) et la couche de com­mu­ta­tion (couche 3). Tandis que la couche physique fournit les pro­to­coles et les outils res­pon­sables du maintien de la liaison physique, les pro­to­coles de la couche de liaison con­trô­lent la façon dont les dif­fé­rents systèmes partagent le support de trans­mis­sion dis­po­nible. Les con­nexions système sé­cu­ri­sées sont extraites de la connexion physique. La trans­mis­sion effective des paquets de données s’effectue au niveau de com­mu­ta­tion via IP.

Si, par exemple, vous souhaitez envoyer un paquet IP dans l’Ethernet, votre or­di­na­teur transmet une trame de données qui est adressée à l’adresse MAC de l’or­di­na­teur cible selon le modèle OSI sur la couche de sécurité.

Note

Si l’or­di­na­teur cible n’est pas dans le réseau local, un routeur est adressé et chargé de le trans­mettre à Internet. Les routeurs qui sont connectés à un réseau local ont également une adresse MAC unique.

Une trame de données Ethernet contient diverses in­for­ma­tions qui sont lues aux dif­fé­rents niveaux du modèle OSI.

Les trames de données dans les réseaux IPv4 con­tien­nent les com­po­sants suivants :

  • Adresse cible (les adresses MAC de l’or­di­na­teur cible)
  • Adresse source (l’adresse MAC de l’ex­pé­di­teur)
  • In­for­ma­tions de contrôle pour le contrôle du flux de données
  • Données utiles (le paquet de données à trans­mettre ul­té­rieu­re­ment sur la couche de com­mu­ta­tion)
  • Sommes de contrôle qui ga­ran­tis­sent l’intégrité des données

Un or­di­na­teur cible qui reçoit une trame de données la lit d’abord sur la couche de liaison et compare l’adresse cible de la trame avec sa propre adresse MAC. Si les adresses cor­res­pon­dent, l’or­di­na­teur cible commence à in­ter­pré­ter la trame au niveau supérieur suivant.

Note

Les pé­ri­phé­riques réseau utilisés uni­que­ment pour trans­mettre des paquets de données (répéteurs) ou pour gérer des parties du réseau (ponts et com­mu­ta­teurs) ne par­ti­ci­pent gé­né­ra­le­ment pas ac­ti­ve­ment à la com­mu­ni­ca­tion réseau et n’ont donc pas besoin de leur propre adresse MAC.

Afin de lier l’at­tri­bu­tion d’adresse sur la couche de liaison à l’at­tri­bu­tion d’adresse sur la couche d’échange, on utilise l’address re­so­lu­tion protocol (ARP) dans des réseaux IPv4. Chaque or­di­na­teur du réseau local maintient une table ARP dans laquelle les adresses IP sont at­tri­buées aux adresses MAC.

Conseil

ARP est vul­né­rable à un modèle d’attaque appelé ARP-Spoofing. Nous ex­pli­quons les dangers de l’usur­pa­tion d’identité ARP et les contre-mesures dans l’article suivant lié au sujet.

La nouvelle norme du protocole Internet IPv6 utilise au lieu de l’ARP la norme Neighbor Discovery Protocol (NDP).

La syntaxe d’une adresse MAC

Les adresses MAC dans les réseaux LAN ou WLAN se composent de 6 octets (48 bits) et sont écrites en notation hexa­dé­ci­male. L’uti­li­sa­tion de sé­pa­ra­teurs tels que des tirets ou des deux points entre deux octets favorise la li­si­bi­lité.

L’exemple suivant montre l’adresse MAC d’un or­di­na­teur de bureau en re­pré­sen­ta­tion binaire et hexa­dé­ci­male :

00110101 01101000 10110100 00000010 00010011 10011000
AC-16-2D-02-C8-19
Note

Dans notre exemple, nous utilisons la re­pré­sen­ta­tion canonique de la séquence de bits. Ceci cor­res­pond à l’ordre dans lequel les adresses MAC sont trans­mises dans l’Ethernet. D’autres normes de com­mu­ni­ca­tion telles que Token Ring per­met­tent la trans­mis­sion inversée par bit, en com­men­çant par le bit le plus sig­ni­fi­ca­tif.

La séquence de bits de chaque adresse MAC est divisée en 4 zones, chacune codant des in­for­ma­tions dif­fé­rentes.

  • Bit 1 (Récepteur) : le 1er bit de l’adresse MAC indique s’il s’agit d’une adresse unique ou de groupe. Ce bit est appelé I/G (abré­via­tion de In­di­vi­dual/Group). Si I/G = 0, il s’agit d’une adresse unicast pour une seule carte réseau. Les adresses mul­ti­dif­fu­sion sont iden­ti­fiées par I/G = 1 et sont adressées à plusieurs des­ti­na­taires.
  • Bit 2 (point d’émission) : le 2ème bit de l’adresse MAC indique s’il s’agit d’une adresse à validité globale (Universal) ou si l’adresse a été attribuée lo­ca­le­ment (Local). Le bit est appelé U/L. Si U/L = 0, l’adresse est con­si­dé­rée comme une adresse uni­ver­sel­le­ment valide. Les adresses qui ne sont uniques que lo­ca­le­ment sont appelées Adresse ad­mi­nis­trée lo­ca­le­ment (LAA) et marquées avec U/L = 1.
  • Bit 3-24 (iden­ti­fi­ca­tion du fabricant) : les bits 3 à 24 codent un iden­ti­fi­ca­teur unique d’or­ga­ni­sa­tion (OUI), qui est attribué ex­clu­si­ve­ment aux fa­bri­cants de matériel par IEEE. L’at­tri­bu­tion des PIUP est gé­né­ra­le­ment publique et peut être dé­ter­mi­née au moyen de bases de données. L’OUI de l’adresse de l’exemple (AC-16-2D) a été attribué par l’IEEE au fabricant américain de dis­po­si­tifs Hewlett Packard.
  • Bit 25-48 (iden­ti­fi­ca­tion de l’adap­ta­teur réseau) : les bits 25 à 48 four­nis­sent 24 bits pour permettre aux fa­bri­cants de pé­ri­phé­riques d’attribuer une iden­ti­fi­ca­tion ma­té­rielle unique (Adresse unique au niveau de l’or­ga­ni­sa­tion, OUA). Ainsi, 224 (= 16 777 216) OUA uniques peuvent être attribués par OUI.

Tableau : sous-domaines d’une adresse MAC

Type I/G U/L OUI OUA
Bit 1 2 3–24 25–48
Fonction Groupe de ré­cep­teurs Point d’émission Iden­ti­fi­ca­tion du fabricant Iden­ti­fi­ca­tion de l’adap­ta­teur réseau

Trouvez une adresse MAC : comment ça marche

Les adresses MAC peuvent être in­ter­ro­gées dans tous les systèmes d’ex­ploi­ta­tion modernes avec un minimum d’effort via le terminal, à la fois sur le système local et à distance sur le réseau. Le tableau suivant montre les commandes de ligne de commande cor­res­pon­dantes pour les systèmes d’ex­ploi­ta­tion les plus courants.

Tableau : lire une adresse MAC

Système d’ex­ploi­ta­tion Commande terminale À distance
FreeBSD ifconfig arp -a
NetBSD ifconfig -a arp -a
OpenBSD ifconfig -a arp -a
Linux ip link ip neigh
Mac OS X / macOS ifconfig arp -a
Solaris ifconfig -a arp -a
Windows XP Pro­fes­sio­nal getmac /v arp -a
Windows (ab 2000) ipconfig /all arp -a

Sur les appareils mobiles, vous pouvez afficher l’adresse MAC dans les pa­ra­mètres.

Tableau : dé­ter­mi­ner les adresses MAC sur les appareils mobiles

Système d’ex­ploi­ta­tion Local
Android Pa­ra­mètres > Info téléphone > In­for­ma­tions sur le matériel
Apple iOS Réglages > Général > A propos > Adresse Wi-Fi
Windows Phone 7 Réglages > Info > In­for­ma­tions com­plé­men­taires

Lire une adresse MAC locale

Pour lire les adresses MAC des adap­ta­teurs LAN et WLAN de votre or­di­na­teur Windows, procédez comme suit sous Windows 10.

Étape 1 : ouvrez le terminal de votre système d’ex­ploi­ta­tion. Par exemple, utilisez les com­bi­nai­sons de touches [Touche Windows] + [R]. Saisissez ensuite cmd dans la fenêtre Exécuter et confirmez avec OK.

Étape 2 : à partir de Windows 2000, la commande en ligne de commande ipconfig avec l’option /all est dis­po­nible pour récupérer l’adresse MAC de tous les adap­ta­teurs réseau de votre or­di­na­teur Windows.

Ipconfig /all
Conseil

Une al­ter­na­tive consiste à dé­ter­mi­nez l’adresse MAC avec la commande getmac /v.

Étape 3 : dans Windows, l’adresse MAC est affichée sous « adresse physique ».

Lire une adresse MAC à distance

Grâce à l’ARP, il est possible dans les réseaux IPv4 de dé­ter­mi­ner les adresses MAC d’autres appareils du même réseau local. Sous Windows et la plupart des systèmes d’ex­ploi­ta­tion unixoid, vous pouvez utiliser la ligne de commande arp avec l’option -a pour afficher la table ARP de votre système dans le terminal.

arp -a

Vous recevrez une sortie de terminal selon le schéma suivant :

Interface : 172.24.0.113 --- 0x2
    Adresse Internet         Adresse physique                Type
    172.24.0.111                        00-80-41-AE-FD-7E         dynamique
    172.24.0.112                        12-34-56-78-9A-BC         dynamique

Si vous souhaitez seulement lire à distance l’adresse MAC d’un adap­ta­teur réseau spé­ci­fique, utilisez la commande arp -a en com­bi­nai­son avec l’adresse IPv4 locale de l’adap­ta­teur cible.

arp -a 172.24.0.112

Attribuer l’adresse MAC côté logiciel

Les adresses MAC sont toujours at­tri­buées par les fa­bri­cants d’appareils et sont « marquées » dans la puce de l’adap­ta­teur réseau du côté matériel. Cependant, de nombreux systèmes d’ex­ploi­ta­tion offrent la pos­si­bi­lité d’écraser les adresses ma­té­rielles du côté logiciel. C’est ce qu’on appelle l’usur­pa­tion d’identité. Dans ce cas, un système n’envoie pas l’adresse ma­té­rielle réelle de l’adap­ta­teur adressé pendant la com­mu­ni­ca­tion réseau, mais une adresse MAC définie par l’uti­li­sa­teur.

Attribuer une adresse MAC sous Windows

Sous Windows, vous pouvez écraser l’adresse MAC via le ges­tion­naire de pé­ri­phé­riques si le pilote de pé­ri­phé­rique de l’adap­ta­teur réseau prend en charge cette fonction.

Étape 1 : ouvrez les pa­ra­mètres de l’adap­ta­teur réseau. Suivez le chemin d’accès : Démarrer Pa­ra­mètres Réseau et Internet Ethernet Modifier les options de l’adap­ta­teur.

Étape 2 : cliquez avec le bouton droit de la souris sur l’adap­ta­teur réseau souhaité et sé­lec­tion­nez « Dé­sac­ti­ver » dans le menu con­tex­tuel.

Étape 3 : cliquez avec le bouton droit de la souris sur l’adap­ta­teur réseau souhaité et sé­lec­tion­nez « Pro­prié­tés » dans le menu con­tex­tuel. Une boîte de dialogue « Pro­prié­tés de l’adap­ta­teur réseau » s’ouvre.

Étape 4 : cliquez sur le bouton « Con­fi­gu­rer » dans la boîte de dialogue et sé­lec­tion­nez la propriété « Adresse ad­mi­nis­trée lo­ca­le­ment » sous « Avancé ». Saisissez l’adresse MAC lo­gi­cielle souhaitée sous « Valeur ».

At­tri­bu­tion d’adresses MAC dans les systèmes d’ex­ploi­ta­tion unixoid

Les dérivés Unix tels que Linux, macOS, Solaris et les systèmes d’ex­ploi­ta­tion BSD sup­por­tent l’al­lo­ca­tion lo­gi­cielle des adresses MAC via le terminal.

Tableau : réécrire une adresse Mac

Système d’ex­ploi­ta­tion Commande de terminal
Linux ip link set dev <Interface> addr XX:XX:XX:XX:XX:XXoder ifconfig <Interface> pro­mis­cund ans­chließen­dif­con­fig <Interface> hw ether XX:XX:XX:XX:XX:XX
Mac OS X / macOS ifconfig <Interface> ether XX:XX:XX:XX:XX:XX
Solaris ifconfig <Interface> ether XX:XX:XX:XX:XX:XX
FreeBSD ifconfig <Interface> link XX:XX:XX:XX:XX:XX
NetBSD ifconfig <Interface> link XX:XX:XX:XX:XX:XX activate
OpenBSD ifconfig <Interface> lladdr XX:XX:XX:XX:XX:XX

Nous il­lus­trons la procédure pour le dérivé Unix Linux le plus cou­ram­ment utilisé. Si vous souhaitez réécrire l’adresse MAC de votre adap­ta­teur réseau sous Linux, procédez comme suit.

Étape 1 : Ouvrir le terminal du système d’ex­ploi­ta­tion, par exemple avec le raccourci [STRG]+[ALT]+[T].

Étape 2 : dé­ter­mi­nez le nom et l’adresse MAC actuelle de l’adap­ta­teur réseau souhaité. Entrez la commande suivante dans la ligne de commande :

ip link
Conseil

Notez l’adresse ma­té­rielle attribuée par le fabricant au cas où vous voudriez annuler le chan­ge­ment.

Étape 3 : mettez l’adap­ta­teur réseau hors tension en tapant la commande suivante dans la ligne de commande :

ip link set dev <interface> down</interface>
Note

Entrez le nom de l’adap­ta­teur réseau déterminé via le lien ip pour <Interface>.

Étape 4 : remplacez l’adresse réseau attribuée par le fabricant par l’une des options spé­ci­fiées dans le tableau.

ip link set dev <Interface> addr XX:XX:XX:XX:XX:XX
Note

Au lieu de XX:XX:XX:XX:XX:XX, entrez l’adresse MAC souhaitée.

Étape 5 : re­dé­mar­rez l’adap­ta­teur réseau. Pour ce faire, utilisez la commande de ligne de commande suivante :

ip link set dev <Interface> up

Pour vous assurer que l’adap­ta­teur réseau sé­lec­tionné peut être joint à l’adresse MAC que vous avez sé­lec­tion­née, relisez les in­for­ma­tions réseau avec le lien ip (voir étape 1).

Aller au menu principal