Provided by: manpages-de_4.15.0-9_all bug

BEZEICHNUNG

       systemd.net-naming-scheme - Benennungsschema für Netzwerkgeräte

BESCHREIBUNG

       Netzwerkschnittstellennamen und MAC-Adressen können auf Basis bestimmter gleichbleibender
       Schnittstellenattribute erstellt werden. Dies ist möglich, wenn es genug Informationen
       über das Gerät gibt, um diese Attribute zu erstellen und die Verwendung dieser Information
       konfiguriert wurde. Diese Seite beschreibt die Schnittstellenbenennung, d.h. welche
       möglichen Namen erstellt werden können. Diese Namen werden durch das in
       systemd-udevd.service(8) eingebaute net_id und als Udev-Eigenschaften
       (ID_NET_NAME_ONBOARD=, ID_NET_LABEL_ONBOARD=, ID_NET_NAME_PATH=, ID_NET_NAME_SLOT=)
       exportiert.

       Namen und MAC-Adressen werden aus verschiedenen gleichbleibenden Metadatenattributen
       abgeleitet. Neuere Versionen von Udev berücksichtigen mehr dieser Attribute und verbessern
       (und damit ändern) die für die gleichen Geräte verwandten Namen und Adressen. Verschiedene
       Versionen dieser Erstellungsregeln werden »Benennungsschema« genannt. Das
       Standard-Benennungsschema wird zum Kompilierungszeitpunkt ausgewählt. Normalerweise wird
       dies die neuste implementierte Version sein, aber es ist auch möglich, dies auf eine
       ältere Version zur Erhaltung der Kompatibilität zu setzen. Dies könnte beispielsweise für
       Distributionen nützlich sein, die neuere Versionen von Systemd in stabilen
       Veröffentlichungen integrieren, ohne das Benennungschema zu ändern. Das Benennungschema
       kann auch mittels des Kernelbefehlszeilenschalters net.naming-scheme= außer Kraft gesetzt
       werden, siehe systemd-udevd.service(8). Verfügbare Benennungsschemas werden nachfolgend
       beschrieben.

       Nachdem die Udev-Eigenschaften erstellt worden sind, können Geräte anhand dieser
       Eigenschaften und den geeigneten Udev-Regeln tatsächlich umbenannt werden. Siehe die
       Beschreibung von NamePolicy= und MACAddressPolicy= in systemd.link(5).

       Beachten Sie, dass das Konzept der Netzwerkschnittstellenbenennung zwar primär im Kontext
       von systemd-udevd.service relevant ist, aber der Container-Verwalter systemd-nspawn(1) sie
       auch bei der Benennung von Schnittstellennamen in Betracht zieht, siehe unten.

