Вот странная проблема.
У нас есть несколько устройств с платами с двумя сетевыми платами. Некоторые из них являются сетевыми картами Realtek, которые отстой. Некоторые из них Intel E1000s, которые этого не делают.
Я только что заметил, что на 2 машинах, одна из них - сетевая карта Intel, другая - Realtek, - когда я помещаю MAC-адрес одной машины в dhcpd.conf
файл на нашем DHCP-сервере, чтобы передать его в PXE, загрузите машину в среду восстановления, изначально все нормально.
Сервер получает распределение DHCP, и PXE загружается в среду preseed Ubuntu.
На одной или двух машинах он достигает конфигурации сети Ubuntu DHCP и завершается ошибкой. Если я открою оболочку busybox (на установочной tty2
машине) и запустлюсь ip link
, я увижу, что флаг UP установлен на другой сетевой карте.
Вот кое-что
host xeon16-ghz240-gb48-node1 {
hardware ethernet BC:AE:C5:07:1F:18;
filename "pxelinux.0";
next-server 192.168.123.80;
}
Вот что в dhcpd.conf
Вот как выглядит IP-ссылка на злой машине.
Только один NIC действительно подключен (намеренно).
Как вы можете видеть, сетевая карта, которая находится в конфигурации dhcpd, не помечена как UP, а ссылка UP - не та, что в DHCP.
До сих пор я видел это на двух марках конфигурации с двумя сетевыми платами.
Кто-нибудь знает 1) что это вызывает, и б) что мы можем с этим поделать?
источник
dhcpd.conf
файл при настройке Kickstart.netcfg/choose_interface
установлено?./master/master_preseed.cfg:d-i netcfg/choose_interface select auto
Ответы:
Всегда есть несколько способов сделать что-нибудь :)
Решение 1Материнские платы с одной из каждой?
Черный список, какой бы модуль (
ethtool -i eth0
) не поддерживал карту Realtek.Ubuntu поддерживает
module_name.blacklist=yes
внесение его в черный список при загрузке, и вы сможете изменить параметры modprobe в среде preseed, чтобы позже его не проверяли.Решение 2
Позвольте мне перефразировать проблему:
Установите связь! Используйте активно-пассивную конфигурацию (
mode=active-backup miimon=100
) с обоими интерфейсами в качестве ведомых. Таким образом, он всегда будет работать независимо от того, какой интерфейс подключен.Решение 3
Достаточно ли стабильны материнские платы, чтобы сетевые адаптеры всегда отображались с одним и тем же PCI ID? Используйте правила udev, чтобы всегда назначать карту на определенном PCI-адресе для eth0, а карту на другом адресе для eth1.
Обратите внимание, что у вас может быть два разных правила udev, которые назначают устройство для eth0 - это позволяет обрабатывать случай Realtek и e1000 одновременно.
источник
Вы можете попробовать добавить опцию PXELINUX IPAPPEND 2 в файл pxelinux.cfg, чтобы указать сценариям инициализации использовать интерфейс, который загрузил PXE:
/var/lib/tftpboot/pxelinux.cfg/default
см .: http://www.syslinux.org/wiki/index.php/SYSLINUX#IPAPPEND_flag_val_.5BPXELINUX_only.5D
источник