ForumStändig neue Bezeichnung der Netzwerkschnittstellen
Axel Brüggemann – Samstag, 08. März 2008 19:25 Uhr

Hallo,

ich hab vor Kurzem Kubuntu Gusty installiert, Kernel 2.6.22-14-generic
Mein Problem ist, dass nach fast jedem Neustart die Ethernetschnittstelle einen neuen Namen hat, im Augenblick bin ich bei eth53.
Hab mal ein dmesg | grep -i eth gemacht, mit folgender Ausgabe
...
[ 30.520121] r8169 Gigabit Ethernet driver 2.2LK loaded
[ 30.520344] eth0: RTL8169sc/8110sc at 0xf8816800, 24:01:10:1a:10:10, XID
18000000 IRQ 20
[ 41.291039] r8169: eth53: link up
...

Da kann ich leider nichts mit anfangen, ich hab mal ein bischen gegoogelt, und gefunden dass die Interfacenamen dynamisch von einem initscript vergeben werden. Kann das fehlerhaft sein? Ist es möglich dem Interface einen statischen Namen zu geben?
Es ist sehr wichtig für mich, dass der Name immer gleich bleibt, denn ich syncronisiere die Daten vom Rechner oft per Unison auf mein Laptop, welches ich geschäftlich nutze.
Danke im Voraus

Axel

1 Antwort
Johannes Weiß – Samstag, 08. März 2008 20:02 Uhr

Hi,

das ist ja komisch. Kann es sein, dass die Mac-Adresse sich immer ändert? Das ist zwar eigentlich nicht möglich, aber wer weiß…

Naja, das Problem ist die Datei
/etc/udev/rules.d/z25_persistent-net.rules (oder so ähnlich)
Da werden alle einmal angeschlossenen Geräte vermerkt und immer weiter hochgezählt. Normalerweise sollte ein und die selbe Netzwerkkarte aber auch immer das selbe Interface bekommen!?!
Es sollte dir trotzdem helfen diese Datei einfach immer beim runterfahren zu löschen, dann wird es zumindest (wenn du nur ein Netzwerk-Interface hast) immer eth0.

Was ist denn das für ne Karte? PCI, USB oder sonstwas? Wenn es USB sein sollte könnte es helfen mal

sudo udevmonitor –environment

zu starten und zu schauen, was da genau passiert.
Falls es PCI ist, könnte es helfen das ganze mit

sudo /etc/init.d/udev restart

mal zu simulieren.

Viele Grüße,
johannes

Axel Brüggemann – Sonntag, 09. März 2008 13:45 Uhr

Hallo Johannes,

also das mit der Mac-Adresse kann ich mir nicht vorstellen, wie sollte das gehen? Ich hab das zwar bisher noch nicht kontrolliert, werde das aber trotzdem mal machen denn , man weiß ja nie ;-)
Bei der Karte handelt es ich nicht um eine USB-Karte, es ist die, im Chipsatz integrierte Schnittstelle. Es handelt sich um ein MSI-Board.
Deine anderen Tips werde ich mal testen, ich poste das Ergebnis später,

Danke
Axel

Axel Brüggemann – Sonntag, 09. März 2008 15:47 Uhr

Hi,

unglaublich aber wahr, tatsächlich wird der Karte bei jeder Initialisierung eine neue Mac-Adresse verpasst. Hier mal ein verkürzter Auszug aus /etc/udev/rules.d/70-persistent-net.rules, anstelle von …. stehen im Original die Einträge für eth2 bis eth52

# This file maintains persistent names for network interfaces.
# See udev(7) for syntax.
#
# Entries are automatically added by the 75-persistent-net-generator.rules
# file; however you are also free to add your own entries.

# PCI device 0x10ec:0x8169 (r8169)
SUBSYSTEM==”net”, DRIVERS==”?*”, ATTRS{address}==”24:81:10:d8:14:52″,
NAME=”eth0″

# PCI device 0x10ec:0x8169 (r8169)
SUBSYSTEM==”net”, DRIVERS==”?*”, ATTRS{address}==”24:81:11:98:14:50″,
NAME=”eth1″

….

# PCI device 0x10ec:0x8169 (r8169)
SUBSYSTEM==”net”, DRIVERS==”?*”, ATTRS{address}==”24:01:10:1a:10:10″,
NAME=”eth53″

# PCI device 0x10ec:0x8169 (r8169)
SUBSYSTEM==”net”, DRIVERS==”?*”, ATTRS{address}==”24:81:12:d8:00:12″,
NAME=”eth54″

Wie kann das kommen?? Ich habe das System nun mehrmals mit einer Live-Distri getestet, ein Hardwarefehler ist es nicht.
Die Einträge werden ja laut Kommentrar von dem Script 75-persistent-net-generator.rules erzeugt, aber da blicke ich nicht dran lang.

Doki Nafaso – Sonntag, 09. März 2008 20:26 Uhr

Hatte ich auch, die Mac-Adresse wurde vom Kernel-Treiber (forcedeth) als unzulässig eingestuft, ersatzweise wurde dann bei jedem Bootvorgang eine zufallsgenerierte zugewiesen. Udev dachte dann jedesmal, es mit einer neuen Netzwerkkarte zu tun zu haben, und zählte entsprechend die Bezeichnungen hoch (eth1, eth2, eth3..).

Mein Workaround war damals, dass ich mir eine von den zufallsgenerierten Mac-Adressen gemerkt habe und die dann jedesmal beim Booten der Karte zugewiesen habe. Ich weiß aber nicht mehr genau, wie ich das gemacht habe.. ;-(

Eine neue Treiberversion hat das Problem dann übrigens behoben…

Johannes Weiß – Sonntag, 09. März 2008 21:54 Uhr

Hi,

hatte mir das gedacht, weil die MAC etwas komisch aussah. Mein Vorschlag wäre einfach anstatt der MAC eine anderes Kriterium zu nutzen, beispielsweise Vendor und Product-Id.

So Zeug kannst du mit

udevinfo -a -p /sys/class/net/eth0

herusfinden.
Bei meiner Karte würde beispielsweise das taugen:

SUBSYSTEM==”net”, DRIVERS==”?*”, ATTRS{vendor}==”0x8086″, ATTRS{device}==”0x27d4″, NAME=”eth0″

wobei == immer vergleich bedeutet und = eine zuweisung ist, also schöner quasi:

if subSystem==”net” and drivers=”?*” and …:
name = “eth0”

HTH & Grüße,
johannes

Axel Brüggemann – Dienstag, 11. März 2008 17:12 Uhr

Hallo Leute,

nich böse sein weil ich mich jetzt erst melde, ich hatte viel um die Ohren. Ich habe in der Zwischenzeit eine Lösung gefunden, und zwar nehme ich statt der Hardwareadresse die PCI-Adresse. Ich hab die Lösung vorher nicht gefunden weil ich nie im Traum drauf gekommen wäre das die MAC-Adresse sich ändern könnte, hatte dann noch mal gegoogelt und folgende URL gefunden:
http://www.mindfactory.de/forum/linux-mac/31804-neue-ip-neustart.html
also im Grund das, was Johannes in seiner letzten Antwort schreibt. Das einzige was nicht passt ist die MAC-Adresse die von ifconfig angezeigt wird. Das stört mich aber i. A. nicht. Hauptsache ich habe bei jedem Start meine statische IP :-D

Vielen Dank für eure Mühen
Axel