BENENNUNG

       Alle Namen beginnen mit einem Zwei-Zeichen-Präfix, das den Schnittstellentyp kennzeichnet.

       Tabelle 1. Zwei-Zeichen-Präfix basierend auf dem Typ der
       Schnittstelle

       ┌───────┬─────────────────────────────────┐
       │PräfixBeschreibung                    │
       ├───────┼─────────────────────────────────┤
       │enEthernet                        │
       ├───────┼─────────────────────────────────┤
       │ibInfiniBand                      │
       ├───────┼─────────────────────────────────┤
       │slIP über serielle Leitung (Slip) │
       ├───────┼─────────────────────────────────┤
       │wlSchnurloses lokales Netzwerk    │
       │       │ (WLAN)                          │
       ├───────┼─────────────────────────────────┤
       │wwSchnurloses Weitverkehrsnetz    │
       │       │ (WWAN)                          │
       └───────┴─────────────────────────────────┘

       Das eingebaute Udev net_id exportiert die folgenden Udev-Geräteeigenschaften:

       ID_NET_NAME_ONBOARD=PräfixoNummer
           Dieser Name wird basierend auf der numerischen Anordnungsinformation, die durch die
           Firmware für Geräte auf dem Mainboard angegeben wird, gesetzt. Der Name besteht aus
           dem Präfix, dem Buchstaben o und einer durch die Firmware festgelegten Zahl. Dies ist
           nur für PCI-Geräte verfügbar.

       ID_NET_LABEL_ONBOARD=Präfix Kennzeichen
           Diese Eigenschaft wird basierend auf der durch die Firmware von Geräten, die auf dem
           Mainboard sind, gegebenen textuellen Kennzeichnung gesetzt. Der Name besteht aus dem
           Präfix, dem die Kennzeichnung angehängt ist. Dies ist nur für PCI-Geräte verfügbar.

       ID_NET_NAME_MAC=PräfixxAABBCCDDEEFF
           Dieser Name besteht aus dem Präfixbuchstaben x und den 12 hexadezimalen Ziffern der
           MAC-Adresse. Er ist verfügbar, falls das Gerät über eine konstante MAC-Adresse
           verfügt. Da dieser Name auf einem Attribut der Karte selbst basiert, bleibt er
           »stabil«, selbst wenn das Gerät (sogar zwischen Maschinen) verschoben wird, aber
           ändert sich, wenn die Hardware ersetzt wird.

       ID_NET_NAME_SLOT=Präfix[PDomäne]sSlot[fFunktion][nPort_Name|dGer_Port],
       ID_NET_NAME_SLOT=PräfixvSlot, ID_NET_NAME_SLOT=PräfixxSlot,
       ID_NET_NAME_SLOT=Präfix[PDomäne]sSlot[fFunktion][nPort_Name|dGer_Port]bNummer,
       ID_NET_NAME_SLOT=Präfix[PDomäne]sSlot[fFunktion][nPort_Name|dGer_Port]uPort…[cKonfiguration][iSchnittstelle],
       ID_NET_NAME_SLOT=Präfix[PDomäne]sSlot[fFunktion][nPort_Name|dGer_Port]vSlot
           Diese Eigenschaft beschreibt die Slot-Position. Verschiedene Schemata werden abhängig
           vom Bus-Typ verwandt. Diese beschreibt die nachfolgende Tabelle. Im Falle von USB-,
           BCMA- und SR-VIO-Geräten besteht der komplette Name aus dem Präfix, dem
           PCI-Slot-Kennzeichner und dem USB- oder BCMA- oder SR-VIO-Slot-Kennzeichner. Die
           ersten zwei werden in der nachfolgenden Tabelle durch »…« angezeigt.

           Tabelle 2. Slot-Benennungsschema
           ┌────────────────────────────────────────────────────────────┬─────────────────────────────────┐
           │FormatBeschreibung                    │
           ├────────────────────────────────────────────────────────────┼─────────────────────────────────┤
           │Präfix [PDomäne] sSlot [fFunktion] [nPort_Name | dGer_Port] │ PCI-Slot-Nummer                 │
           ├────────────────────────────────────────────────────────────┼─────────────────────────────────┤
           │Präfix vSlot                                                │ VIO-Slot-Nummer (IBM PowerVM)   │
           ├────────────────────────────────────────────────────────────┼─────────────────────────────────┤
           │Präfix XNummer                                              │ VIF Schnittstellennummer (Xen)  │
           ├────────────────────────────────────────────────────────────┼─────────────────────────────────┤
           │… bNummer                                                   │ Broadcom-Bus- (BCMA) Kernnummer │
           ├────────────────────────────────────────────────────────────┼─────────────────────────────────┤
           │… uPort… [cKonfiguration] [iSchnittstelle]                  │ USB-Port-Nummerkette            │
           ├────────────────────────────────────────────────────────────┼─────────────────────────────────┤
           │…vSlot                                                      │ SR-VIO-Slot-Nummer              │
           └────────────────────────────────────────────────────────────┴─────────────────────────────────┘
           Die PCI-Domäne wird nur vorangestellt, wenn sie nicht 0 ist. Alle multifunktionalen
           PCI-Geräte werden die fFunktion-Nummer im Gerätenamen tragen, einschließlich der
           Funktion-0-Geräte. Für nicht-multifunktionale Geräte wird die Nummer unterdrückt,
           falls sie 0 ist. Der Port-Name Port_Name wird verwandt oder die Port-Nummer dGer_Port,
           falls der Name nicht bekannt ist.

           Für BCMA-Geräte wird die Kernnummer unterdrückt, wenn diese 0 ist.

           Für USB-Geräte wird die komplette Kette von Port-Nummern der Hubs zusammengesetzt.
           Falls der Name länger als die maximale Anzahl von 15 Zeichen ist, wird der Name nicht
           exportiert. Die Werte der normalen USB-Konfigurationsnummer 1 und Schnittstellennummer
           0 werden unterdrückt.

           Der Name von virtuellen SR-IOV-Geräten basiert auf dem Namen der übergeordneten
           Schnittstelle, gefolgt von v und der virtuellen Gerätenummer, wobei alle führenden
           Nullen entfernt werden. Die Busnummer wird ignoriert.

           In einigen Konfigurationen kann eine übergeordnete PCI-Bridge eines angegebenen
           Netzwerk-Controllers einem Steckplatz zugewiesen sein. In diesen Fällen wird diese
           Geräteeigenschaft nicht erstellt, um Benennungskonflikte zu vermeiden.

       ID_NET_NAME_PATH=PräfixcBuskennung, ID_NET_NAME_PATH=PräfixaLieferantModelliInstanz,
       ID_NET_NAME_PATH=PräfixiAdressenPort_Name,
       ID_NET_NAME_PATH=Präfix[PDomäne]pBussSlot[fFunktion][nphys_Port_Name|dGer_Port],
       ID_NET_NAME_PATH=Präfix[PDomäne]pBussSlot[fFunktion][nphys_Port_Name|dGer_Port]bNummer,
       ID_NET_NAME_PATH=Präfix[PDomäne]pBussSlot[fFunktion][nphys_Port_Name|dGer_Port]uPort…[cKonfig][iSchnittstelle]
           Diese Eigenschaft beschreibt den Geräteinstallationsort. Verschiedene Schemata werden
           abhängig vom Bustyp verwandt, wie in der nachfolgenden Tabelle beschrieben. Für BCMA-
           und USB-Geräte muss die PCI-Pfadinformation bekannt sein und der vollständige Name
           besteht aus dem Präfix, der PCI-Slot-Kennzeichnung und dem USB- oder BCMA-Ort. Die
           ersten zwei Teile werden in der nachfolgenden Tabelle durch »…« angezeigt.

           Tabelle 3. Pfadbenennungsschema
           ┌──────────────────────────────────────────────────────────────────────┬──────────────────────────────────┐
           │FormatBeschreibung                     │
           ├──────────────────────────────────────────────────────────────────────┼──────────────────────────────────┤
           │Präfix cBuskennung                                                    │ CCW- oder gruppierte             │
           │                                                                      │ CCW-Gerätekennzeichner           │
           ├──────────────────────────────────────────────────────────────────────┼──────────────────────────────────┤
           │Präfix aHändler Modell iInstanz                                       │ ACPI-Pfadnamen für               │
           │                                                                      │ ARM64-Plattformgeräte            │
           ├──────────────────────────────────────────────────────────────────────┼──────────────────────────────────┤
           │Präfix iAdresse nPort-Name                                            │ Netdevsim (simulierte            │
           │                                                                      │ Netzwerkgeräte) Gerätenummer und │
           │                                                                      │ Port-Name                        │
           ├──────────────────────────────────────────────────────────────────────┼──────────────────────────────────┤
           │Präfix [PDomäne] pBus sSlot [fFunktion] [nphys_Port_Name | dGer_Port] │ Geographischer PCI-Ort           │
           ├──────────────────────────────────────────────────────────────────────┼──────────────────────────────────┤
           │… bNummer                                                             │ Broadcom-Bus- (BCMA) Kernnummer  │
           ├──────────────────────────────────────────────────────────────────────┼──────────────────────────────────┤
           │… uPort… [cKonfiguration] [iSchnittstelle]                            │ USB-Port-Nummerkette             │
           └──────────────────────────────────────────────────────────────────────┴──────────────────────────────────┘
           CCW- und gruppierte CCW-Geräte gibt es in IBM-System-Z-Großrechnern. Alle einleitenden
           Nullen und Punkte werden unterdrückt.

           Für PCI-, BCMA- und USB-Geräte werden die gleichen Regeln wie oben für Slot-Namen
           beschrieben verwandt.

