Modifier l'adresse MAC d'une carte réseau sous Linux
En informatique, l'adresse MAC (Media Access Control address) est un identifiant physique stocké dans une carte réseau ou une interface réseau. Cette adresse est attribuée par le constructeur et est matériellement figée (EEPROM). On ne peut donc pas la modifier.
Pourtant, il existe des solutions logiciels pour la changer, notamment avec la commande ifconfig sous Linux. Il faudra utiliser la syntaxe suivante, dans un terminal en root :
ifconfig <interface> hw <class> <address>
Voici un exemple d'utilisation :
ifconfig eth0 down
ifconfig eth0 hw ether 00:1c:26:b3:5c:7f
ifconfig eth0 up
/etc/init.d/networking restart
Remarque : cette modification doit être effectuée à chaque redémarrage. A noter également que cette technique peut être utilisée par exemple pour passer outre certains filtrages basés sur les adresses MAC.
Au passage, si vous souhaitez connaître les adresses MAC qui sont sur votre réseau, vous pouvez utiliser la commande arp :
$ arp
192.168.0.1 ether 00:0D:3D:22:12:D3
192.168.0.176 ether 00:0C:6F:0F:CB:7D
xblade ether 00:11:D8:4C:ZC:C1
Pour finir, voici une commande basée sur openssl qui permet de générer des adresses MAC de façon aléatoire :
openssl rand -hex 6 | sed 's/\(..\)/\1:/g; s/.$//'
11 Commentaires pour "Modifier l'adresse MAC d'une carte réseau sous Linux"
Flux des commentaires de cet article Ajouter un commentairebien pratique
petite question au passage: il y a-t-il un moyen plus simple de récupérer la MAC address d'une IP que de la pinguer puis afficher le cache ARP (arp -a) ? et pour l'opération inverse (rARP: MAC->IP) ?
@Eric : je ne sais pas. En tous les cas, je viens d'éditer l'article afin de parler de la commande arp suis à ton commentaire.
Ca me rappelles l'article d'un "cracker" qui se servait de cette méthode pour se connecter sur le wi-fi des voisins. J'ai jamais su si ça fonctionnait...
En tous cas voila une méthode trés pratique pour faire de l'arp sur des boitiers "serveurs" RJ45/paralélle (pour installer des imprimantes en réseau via ces petits boitiers) car desfois ils ont la meme addresse ip quand on à "oublié" des les configurer (regard appuyé vers le stagiaire... hahaha). "Ensuite tu te connectes par telnet ou par l'interface web en http si y'en à une et tu change enfin l'addresse ip..."
salut, j'ai une question :
mon adresse mac ne change pas, voici le résultat de la derniere ligne :
sudo /etc/init.d/networking restart
* Running /etc/init.d/networking restart is deprecated because it may not enable again some interfaces
* Reconfiguring network interfaces..
j'ai l'impression que le "restart" de networking ne marche pas....et donc l'adresse mac n'est pas mise à jour.
nota je suis en wifi, wlan2 précisément au lieu de eth0.
autre question est il nécessaire de faire un killall nm-applet au préalable?
il existe un utilitaire sous ubuntu dans les depots :
macchanger et macchanger-gtk.
permet aisément le changement d'adresse mac en gui.
mais ne fonctionne pas non plus chez moi !
MacChanger fonctionne très bien...
$ ifconfig eth0 | grep HWaddr
eth0 Link encap:Ethernet HWaddr 74:9a:82:f0:8f:b2
$ sudo ifconfig eth0 down
$ sudo macchanger -r eth0
Current MAC: 74:9a:82:f0:8f:b2 (unknown)
Faked MAC: ba:c5:d5:20:bb:7c (unknown)
$ sudo ifconfig eth0 up
$ ifconfig eth0 | grep HWaddr
eth0 Link encap:Ethernet HWaddr ba:c5:d5:20:bb:7c
bonjour, une simple question :
toto@toto1 ~ $ ifconfig eth0
eth0 Link encap:Ethernet HWaddr 86:7c:b0:85:c9:e9 # adresse mac
UP BROADCAST MULTICAST MTU:1500 Metric:1
Packets reçus:0 erreurs:0 :0 overruns:0 frame:0
TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 lg file transmission:1000
Octets reçus:0 (0.0 B) Octets transmis:0 (0.0 B)
Interruption:19
toto@toto1 ~ $ macchanger-gtk # appel de macchanger pour nouvelle adresse mac
You must be root for use macchanger-gtk
toto@toto1 ~ $ ifconfig eth0
eth0 Link encap:Ethernet HWaddr f2:1d:bb:3f:1d:2d # nouvelle adresse mac
UP BROADCAST MULTICAST MTU:1500 Metric:1
Packets reçus:0 erreurs:0 :0 overruns:0 frame:0
TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 lg file transmission:1000
Octets reçus:0 (0.0 B) Octets transmis:0 (0.0 B)
Interruption:19
toto@toto1 ~ $ arp # commande pour connaître les adresses mac du réseau
Address HWtype HWaddress Flags Mask Iface
192.168.1.1 ether c0:d2:44:fc:d1:8c C wlan0
toto@toto1 ~ $
Pourquoi la commande arp en wlan0 ou eth0 ne reconnaît que cette adresse c0:d2:44:fc:d1:8c ?
Bonjour! Si on change d'addresse mac de façon aléatoire, est ce qu'on peut fixer en ayant l'@ mac d'avant?
Hello, quand tu dis :
"Remarque : cette modification doit être effectuée à chaque redémarrage.."
Quel adresse mac va se mettre au demarrage de la machine?
et si je créé une image d'un pc (ce pc sous ubuntu a une carte réseau, une mac unique...) et que je déploie cette image sur d'autres machine quelle adresse mac va se mettre sur cette nouvelle machine? La copie de l'image ou bien au premier boot l'adresse mac prendre la valeur de la carte réseau sur laquelle l'image a été déployer ?
Merci d'avance
Salut Seb et merci pour ce tuto.
J'essaye de trouver mon adresse MAC pour mettre en place un filtre réseau sur mon routeur et impossible de la trouver avant de tomber sur ton article, merci encore !
Merci à vous pour cette astuce, je recherchais justement à changer l'adresse MAC.