Primäre / sekundäre Ethernet-Schnittstellen über NetworkManager in Ubuntu 9.10

2

Ich habe eine Ubuntu 9.10-Maschine mit drei Ethernet-Schnittstellen, eth0, eth1 und eth2. eth2 ist mit einem privaten Netzwerk verbunden. eth0 und eth2 sind mit zwei verschiedenen LANs verbunden. Beide bieten Zugang zum Internet. Alle drei Netzwerke haben DHCP-Server.

Wenn ich Ubuntus Standardeinstellungen (und Gnome) verwende, sind beim Booten alle Schnittstellen aktiv und mein System erhält drei IP-Adressen. Jeder Versuch, auf das Internet zuzugreifen, führt jedoch zu Verbindungsunterbrechungen und anderen Verrückten. Ich vermute, dass der Datenverkehr auf einer Netzwerkkarte (wie eth0) ausgeht und auf einer anderen (wie eth1) wieder hereinkommt. Ich bin nicht sicher, was los ist. Die einzige Möglichkeit, auf das Internet zuzugreifen, besteht darin, zwei der Geräte herunterzufahren ifdown.

Wie kann ich eth0als meine primäre Schnittstelle konfigurieren , sodass der gesamte Datenverkehr standardmäßig auf dieser Schnittstelle ausgeht, während die anderen beiden aktiv bleiben? Außerdem möchte ich sicherstellen, dass Avahi auf allen drei IP-Adressen ordnungsgemäß sendet, damit die Computer im LAN von eth1 weiterhin eine Verbindung zu myHostname.local herstellen können .

EDIT : Hier ist meine Routing-Tabelle:

Kernel IP routing table
Destination     Gateway         Genmask         Flags   MSS Window  irtt Iface
172.16.151.0    0.0.0.0         255.255.255.0   U         0 0          0 eth2
172.16.30.0     0.0.0.0         255.255.255.0   U         0 0          0 eth0
10.1.0.0        0.0.0.0         255.255.0.0     U         0 0          0 eth1
169.254.0.0     0.0.0.0         255.255.0.0     U         0 0          0 eth1
0.0.0.0         172.16.30.2     0.0.0.0         UG        0 0          0 eth0
0.0.0.0         10.1.0.1        0.0.0.0         UG        0 0          0 eth1

Ich möchte, dass das Netzwerk 172.16.30.2 das primäre und das Netzwerk 10.1.0.0 das sekundäre ist.

EDIT2 : Meine Nameserver sind auch falsch. Es scheint, als ob Ubuntu die Netzwerke in der Reihenfolge eth0, dann 1 und dann 2 aufruft, und die DHCP-Informationen von eth1 überschreiben eth0 und eth2 überschreiben eth1. Wie kann ich das umkehren, damit die DHCP-Information von eth0 der "Master" ist ?

EDIT3 : Dies scheint ein Problem mit Gnomes NetworkManager zu sein.

Josh
quelle
1
Was ist deine Routertabelle? Normalerweise sollte der gesamte nicht lokale Datenverkehr nur über eine Schnittstelle erfolgen.
txwikinger

Antworten:

3

Es wäre gut, Ihre Routing-Tabelle zu sehen, denn ich rate hier nur, aber es klingt, als ob Ihr Standard-Gateway nicht richtig eingestellt ist. Sie können dies mit dem Befehl route einstellen. Es wäre ungefähr so:

route add default gw XXX.XXX.XXX.XXX dev eth0

EDIT: Ich sollte erwähnen, dass diese Route nicht persistent ist. Wenn dies funktioniert, müssen Sie die Zeile zu Ihren Netzwerkskripten oder rc.local hinzufügen. Außerdem habe ich keine Ahnung, wie Avahi funktioniert.

Emgee
quelle
Dies behebt das Problem, aber ich habe auch gerade gesehen, dass meine Nameserver auch nicht korrekt sind ...
Josh
1
@emgee: Das funktioniert eigentlich nicht - es funktioniert für ein paar Minuten, aber dann kehrt die Routing-Tabelle zurück. Ich denke, das liegt an NetworkManager
Josh
1
Ah ... Nun, Sie könnten das Networking einfach manuell erledigen. So mache ich es normalerweise. Wenn Sie möchten, ist die Datei / etc / network / interfaces
emgee
networkmanager ist fehlerhaft: Wenn Sie eine grafische Benutzeroberfläche möchten, versuchen Sie es mit wicd (und entfernen Sie networkmanager), oder verwenden Sie die CLI, wie von emgee
dag729 am