Warum heißt meine Netzwerkschnittstelle enp0s25 anstelle von eth0?

109

Viele meiner Skripte funktionierten nach der Installation von Ubuntu 15.10 nicht mehr und ich kann mich nicht mehr an diesen neuen Namen erinnern, da ich jahrelang an ethx und wlanx gewöhnt war. Gibt es einen Grund für diese Änderung? Muss ich mich daran gewöhnen oder kann ich es einfach umbenennen und zu guten alten eth0 zurückkehren?

$ ifconfig

enp0s25   Link encap:Ethernet  HWaddr 77:5a:5e:a6:86:d5  
      inet addr:192.168.31.239  Bcast:192.168.31.255  Mask:255.255.255.0
      inet6 addr: fe80::725a:b6ff:fea6:86d7/64 Scope:Link
      UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
      RX packets:4833 errors:1332 dropped:0 overruns:0 frame:666
      TX packets:5589 errors:0 dropped:0 overruns:0 carrier:0
      collisions:0 txqueuelen:1000 
      RX bytes:3266446 (3.2 MB)  TX bytes:1046654 (1.0 MB)
      Interrupt:20 Memory:d3500000-d3520000
Mike
quelle
2
Siehe hierzu auch einen weiteren Link zu weiteren Details.
Doug Smythies
4
Ooooooooooooooor reparieren Sie Ihre Skripte ein für alle Mal und entfernen Sie den Verweis (und ändern Sie ihn für einen Befehl, um den Gerätenamen zu bestimmen) ;-) (hier einige Hinweise : askubuntu.com/questions/396837/… )
Rinzwind
@Rinzwind Das ist eine tolle Idee.
Mike
@Mike mein Chef (= Leadcoder) stimmt mir auch immer zu, aber dann benutzt er immer fest codierte Pfade und Geräte ... und ich schimpfe ihn immer wieder;)
Rinzwind
1
Betrügerisch
rugk

Antworten:

105

Dies wird als " Predictable Network Interface" -Nennung bezeichnet und ist Teil von systemd , zu dem Ubuntu seit Version 15.04 übergeht.

Die Grundidee ist, dass im Gegensatz zu früheren * nix-Benennungsschemata, bei denen die Suche nach Hardware in keiner bestimmten Reihenfolge stattfindet und sich zwischen Neustarts ändern kann, der Schnittstellenname vom physischen Standort der Hardware abhängt und durch Betrachtung lspcioder lshwAusgabe vorhergesagt / erraten werden kann . Umgekehrt können wir Informationen über die physische Position im PCI-System erraten. In Ihrem Fall wäre dies PCI-Bus 0, Steckplatz 2. Gemäß dem Artikel von freedesktop.org gibt es drei Möglichkeiten, wie der Schnittstellenname zugewiesen wird: basierend auf BIOS / Firmware für integrierte Karten, basierend auf PCI-Informationen und basierend auf MAC Adresse der Schnittstelle. Weitere Beispiele finden Sie hier .

Laut der Seite freedesktop.org ist einer der Gründe für die Umstellung auf vorhersehbare Namen die Tatsache, dass die klassische Namenskonvention in Systemen mit mehreren Schnittstellen zu Software-Sicherheitsrisiken führen kann, wenn Geräte beim Booten hinzugefügt und entfernt werden. Laut dem Kommentar von Sam Hanes ist "Auf einem großen Server mit vielen Ethernet-Ports von unschätzbarem Wert: Sie können sofort feststellen, welche Schnittstelle zu welchem ​​Port gehört, und durch Hinzufügen oder Entfernen von Hardware werden die Namen anderer Ports nicht geändert."

Weitere Informationen zum Umbenennen der Netzwerkschnittstelle in 15.10 finden Sie unter So benennen Sie die Netzwerkschnittstelle um, falls Sie wieder zur anderen Namensversion zurückkehren möchten.

Sergiy Kolodyazhnyy
quelle
40
Ich sehe wenig Ironie im Wort "vorhersehbar" :), danke für die Hinweise.
Mike
11
"vorhersehbar", klar. Ich habe Ethernet-Trennungen nach dem Upgrade auf 15.10 (Neuinstallation, alt / zu Hause). Warum sollten APIs und Konventionen verletzt werden? Jetzt muss ich herausfinden, was nicht funktioniert. Ich bin sehr verärgert darüber :(
Gorlok
13
scheitern ist vorhersehbar, denke ich;)
Anwar
6
Sagen Sie das den systemdEntwicklern, Jungs.
Sergiy Kolodyazhnyy
22
Vorhersehbare Benennungen sind auf Desktop-Systemen mit nur einer Oberfläche nicht besonders nützlich und in diesem Fall unangenehm. Auf einem großen Server mit vielen Ethernet-Ports ist dies von unschätzbarem Wert: Sie können sofort feststellen, welche Schnittstelle zu welchem ​​Port gehört, und durch Hinzufügen oder Entfernen von Hardware werden die Namen anderer Ports nicht geändert. Das ist der Fall, für den es entwickelt wurde.
Sam Hanes
1

FWIW die freedesktop.org PredictableNetworkInterfaceNames-Datei verweist auf die Kommentare einer Quelldatei als kanonisch, aber diese Datei wurde geändert, um die Kommentare zu entfernen - siehe https://github.com/systemd/systemd/pull/12518 .

pbhj
quelle