Hi,

ich habe einmal onboard und zweimal USB-Ethernet. eth0 eth1 & eth2...

egal was ich probiere - nach einem reboot sind die Namen der Karten durcheinander.
Das einzige was hilft, ist, vor dem reboot beide USB rausziehen und wärend systemd hoch fährt erst eth1 und dann eth2 einstecken. Alles andere funktioniert nicht.
Ich habe mich jahrelang auf /etc/udev/rules.d/xx.persistend-network.rules verlassen. Auch das funktioniert irgendwie nicht. Kann mir jemand in dieser Sache helfen?

Danke und Grüsse
Unterbunden? Meinst Du 'net.ifnames=0'?

Eine udev-Regel für meine Karten habe ich ja - und die wird wegen des Kernelparameters ignoriert...? Muss ich mal testen
Ich habe bei mir eine /etc/udev/rules.d/110-network.rules angelegt mit dem Inhalt:
SUBSYSTEM=="net", ACTION=="add", ATTR{address}=="41:60:85:96:43:44", NAME="eth0"
41:60... ist die Macadresse der Karte.
Das funktioniert eigentlich sehr gut.
Ich muß der Karte den Namen eth0 vergeben, weil ich eine Software benutze die unbedingt eine eth0 haben will.

Ich kann mir vorstellen, dass du das mit den anderen beiden USB-Ethernetschinttstellen genauso machen kannst.
Gruß aus Sydney
Greg
@Greg
Ja ich will das eigtl auch so und 'früher' hat das auch mal funktioniert ;-) UND es steht in unzähligen Büchern so das die Netzwerkkarten eth heissen


Ich habe jetzt folgendes probiert:

Kernelparameter net.ifnames=0 entfernt
udevregel like Greg entfernt
*.link aus /etc/systemd/network entfernt

Jetzt bootet der Kernel mit den komischen neuen Namen (enp*) - was gar nicht geht! (Ich weis auch nicht wer sich das hat einfallen lassen - so ein unfug!!!)

Wenn ich jetzt, egal was, versuche die Netzwerkkarten via *.rules oder *.link umzubennen - funktioniert das nicht und der Kernel mault irgendwas von ethX cannot renamed File exists
Was eigenartig ist, weil ethX existiert jetzt ja eigentl gar nicht mehr.
ABER
Selbe Sache nur nicht ethX als Name sondern LAN WAN WLAN funktioniert der Spass
303acid schriebWenn ich jetzt, egal was, versuche die Netzwerkkarten via *.rules oder *.link umzubennen - funktioniert das nicht und der Kernel mault irgendwas von ethX cannot renamed File exists
Was eigenartig ist, weil ethX existiert jetzt ja eigentl gar nicht mehr.
Doch, der Kernel nimmt erst ethX und benennt dann zB. in enpXsY um:

$ dmesg | grep eth0
[    3.951958] e1000e 0000:00:19.0 eth0: (PCI Express:2.5GT/s:Width x1) 3c:97:0e:b4:8a:1f
[    3.951967] e1000e 0000:00:19.0 eth0: Intel(R) PRO/1000 Network Connection
[    3.952038] e1000e 0000:00:19.0 eth0: MAC: 10, PHY: 11, PBA No: 1000FF-0FF
[    4.039328] e1000e 0000:00:19.0 enp0s25: renamed from eth0

9 Tage später
ich hab hier noch bissl rumprobiert - komme aber zu keinem Wunschergbnis.
Jeder Versuch, die Karten in eth umzubennenn klappt nicht. Jeder andere Name geht.

Was vlt gehen könnte, wäre die Karten ein zweites mal umzubennen aber da fehlts mir dann (hab keine Idee wie).

so gehts nicht:

cat /etc/udev/rules.d/70-persistent-net.rules
SUBSYSTEM=="net", ACTION=="add", ATTR{address}=="00:22:4d:b0:b6:84", ATTR{type}=="1", KERNEL=="eth*", NAME="LAN"
SUBSYSTEM=="net", ACTION=="add", ATTR{address}=="00:23:56:2c:37:19", ATTR{type}=="1", KERNEL=="eth*", NAME="WAN"
SUBSYSTEM=="net", ACTION=="add", ATTR{address}=="00:24:9b:18:7e:13", ATTR{type}=="1", KERNEL=="eth*", NAME="WLAN"
folgendes wird ignoriert
SUBSYSTEM=="net", ACTION=="add", ATTR{address}=="00:22:4d:b0:b6:84", ATTR{type}=="1", KERNEL=="eth*", NAME="eth0"
SUBSYSTEM=="net", ACTION=="add", ATTR{address}=="00:23:56:2c:37:19", ATTR{type}=="1", KERNEL=="eth*", NAME="eth1"
SUBSYSTEM=="net", ACTION=="add", ATTR{address}=="00:24:9b:18:7e:13", ATTR{type}=="1", KERNEL=="eth*", NAME="eth2"
Reicht nicht einfach ein
ln -s /dev/null /etc/systemd/network/99-default.link
um das Umbenennen abzuschalten?
13 Tage später
nee, klappt nicht..also d.h. die Karten behalten zwar eth* als Name aber das Umbenennen mit udev in die richtige Reihenfolge geht nicht. (name exists) Suche nach wie vor nach einer Lösung, um eth* erst in tmp* und dann in eth0..x umzubennen...?
Erstelle eine /etc/systemd/network/eth0.link mit folgendem Inhalt:
[Match]
OriginalName=enpXsY 
[Link]
Name=eth0
Verstehe nicht wieso sich Leute so gegen die neuen Namen sträuben. Die machen total Sinn. eth0 und so weiter sind scheiße.
303acid schrieb Kernelparameter net.ifnames=0 entfernt
udevregel like Greg entfernt
*.link aus /etc/systemd/network entfernt

Jetzt bootet der Kernel mit den komischen neuen Namen (enp*) - was gar nicht geht! (Ich weis auch nicht wer sich das hat einfallen lassen - so ein unfug!!!)
Dieser "Unfug" soll genau dein Problem beheben. Dies ist ausführlich auf der von @niemand verlinkten Seite beschrieben.
Darum wird dieser "Unfug" auch "Predictable Network Interface Names" genannt.
Wenn du möchtest, dass deine Netzwerkinterfaces bei jedem Start deterministisch gleich benannt werden, was für mich aus deinem originalen Post hervorgeht, ist dies die Lösung deines Problems.
Wenn du lieber zufällige Namen nach dem alten "ethX" Schema haben möchtest, entsteht genau das von dir beschriebene Problem.
Entscheide dich was du möchtest. Beide Ziele schließen sich gegenseitig aus.