Hier ist ein seltsames Problem.
Wir haben eine Reihe von Geräten mit Dual-NIC-Mainboards. Einige sind Realtek-NICs, die saugen. Einige sind Intel e1000s, die dies nicht tun.
Ich habe gerade auf 2 Computern bemerkt, einer ist eine Intel-Netzwerkkarte, einer ist ein Realtek. Wenn ich die MAC-Adresse eines Computers in die dhcpd.conf
Datei auf unserem DHCP-Server eingebe, um sie zu PXE zu bringen, starte der Computer in einer Wiederherstellungsumgebung. anfangs ist alles in ordnung.
Der Server erhält eine DHCP-Zuweisung, und PXE startet in die Ubuntu-Umgebung.
Auf einem oder zwei Computern reicht es bis zur DHCP-Netzwerkkonfiguration von Ubuntu und schlägt fehl. Wenn ich eine Busybox-Shell (auf tty2
dem installierenden Computer) aufrufe und ausführe ip link
, kann ich sehen, dass das UP-Flag auf der anderen Netzwerkkarte gesetzt ist.
Hier sind einige Sachen.
host xeon16-ghz240-gb48-node1 {
hardware ethernet BC:AE:C5:07:1F:18;
filename "pxelinux.0";
next-server 192.168.123.80;
}
Das ist was drin ist dhcpd.conf
So sieht der IP-Link auf der bösen Maschine aus.
Tatsächlich ist nur eine Netzwerkkarte (absichtlich) verbunden.
Wie Sie sehen können, ist die Netzwerkkarte in der dhcpd-Konfiguration nicht als UP markiert, und der Link UP ist nicht der in DHCP.
Bisher habe ich dies bei zwei Marken von Dual-NIC-Konfigurationen gesehen.
Weiß jemand 1) was es verursacht und b) was wir dagegen tun können?
quelle
dhcpd.conf
Datei beim Einrichten eines Kickstarts MAC und MAC + 1 hinzugefügt hat .netcfg/choose_interface
eingestellt?./master/master_preseed.cfg:d-i netcfg/choose_interface select auto
Antworten:
Es gibt immer mehr als einen Weg, etwas zu tun :)
Lösung 1Motherboards mit jeweils einem?
Blacklist für jedes Modul (
ethtool -i eth0
), das die Realtek-Karte unterstützt.Ubuntu unterstützt
module_name.blacklist=yes
das Blacklisting beim Booten und Sie sollten in der Lage sein, die Modprobe-Optionen in der vorab festgelegten Umgebung zu ändern, damit es später nicht überprüft wird.Lösung 2
Lassen Sie mich das Problem umformulieren:
Verklebung einrichten! Verwenden Sie eine Aktiv-Passiv-Konfiguration (
mode=active-backup miimon=100
) mit beiden Schnittstellen als Slaves. Auf diese Weise funktioniert es immer, egal welche Schnittstelle angeschlossen ist.Lösung 3
Sind die Motherboards konsistent genug, dass die Netzwerkkarten immer auf derselben PCI-ID angezeigt werden? Verwenden Sie die udev-Regeln, um eth0 immer die Karte an einer bestimmten PCI-Adresse und eth1 die Karte an der anderen Adresse zuzuweisen.
Beachten Sie, dass Sie zwei verschiedene udev-Regeln haben können, die eth0 ein Gerät zuweisen. Auf diese Weise können Sie den Fall Realtek und e1000 gleichzeitig bearbeiten.
quelle
Sie können versuchen, Ihrer Datei pxelinux.cfg die Option PXELINUX IPAPPEND 2 hinzuzufügen, um Init-Skripten anzuweisen, die Schnittstelle zu verwenden, über die der PXE-Start durchgeführt wurde:
/var/lib/tftpboot/pxelinux.cfg/default
Siehe: http://www.syslinux.org/wiki/index.php/SYSLINUX#IPAPPEND_flag_val_.5BPXELINUX_only.5D
quelle