Wie stelle ich die MAC-Adresse unter Linux wieder her?

11

Ich habe meine MAC-Adresse in meinem Linux-Computer mit geändert ifconfig. Jetzt ist das Problem, dass ich meine ursprüngliche MAC-Adresse nicht gespeichert habe. Ich möchte es ohne Neustart wiederherstellen.

Gibt es eine Möglichkeit, dies zu tun?

Narayanpatra
quelle
Gibt es einen Grund, nicht neu zu starten?
New123456
Ein halbes Dutzend Anwendungen ausführen. Ich will sie nicht schließen.
Narayanpatra
1
Führen Sie dies aus?: sudo ifdown interface && sudo ifup interfaceOder vielleicht:sudo /etc/init.d/networking restart
evan.bovie
@emb: hat nicht funktioniert.
Narayanpatra

Antworten:

8

Sie können Ihre vom Hersteller angegebene Hardware-MAC-Adresse abrufen, indem Sie ethtool:

ethtool -P eth0

Um die MAC-Adresse auf diesen Wert zurückzusetzen, können Sie Folgendes tun:

sudo ifconfig eth0 hw ether $(ethtool -P eth0 | awk '{print $3}')
Nibot
quelle
1

Angenommen eth1:

grep "eth1" /var/log/*log | egrep "([0-9a-fA-F]{2}:){5}"

konnte etwas in den Protokollen {Daemon, Kern, Syslog} .log auf meinem System finden.

Benutzer unbekannt
quelle
1

[verwurzelt] unter der Annahme von wlan0

... (um den Fahrer zu finden)
airmon-ng | awk '/wlan0/ {print $4}'... oder

airmon-ng | awk '/wlan0/ {print $3}' ...oder nur

airmon-ng ..und schau unter 'Treiber'

... (um den Treiber neu zu starten)
ifconfig wlan0 down

modprobe -r rt2800usb <= Ersetzen Sie (rt2800usb) durch Ihren Treiber

modprobe rt2800usb <= Ersetzen Sie (rt2800usb) durch Ihren Treiber

ifconfig wlan0 up

So mache ich es. Ich habe dafür ein Skript erstellt und es mit einigen meiner Programme verwendet. Wenn dies der Weg ist, den Sie einschlagen, geben Sie 'time.sleep (3)' {oder einen beliebigen Schlafbefehl} ein, bevor Sie die Schnittstelle wieder hochfahren.

Snakeroom
quelle
0

Versuchen Sie vielleicht, das Modul zu entfernen und dann erneut zu installieren?

sudo rmmod <NICmodule>
sudo insmod <NICmodule> 

Oder vielleicht die Schnittstelle fallen lassen und wieder aufrufen?

sudo ifdown <interface> && sudo ifup <interface>
Sealz
quelle
Können Sie die erste Methode ausarbeiten? Der zweite hat nicht funktioniert.
Narayanpatra
Das <NICmodule>wäre das Kernelmodul, das die Netzwerkkarte verwendet. zB e1000 Mit dieser Anleitung können Sie sehen, was Sie haben .
evan.bovie
Wissen Sie, welches Modul Ihre Netzwerkkarte verwendet? Dadurch wird das Modul einfach entfernt und dann wieder eingesetzt (hoffentlich mit dem richtigen MAC)
Sealz
@narayanpatra Haben Sie die Schnittstelle durch die Schnittstelle ersetzt, über die Sie auf das Internet zugreifen? In den meisten Fällen ist eseth0
paradd0x
@thiago: Ja, das habe ich gemacht.
Narayanpatra