eth0 und eth1 werden haeufig vertauscht

Einrichten des lokalen Netzes, Verbindung zu anderen Computern und Diensten.
Gert Brinkmann
Beiträge: 6
Registriert: 11.06.2005 18:30:04

Beitrag von Gert Brinkmann » 27.11.2005 22:57:53

Scheint ihn nicht zu kratzen.
Aarg. Ich befürchte, Du hast Recht. Bei mir ist es auch noch einmal vorgekommen, dass die devices vertauscht waren, nachdem ich die Rules eingesetzt habe. Allerdings ist es vor der Existenz der Rules andauernd passiert, danach erst einmal, waehrend es ein gutes Dutzend mal funktioniert hat. Vielleicht bringen Sie ja in manchen race-condition-Faellen doch noch etwas?

Gruss,

Gert

Benutzeravatar
DAS-ICH
Beiträge: 326
Registriert: 10.09.2004 21:34:35
Kontaktdaten:

Beitrag von DAS-ICH » 01.12.2005 10:08:53

Hi

hatte dasgleiche Prob nur mit drei Netzwerkkarten.
Es lies sich wie oben beschrieben lösen, mit ner kleinen Korrektur

anstatt

KERNEL="eth*"

habe ich

KERNEL=="eth*"

eingegeben. Mir fiel das auf beim vergleichen der anderen rules, da ist das genauso geschrieben, könnte sein das udev deshalb bei manchen diese Sachen ignoriert.

MfG
Debian Unstable-amd64
Kernel 4.2.1-2
Xfce
CPU: AMD PhenomII X6

Benutzeravatar
KBDCALLS
Moderator
Beiträge: 22455
Registriert: 24.12.2003 21:26:55
Lizenz eigener Beiträge: MIT Lizenz
Wohnort: Dortmund
Kontaktdaten:

Beitrag von KBDCALLS » 01.12.2005 10:29:02

Auf einem Rechner läuft bei mir noch zusätzlich eine Sarge mit einigen Backports., Und Kernel 2.6.14 unter anderem. Da hatte ich auch das Problem mir zwei Normalen Netwerkkarten und Firewire. Da hat dann nur noch geholfen alle 4 Module in die Blacklist einzutragen. Das ist sogar von Kernel zu Kernel Unterschiedlich das Verhalten des Hotplugs was die Netzwerkkarten anbetrifft, bei ansonsten gleicher Konfiguration.
Was haben Windows und ein Uboot gemeinsam?
Kaum macht man ein Fenster auf, gehen die Probleme los.

EDV ist die Abkürzung für: Ende der Vernunft

Bevor du einen Beitrag postest:
  • Kennst du unsere Verhaltensregeln
  • Lange Codezeilen/Logs gehören nach NoPaste, in Deinen Beitrag dann der passende Link dazu.

Benutzeravatar
DAS-ICH
Beiträge: 326
Registriert: 10.09.2004 21:34:35
Kontaktdaten:

Beitrag von DAS-ICH » 01.12.2005 15:23:48

Hi

ich nehm es auch wieder zurück, musste gerade mein System neustarten und oohhh welch überaschung Netzwerkkarten mal wieder falsche reihenfolge, genauso wie meine Soundkarten.

Habe diese zwar in der /etc/modules so eingetragen wie sie geladen werden sollen, klappt mal so mal so.

Diese Probleme fingen bei mir an, als hotplug kommplet von udev abgelöst wurde. Ich muss sagen im Mom ist dieses udev einfach nur Sch...
Denke aber das die Developer das schon noch hinkriegen.

MfG
Debian Unstable-amd64
Kernel 4.2.1-2
Xfce
CPU: AMD PhenomII X6

gbrinkmann
Beiträge: 28
Registriert: 11.09.2002 13:30:36

Beitrag von gbrinkmann » 01.12.2005 15:47:51