GESCHICHTE

       Das folgende »Benennungsschema« wurde definiert (dies kann zum Zeitpunkt des Systemstarts
       mittels des oben dargestellten Kernelbefehlszeilenschalters net.naming-scheme= ausgewählt
       werden):

       v238
           Dies ist das in Systemd 238 implementierte Benennungsschema.

       v239
           Die Benennung für mit SR-IOV und NPAR erstellte virtuelle Netzwerkgeräte und für
           Geräte, deren PCI-Netzwerk-Controller keine Slot-Nummer zugeordnet ist, wurde
           geändert.

           Virtuelle SR-IOV Geräte werden basierend auf der übergeordneten Schnittstelle mit
           einer Endung »vPort« benannt, wobei Port die virtuelle Gerätenummer ist. Vorher wurden
           solche virtuellen Geräte benannt, als ob sie komplett unabhängig wären.

           Das neunte und spätere virtuelle NPAR-Geräte folgen dem für die ersten acht
           NPAR-Partitionen verwandten Benennungsschema. Früher wurden solche Geräte nicht
           umbenannt und die Vorgabe des Kernels (»ethN«) wurde verwandt.

           Es werden auch Namen für PCI-Geräte erstellt, bei denen der PCI-Netzwerk-Controller
           selbst keine zugeordnete Slot-Nummer hat, aber eines seiner übergeordneten Geräte hat
           eine. Früher wurden solche Geräte nicht umbenannt und die Vorgabe des Kernels wurde
           verwandt.

       v240
           Das Präfix »ib« und gleichbleibende Namen für Infiniband-Geräte werden eingeführt.
           Früher wurden solche Geräte nicht umbenannt.

           Das ACPI-Indexfeld (in ID_NET_NAME_ONBOARD= verwandt) wird jetzt auch genutzt, falls
           sein Wert 0 ist.

           Es wurde eine neue Benennungsrichtlinie NamePolicy=keep eingeführt. Mit dieser
           Richtline wird das Netzwerkgerät nicht erneut umbenannt, falls sein Name bereits im
           Anwendungsraum (user space) gesetzt wurde. Früher wurde diese Bennungsrichtlinie
           implizit angewandt und jetzt muss sie explizit erbeten werden. Effektiv bedeutet dies,
           dass Netzwerkgeräte entsprechend ihrer Konfiguration umbenannt werden, falls keep
           nicht als Benennungsrichtlinie in der .link-Datei festgelegt ist, auch wenn sie
           bereits umbenannt worden sind. Siehe systemd.link(5) für eine Beschreibung von
           NamePolicy=.

       v241
           MACAddressPolicy=persistent wurde erweitert, um MAC-Adressen basierend auf dem
           Gerätenamen zu setzen. Früher basierten Adressen nur auf ID_NET_NAME_*-Attributen, was
           bedeutete, dass für virtuelle Geräte niemals Schnittstellennamen erstellt wurden.
           Jetzt bekommen die meisten Geräte dauerhafte Adressen, insbesondere auch Bridges.

           Beachten Sie: Wenn der Anwendungsraum keine MAC-Adresse für ein Bridge-Gerät setzt,
           dann wird der Kernel anfänglich eine zufällige Adresse zuweisen und diese dann ändern,
           wenn das erste Gerät zu der Bridge enslaved wird. Mit dieser Änderung der
           Benennungsrichtlinie erhalten Bridges eine dauerhafte MAC-Adresse basierend auf dem
           Bridge-Namen anstatt des ersten Gerätes, das enslaved ist.

       v243
           Unterstützung für die Umbenennung von Netdevsim-Geräten (simulierten Netzwerkgeräten)
           wurde hinzugefügt. Früher wurden diese Geräte nicht umbenannt.

           Früher wurde der zweibuchstabige Schnittstellentyppräfix ID_NET_LABEL_ONBOARD=
           vorangestellt. Dies ist jetzt nicht mehr der Fall.

       v245
           Wenn systemd-nspawn(1) den Namen für die Rechnerseite des mit --network-veth vom
           Container-Namen erstellten Netzwerkschnittstellennamens ableitet, schnitt es bisher
           das Ergebnis nach 15 Zeichen ab, falls es länger war (da dies die maximale Länge für
           Netzwerkschnittstellennamen ist). Ab jetzt werden die letzten 4 Zeichen auf einen
           24-Bit-Hash-Wert des vollständigen Schnittstellennamens gesetzt, falls der
           Schnittstellenname länger als 15 Zeichen wäre. Auf diese Art sollten
           Schnittstellennamenkollisionen zwischen mehreren, ähnlich benannten Containern (die
           sich nur in der Containernamen-Endung unterscheiden) weniger wahrscheinlich werden —
           sie sind allerdings weiterhin möglich, da der 24-Bit-Hash-Wert sehr klein ist.

       v247
           Wenn ein PCI-Steckplatz einer PCI-Bridge zugeordnet ist, die über mehrere
           nachgeordnete Netzwerk-Controller verfügt, dann könnte der gleiche Wert der
           Eigenschaft ID_NET_NAME_SLOT für alle diese Controller abgeleitet werden. Dadurch
           können Benennungskonflikte auftreten, falls die Eigenschaft als der Gerätename
           ausgewählt wird. Jetzt wird diese Situation erkannt und keine Eigenschaft
           ID_NET_NAME_SLOT erstellt.

       v249
           PCI-Hotplug-Positionsnamen für den S390-PCI-Treiber sind hexadezimale Darstellungen
           des Geräteattributs function_id. Dieses Attribut wird nun dazu verwandt,
           ID_NET_NAME_SLOT zu bauen. Vorher wurden alle Positionsnamen als dezimale Zahlen
           ausgewertet, was entweder zu einem falschen Wert der Eigenschaft ID_NET_NAME_SLOT
           führen konnte oder zu gar keinem.

           Einige Firmware- und Hypervisor-Implementierungen berichten unrealistisch hohe Werte
           für den eingebauten Index. Um die Erstellung von gefälschten eingebauten
           Schnittstellennamen zu vermeiden, wurden Indexwerte größer als 16381 ¹⁴-1) ignoriert.
           Für S390-PCI-Geräte sind Indexwerte bis 65535 (2¹⁶-1) gültig. Um dies zu
           berücksichtigen, wurde diese Begrenzung auf 65535 erhöht.

           Die Udev-Regel NAME= ersetzt »:«, »/« und »%« durch einen Unterstrich (»_«) und lehnt
           Zeichenketten ab, die rein numerisch sind.

       v250
           Es wurde ein Namensschema für Xen-Netfront-»vif«-Schnittstellen, basierend auf der
           gästeseitigen VIF-Nummerngruppe aus der Xen-Konfiguration (oder die Schnittstellen mit
           Index in AWS EC2), hinzugefügt.

       v251
           Seit Version v247 setzen wir nicht mehr ID_NET_NAME_SLOT, falls wir erkennen, dass ein
           PCI-Gerät, das einem PCI-Steckplatz zugeordnet ist, eine PCI-Bridge ist, da dies einen
           Benennungskonflikt hervorrufen würde, wenn es mehrere Kind-Geräte auf dieser Bridge
           gibt. Jetzt wird dies nicht mehr so strikt gesehen und wir werden die
           Steckplatz-Informationen verwenden, um den Namen darauf basierend zu erstellen, aber
           nur, falls das PCI-Gerät mehrere Funktionalitäten hat. Dies ist sicher, da eine
           separate Funktionsnummer ein Teil des Gerätenamens für Geräte mit mehreren Funktionen
           ist.

       Beachten Sie, dass latest zur Kennzeichnung des neusten bekannten Schemas (für diese
       konkrete Version von Systemd) verwandt werden kann.

