Wie kann ich die alten eth0-Namen anzeigen und auch Netzwerkschnittstellen in Debian 9 Stretch umbenennen?


12

Ich möchte 2 Dinge tun:

1) Setzen Sie die Schnittstellen auf den alten klassischen Namen zurück: eth0 anstelle von ens33.

2) Benennen Sie die Schnittstellen wie gewünscht um, damit ich beispielsweise die Schnittstelle eth0 als wan0 aufrufen oder eth1, eth2 usw. der gewünschten Mac-Adresse zuweisen kann.

Antworten:


20

Angenommen, Sie haben gerade Ihre Debian 9-Strecke installiert.

1) Um die alten Namen für die Schnittstellen zurückzusetzen, gehen Sie wie folgt vor:

nano /etc/default/grub

Bearbeiten Sie die Zeile GRUB_CMDLINE_LINUX=""bisGRUB_CMDLINE_LINUX="net.ifnames=0 biosdevname=0"

Starten Sie dann eine grub-mkconfig, um die Änderungen im Bootloader zu übernehmen

grub-mkconfig -o /boot/grub/grub.cfg

Danach müssen Sie neu starten .


2) Verwenden Sie zum Umbenennen der Schnittstellen:

  • Für nur eine vorübergehende Änderung werfen Sie einen Blick auf die @ xhienne-Antwort.

  • Für eine dauerhafte Änderung:

Beginnen Sie mit dem Erstellen / Bearbeiten der Datei /etc/udev/rules.d/70-persistent-net.rules .

nano /etc/udev/rules.d/70-persistent-net.rules

Und fügen Sie innere Zeilen ein wie:

# interface with MAC address "00:0c:30:50:48:a1" will be assigned "eth0"
SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="00:0c:30:50:48:a1", ATTR{dev_id}=="0x0", ATTR{type}=="1", KERNEL=="eth*", NAME="eth0"

# interface with MAC address "00:0c:30:50:48:ab" will be assigned "eth1"
SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="00:0c:30:50:48:ab", ATTR{dev_id}=="0x0", ATTR{type}=="1", KERNEL=="eth*", NAME="eth1"

Wenn Sie beispielsweise eth0 einen Namen wie wan0 zuweisen möchten, können Sie dies anhand meines Beispiels verwenden:

# interface with MAC address "00:0c:30:50:48:a1" will be assigned "eth0"
SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="00:0c:30:50:48:a1", ATTR{dev_id}=="0x0", ATTR{type}=="1", KERNEL=="eth*", NAME="wan0"

Nach dem nächsten Neustart oder dem Neustart des Dienstnetzwerks sollten die vorgenommenen Änderungen angezeigt werden.


ZUSÄTZLICH: Denken Sie daran, dass Sie nach all diesen Änderungen Ihre Datei / etc / network / interfaces bearbeiten müssen, um die alten Schnittstellennamen durch die neuen zu ersetzen!


ZUSÄTZLICH: Wenn Sie wissen möchten, welche MAC-Adresse Ihre Schnittstellen haben, führen Sie einfach eine aus

ip addr show

und schauen Sie unter dem Link / Abschnitt.


Wo finden Sie diese Informationen in der offiziellen Linux-Dokumentation?
vfclists

5

Für Frage 1) siehe die Antwort von user3450548 . Bei Frage 2) können Sie einer Schnittstelle einen beliebigen Namen geben iproute2:

ip link set ens33 down           # Else you will get "Device or resource busy"
ip link set ens33 name eth0

1
Oh schön, aber dies ist nicht nur eine vorübergehende Änderung bis zum nächsten Neustart?
user3450548

Ja. Natürlich können Sie dies in einem Startskript hinzufügen, aber Ihre Antwort ist besser, wenn Sie etwas Dauerhaftes wollen. Ich habe nicht bemerkt, dass Sie Ihre eigene Frage beantwortet haben (Sie können sie dann akzeptieren) und habe diese hinzugefügt, wenn Sie (oder jemand anderes) eine vorübergehende Namensänderung zu Testzwecken wünschen.
Xhienne

Danke, dies ist ein nettes Addon, ich werde die vorübergehende Lösung auch auf Ihre Antwort verweisen :)
user3450548

0

Erstellen Sie die folgende Datei, wenn nicht vorhanden

nano /etc/udev/rules.d/70-persistent-net.rules

unter der Zeile hinzufügen

# interface with MAC address "00:0c:30:50:48:a1" will be assigned "eth0"
# KERNEL=="enp3s0" is debians current interface name
# NAME="eth0" is a new ethernet interface name
SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="00:0c:30:50:48:a1", ATTR{dev_id}=="0x0", ATTR{type}=="1", KERNEL=="enp3s0", NAME="eth0"

0

Ich habe einen sehr einfachen Weg gefunden, indem ich nur geändert habe /etc/network/interfaces:

rename enp3s0=wan0

Dann

service networking restart

um den Netzwerkdienst neu zu starten.

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.