Denke aber das die Developer das schon noch hinkriegen.
Ich hatte bei debian den Bug reported. Er wurde geschlossen mit dem Vermerk, dass dies kein Bug sei. Ich sollte die rules erstellen, dafuer sei ja udev da. Ok, man koennte jetzt noch reporten, dass die rules nicht funktionieren.

Vielleicht darf man keine devices mit dem Namen eth0 und eth1 erzeugen, sondern wie in der README ein "lan" und sonstwas. Das habe ich nicht versucht.

Benutzeravatar
KBDCALLS
Moderator
Beiträge: 22455
Registriert: 24.12.2003 21:26:55
Lizenz eigener Beiträge: MIT Lizenz
Wohnort: Dortmund
Kontaktdaten:

Beitrag von KBDCALLS » 01.12.2005 16:09:12

Also es kann noch nicht Sinn machen das man an mehreren Stellen rumschrauben muß. Dann ist irgendwann mal der Punkt erreicht, das es sinnvoller ist sich einen eigenen Kernel zu kompilieren.

Code: Alles auswählen

 Er wurde geschlossen mit dem Vermerk, dass dies kein Bug sei.


Als Begrüngung ist das dürftig.
Was haben Windows und ein Uboot gemeinsam?
Kaum macht man ein Fenster auf, gehen die Probleme los.

EDV ist die Abkürzung für: Ende der Vernunft

Bevor du einen Beitrag postest:
  • Kennst du unsere Verhaltensregeln
  • Lange Codezeilen/Logs gehören nach NoPaste, in Deinen Beitrag dann der passende Link dazu.

gbrinkmann
Beiträge: 28
Registriert: 11.09.2002 13:30:36

Beitrag von gbrinkmann » 01.12.2005 18:21:19

sinnvoller ist sich einen eigenen Kernel zu kompilieren
Wuerde das was aendern? Oder meinst Du "einen eigenen Kernel zu schreiben"?
Als Begrüngung ist das dürftig.
Die war schon etwas genauer. Mal schauen, ob ich den Report finde....
Wenn jetzt niemand mein Englisch korrigiert, dann Bitteschoen ;) http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=339951

Bin mal gespannt, wann das System an dieser Stelle fuer einen normalen Benutzer wieder handhabbar wird.

rudra
Beiträge: 53
Registriert: 26.02.2003 23:02:45
Wohnort: Siegen

Beitrag von rudra » 09.12.2005 03:05:09

Hallo zusammen,

da ich das selbe Problem hatte habe ich mich mal ein wenig dahinter geklemmt. Habe jetzt auch eine Lösung für das Problem zusammengeglaubt. System ist testing.
Also die Regel wie sie von gbrinkmann gepostet wurde habe ich in die schon vorhandene Datei: udev.rules eingetragen. Ich habe nur den Namen geändert, welchen Namen das Interface danach erhalten/hören soll. Da es hierbei Probleme gibt, wenn die Standards "eth0-9" benutzt werden, einfach einen Namen der wahl benutzen. Noch eben die interface-Datei geändert und neu gebootet.
Leider funktioniert es aber immer noch nicht..........habe doch die Adresse richtig eingetragen........aha, siehe da, wenn meine prism54-Karte im iwconfig als noch nicht ready eingetragen ist, besitzt diese eine andere MAC-Adresse als wenn die Firmware geladen ist!? Also in der Regel die MAC-Adresse ohne Firmware eingetragen und nochmal neu gebootet - Schluss endlich wird die Karte mit dem Namen wlan immer, wirklich immer korrekt in das System eingebunden.
Ist ja schon ein Ding, das mit der MAC!? aber naja, jetzt läuft es bei mir :-)
Viel Spaß noch.

StevenSch
Beiträge: 3
Registriert: 15.12.2005 15:32:43

Beitrag von StevenSch » 15.12.2005 16:43:48

gbrinkmann hat geschrieben:Hier noch mal abschliessend, wie ich die udev-Regeln erstellt habe. Es scheint wirklich zu funktionieren:

