Skip to content

Debian persistent eth

Voraussetzungen

  • Root-Zugriff
  • MAC-Adressen beider Interfaces bekannt

Schritt 1: MAC-Adressen ermitteln

ip link show

Beispielausgabe:

2: enp2s0f0: <BROADCAST,MULTICAST,UP,LOWER_UP> ...
    link/ether aa:bb:cc:dd:ee:01 brd ff:ff:ff:ff:ff:ff
3: enp2s0f1: <BROADCAST,MULTICAST,UP,LOWER_UP> ...
    link/ether aa:bb:cc:dd:ee:02 brd ff:ff:ff:ff:ff:ff


Für jedes Interface eine eigene .link-Datei anlegen:

nano /etc/systemd/network/10-eth0.link
[Match]
MACAddress=aa:bb:cc:dd:ee:01

[Link]
Name=eth0
nano /etc/systemd/network/20-eth1.link
[Match]
MACAddress=aa:bb:cc:dd:ee:02

[Link]
Name=eth1

Hinweis: Die Nummerierung (10-, 20-) bestimmt die Verarbeitungsreihenfolge.
Die gewünschten Interface-Namen (eth0, eth1) können frei gewählt werden.


Schritt 3: System neu starten

reboot

⚠️ Wichtig: Ein systemctl restart systemd-networkd reicht nicht aus.
Die Link-Dateien werden nur beim Booten während der Kernel-Geräteerkennung ausgewertet.
Ein vollständiger Reboot ist zwingend erforderlich.


Schritt 4: Ergebnis prüfen

Nach dem Reboot:

ip link show

Die Interfaces sollten nun dauerhaft als eth0 und eth1 erscheinen.


Hintergrund

Debian 13 verwendet standardmäßig Predictable Network Interface Names (z.B. enp2s0f0).
Bei Supermicro-Boards mit zwei NICs kann die PCIe-Enumeration nicht-deterministisch sein,
wodurch sich die Zuordnung bei jedem Boot ändern kann. Die .link-Dateien erzwingen
eine feste Bindung über die unveränderliche MAC-Adresse.