BEISPIELE

       Beispiel 1. Verwendung Udevadms test-builtin zur Anzeige von Geräteeigenschaften

           $ udevadm test-builtin net_id /sys/class/net/enp0s31f6
           …
           Verwendung des Vorgabe-Schnittstellen-Benennungsschemas 'v243'.
           ID_NET_NAMING_SCHEME=v243
           ID_NET_NAME_MAC=enx54ee75cb1dc0
           ID_OUI_FROM_DATABASE=Wistron InfoComm(Kunshan)Co.,Ltd.
           ID_NET_NAME_PATH=enp0s31f6
           …

       Beispiel 2. PCI-Ethernet-Karte mit Firmware-Index »1«

           ID_NET_NAME_ONBOARD=eno1
           ID_NET_NAME_ONBOARD_LABEL=Ethernet Port 1

       Beispiel 3. PCI-Ethernet-Karte in einem Slot für dynamisches Einstecken mit
       Firmware-Indexnummer

           # /sys/devices/pci0000:00/0000:00:1c.3/0000:05:00.0/net/ens1
           ID_NET_NAME_MAC=enx000000000466
           ID_NET_NAME_PATH=enp5s0
           ID_NET_NAME_SLOT=ens1

       Beispiel 4. PCI-Ethernet-Multifunktionskarte mit 2 Ports

           # /sys/devices/pci0000:00/0000:00:1c.0/0000:02:00.0/net/enp2s0f0
           ID_NET_NAME_MAC=enx78e7d1ea46da
           ID_NET_NAME_PATH=enp2s0f0

           # /sys/devices/pci0000:00/0000:00:1c.0/0000:02:00.1/net/enp2s0f1
           ID_NET_NAME_MAC=enx78e7d1ea46dc
           ID_NET_NAME_PATH=enp2s0f1

       Beispiel 5. PCI-WLAN-Karte

           # /sys/devices/pci0000:00/0000:00:1c.1/0000:03:00.0/net/wlp3s0
           ID_NET_NAME_MAC=wlx0024d7e31130
           ID_NET_NAME_PATH=wlp3s0

       Beispiel 6. PCI-IB-Host-Adapter mit 2 Ports

           # /sys/devices/pci0000:00/0000:00:03.0/0000:15:00.0/net/ibp21s0f0
           ID_NET_NAME_PATH=ibp21s0f0

           # /sys/devices/pci0000:00/0000:00:03.0/0000:15:00.1/net/ibp21s0f1
           ID_NET_NAME_PATH=ibp21s0f1

       Beispiel 7. Eingebautes USB-3G-Modem

           # /sys/devices/pci0000:00/0000:00:1d.0/usb2/2-1/2-1.4/2-1.4:1.6/net/wwp0s29u1u4i6
           ID_NET_NAME_MAC=wwx028037ec0200
           ID_NET_NAME_PATH=wwp0s29u1u4i6

       Beispiel 8. USB-Android-Telephon

           # /sys/devices/pci0000:00/0000:00:1d.0/usb2/2-1/2-1.2/2-1.2:1.0/net/enp0s29u1u2
           ID_NET_NAME_MAC=enxd626b3450fb5
           ID_NET_NAME_PATH=enp0s29u1u2

       Beispiel 9. s390-gruppierte CCW-Schnittstelle

           # /sys/devices/css0/0.0.0007/0.0.f5f0/group_device/net/encf5f0
           ID_NET_NAME_MAC=enx026d3c00000a
           ID_NET_NAME_PATH=encf5f0

SIEHE AUCH

       udev(7), udevadm(8), Vorhersagbare Netzwerkschnittstellennamen[1], systemd-nspawn(1)

ANMERKUNGEN

        1. Vorhersagbare Netzwerkschnittstellennamen
           https://systemd.io/PREDICTABLE_INTERFACE_NAMES

ÜBERSETZUNG

       Die deutsche Übersetzung dieser Handbuchseite wurde von Helge Kreutzmann
       <debian@helgefjell.de> erstellt.

       Diese Übersetzung ist Freie Dokumentation; lesen Sie die GNU General Public License
       Version 3 ⟨https://www.gnu.org/licenses/gpl-3.0.html⟩ oder neuer bezüglich der Copyright-
       Bedingungen. Es wird KEINE HAFTUNG übernommen.

       Wenn Sie Fehler in der Übersetzung dieser Handbuchseite finden, schicken Sie bitte eine E-
       Mail an die Mailingliste der Übersetzer ⟨debian-l10n-german@lists.debian.org⟩.