In "/etc/udev/rules.d" habe ich die Datei "000_gert.rules" erstellt.

Darin steht:

Code: Alles auswählen

KERNEL="eth*", SYSFS{address}=="00:0a:e6:ac:f4:a7", NAME="LAN_INT"
KERNEL="eth*", SYSFS{address}=="00:00:1c:09:cc:af", NAME="LAN_EXT"
Die "address" ermittelt man wie folgt:

Code: Alles auswählen

udevinfo -a -p /sys/class/net/eth0/ | grep address
(Entsprechend fuer eth1)

Gruss,

Gert
Hatte die gleichen Probleme und das ganze mal auf die schnelle probiert.
Dabei ist mir aufgefallen:
Bei mir funktioniert das nur ohne Fehler mit EINEM = zwischen KERNEL und "eth*".
Der "NAME" darf NICHT eth0, eth1 etc sein und maximal 9 Zeichen lang.
In der Interfaces-Datei muss man dann noch eth0 und eth1 durch die hier in diesem Beispiel vergebenen "LAN_INT" und "LAN_EXT" ersetzen.
Auch iptables-Regeln müssen entsprechend angepasst werden, da im obigen Beispiel LAN_INT komplett eth0 ersetzt.

Ich hab das ganze mit bis zu 4 PCI-LAN-Karten gestestet und es funktionierte stehts einwandfrei.

Grüsse Steven
Edit: Syntax-Fehler im Zitat von Gert berichtigt, ich hoffe das ist i.O.

gbrinkmann
Beiträge: 28
Registriert: 11.09.2002 13:30:36

Beitrag von gbrinkmann » 06.01.2006 16:33:26

Edit: Syntax-Fehler im Zitat von Gert berichtigt, ich hoffe das ist i.O.
Klar ist das in Ordnung. Ich habe da nur eine Frage zu. Du hast ja das

SYSFS{address}="00:...

duch

SYSFS{address}=="00:...

mit Doppelgleichheitszeichen ersetzt. Das habe ich beides hier und da mal gesehen (in diversen Rules), konnte aber nicht finden, welche Bedeutung was davon hat. Wenn das einfache "=" falsch ist, dann ist das Howto "writing_udev_rules" in /usr/share/doc/udev des udev-Packetes inkorrekt.

gbrinkmann
Beiträge: 28
Registriert: 11.09.2002 13:30:36

Beitrag von gbrinkmann » 08.01.2006 14:42:17

Also bei mir funktioniert es auch mit nur einem "=":

Code: Alles auswählen

KERNEL="eth*", SYSFS{address}="00:0a:e6:dd:ee:a7", NAME="ethdsl"
KERNEL="eth*", SYSFS{address}="00:00:1c:09:dd:ee", NAME="ethlan"
Desweiteren muessen alle eth0 Angaben in /etc/network/interfaces durch (in meinem Fall) ethdsl ersetzt werden und eth1 durch ethlan. Dann nur noch in /etc/ppp/peers/dsl-provider in der Zeile
"plugin rp-pppoe.so ethdsl" das entsprechende Interface eintragen.

Danach musste ich in der Firewall noch das device von eth1 auf ethlan umstellen (Benutze "firestarter", wo ich einfach in den Prefs das Interface auswaehlen musste).

(Die Benamsung "eth*" habe ich gewaehlt, um leichter nach "eth" durchs /etc Verzeichnis greppen zu koennen, so dass man alles, was mit Ethernet Interfaces zusammenhaengt, finden zu koennen.)

miw8el
Beiträge: 1
Registriert: 02.03.2006 20:13:39
Wohnort: Hamburg

Beitrag von miw8el » 02.03.2006 20:33:29

