Schalten Sie eth0 und eth1 im Ubuntu-Server um

8

Ich habe ein einfaches Problem. Ich habe einen Computer mit Ubuntu Server 8.04 LTS mit 2 Netzwerkkarten. Eine auf dem Motherboard geht ins Internet und eine PCI-Karte in ein internes Netzwerk. Während der Installation wurde die Netzwerkkarte auf dem Motherboard als eth1 und die PCI-Karte als eth0 erkannt. Ich würde sie gerne umgekehrt haben. Insbesondere, weil die PCI-Netzwerkkarte nicht vom Host-Server verwendet wird, sondern nur für einige virtuelle Maschinen, die darauf ausgeführt werden.

Derzeit wird der Computer hochgefahren. Eth1 (Motherboard-NIC) erhält eine IP mit DHCP, während eth0 (PCI-NIC) in Ruhe gelassen wird. Dies ist genau das, was ich möchte, außer dass eth0 und eth1 wechseln.

Vielen Dank.

lanrat
quelle

Antworten:

15

Wie von tzafrir.net ohne weitere Erklärung erwähnt, müssen Sie auf Debian-basierten Systemen, die Ubuntu enthalten, die /etc/udev/rules.d/70-persistent-net.rulesDatei überprüfen und finden eine Zeile ähnlich der folgenden:

# PCI device 0x14e4:0x170c (b44)
SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="00:15:c5:6d:b1:9e", ATTR{type}=="1", KERNEL=="eth*", NAME="eth0"

Sie finden natürlich eine mit NAME = "eth0" und eine mit "NAME = eth1", haben aber jeweils die entsprechenden MAC-Adressen. Sie können die NAMEWerte einfach austauschen und Ihren Computer neu starten, und das System benennt sie um. Sie könnten ihnen sogar einen anderen Namen geben, wanoder lanes spielt keine Rolle, solange Ihre Routen und andere Konfigurationen dieselben Namen verwenden.

Auf RedHat-basierten Systemen, einschließlich Fedora und CentOS, würde dies durch Ändern der HWADDRZeile in der entsprechenden /etc/sysconfig/network-scripts/ifcfg-ethXDatei erreicht.

Ziel ist es, beim Neustart dieselbe Netzwerkkarte beizubehalten, von der der Kernel in der Vergangenheit bekannt war, um die Reihenfolge zu ändern, in der PCI-Karten adressiert werden, wodurch die Netzwerkkartenreihenfolge ausgetauscht werden kann.

Jeremy Bouse
quelle
1
Vielen Dank. Ich musste auch / etc / network / interfaces bearbeiten und eth1 in eth0 ändern.
Lanrat
Wenn Sie nur ändern wollten, welche Netzwerkkarte eth0 war, hätten Sie nur die 70-persistent-net.rulesDatei ändern müssen . Diese Datei wird tatsächlich von udev erstellt, wenn sie beim Booten des Systems nicht vorhanden ist. Wenn Sie die interfacesDatei so konfiguriert hätten , dass sie mit der richtigen Netzwerkkarte umgangen wird, müssten Sie sie ebenfalls ändern.
Jeremy Bouse
6

Sie können die Namen der beiden Geräte in /etc/udev/rules.d/70-persistent-net.rules problemlos ändern

Tzafrir
quelle