steff aka sid hat geschrieben: Hab das Problem dann dadurch gelöst das ich mir nen script geschrieben hab dass das modul was nicht auf eth1 liegen sollte einfach mit modprobe -r geunloaded habe und dann das modul was eigentlich eth1 sein sollte mit modprobe neu geladen
Genau das wollte ich auch tun, doch dann habe ich das hier in /etc/modprobe.d/aliases reingeschrieben:

Code: Alles auswählen

alias eth0 e100
alias eth1 3c59x
install 3c59x /sbin/modprobe e100; /sbin/modprobe --ignore-install 3c59x
(s. man modprobe.conf)

Nun gehts erst mal. Allein die Reihenfolge in /etc/modules und die alias Definitionen in /etc/modprobe.d/alias anzugeben half nicht, da die Module zu diesem Zeitpunkt wohl bereits geladen sind, ohne die aliases auszuwerten.

Ich hoffe nun, dass es das wirklich war, denn vielleicht ist die Reihenfolge diesmal ja wieder nur zufällig richtig...

gruß,
mi

Benutzeravatar
KBDCALLS
Moderator
Beiträge: 22455
Registriert: 24.12.2003 21:26:55
Lizenz eigener Beiträge: MIT Lizenz
Wohnort: Dortmund
Kontaktdaten:

Beitrag von KBDCALLS » 02.03.2006 21:26:22

Wenn die Angabe der Reihenfolge in der

Code: Alles auswählen

/etc/modules
nicht hilft, dann müßte man sich mal die Initrd ansehen.
Was haben Windows und ein Uboot gemeinsam?
Kaum macht man ein Fenster auf, gehen die Probleme los.

EDV ist die Abkürzung für: Ende der Vernunft

Bevor du einen Beitrag postest:
  • Kennst du unsere Verhaltensregeln
  • Lange Codezeilen/Logs gehören nach NoPaste, in Deinen Beitrag dann der passende Link dazu.

meti
Beiträge: 559
Registriert: 19.12.2004 14:00:47
Lizenz eigener Beiträge: MIT Lizenz

Beitrag von meti » 06.04.2007 22:10:04

Warum eigentlich so kompliziert?

Es gibt doch die Möglichkeit das per udev regeln zu lassen indem einfach der PCI-Bus bzw. der Steckplatz als Grundlage verwendet wird.

Beispiel: in der /etc/udev/rules.d/z25-persistent-net-rules
SUBSYSTEM=="net", DRIVERS=="?*", ID=="0000:01:01.1", NAME="eth0"
SUBSYSTEM=="net", DRIVERS=="?*", ID=="0000:02:03.1", NAME="eth1"

Das klappt sogar auf einer Sun Ultra5 mit 2 Sun Happy Meal Netzwerkkarten, die systembedingt die gleiche MAC-Adresse haben.

gms
Beiträge: 7798
Registriert: 26.11.2004 20:08:38
Lizenz eigener Beiträge: MIT Lizenz

Beitrag von gms » 06.04.2007 22:16:50

meti hat geschrieben:Warum eigentlich so kompliziert?
weil deine Lösung ca 1 Jahr zu spät kommt :? :lol:

Gruß
gms

meti
Beiträge: 559
Registriert: 19.12.2004 14:00:47
Lizenz eigener Beiträge: MIT Lizenz

Beitrag von meti » 06.04.2007 22:41:37

gms hat geschrieben:
meti hat geschrieben:Warum eigentlich so kompliziert?
weil deine Lösung ca 1 Jahr zu spät kommt :? :lol:

Gruß
gms
Ups ... hab ich gar nicht gesehen ...

altzheimer
Beiträge: 221
Registriert: 06.03.2007 15:53:44
Kontaktdaten:

Beitrag von altzheimer » 07.05.2007 11:20:13

@meti
Danke für den "späten" Tip :D ! Ich hatte mit meiner Sun Netra und ihren Eigenheiten bei den Netzwerkkarten / Mac-Adressen ewig gekämpft und schon fast aufgegeben.

Gruß
Stephan

Antworten