Endereços MAC em mainboards dual-NIC

9

Aqui está um problema estranho.

Temos vários dispositivos com placas-mãe de NICs duplas. Algumas são placas de rede Realtek, que são ruins. Alguns são Intel e1000s, o que não acontece.

Acabei de notar em 2 máquinas, uma é uma Intel NIC, uma é uma Realtek, que quando Eu coloquei o endereço MAC de uma máquina no arquivo dhcpd.conf em nosso servidor DHCP para fazer com que o PXE inicialize a máquina em um ambiente de reconstrução, inicialmente está tudo bem.

O servidor obtém uma alocação de DHCP e o PXE é inicializado no ambiente de pré-configuração do Ubuntu.

Em uma ou duas máquinas, chega até a configuração de rede DHCP do Ubuntu e falha. Se eu puxar um shell do busybox (em tty2 na máquina de instalação) e executar ip link , posso ver que o sinalizador UP está definido na outra NIC.

Aqui estão algumas coisas.

  host xeon16-ghz240-gb48-node1 {
        hardware ethernet BC:AE:C5:07:1F:18;
        filename "pxelinux.0";
        next-server 192.168.123.80;
  }

Isso é o que está em dhcpd.conf

Isto é o que o ip link na máquina do mal parece.

Apenas uma NIC está realmente conectada (deliberadamente).

Como você pode ver, o NIC que está na configuração do dhcpd, não está marcado como UP, e o link que está UP, não é o do DHCP.

Até agora eu vi isso em duas marcas de configuração dual-NIC.

Alguém sabe 1) o que está causando isso, eb) O que podemos fazer sobre isso?

    
por Tom O'Connor 27.01.2012 / 16:50

2 respostas

8

Há sempre mais de uma maneira de fazer qualquer coisa:)

Solução 1

Motherboards com um de cada?

Blacklist, qualquer módulo ( ethtool -i eth0 ) está suportando o cartão Realtek.

O Ubuntu suporta module_name.blacklist=yes para colocar a lista negra na inicialização e você deve ser capaz de alterar as opções do modprobe no ambiente preseed para que ele não seja rastreado posteriormente.

Solução 2

Deixe-me reformular o problema:

We have motherboards with two NICs and we want them to work consistently no matter which interface is plugged in. We can't always determine which interface (from the OS point of view) will be plugged in.

Configure a ligação! Use uma configuração ativa-passiva ( mode=active-backup miimon=100 ) com ambas as interfaces como escravas. Dessa forma, sempre funcionará, independentemente da interface conectada.

Solução 3

As placas-mãe são consistentes o suficiente para que as NICs sempre apareçam na mesma ID PCI? Use as regras do udev para sempre atribuir o cartão em um endereço PCI específico para eth0 e o cartão no outro endereço para eth1.

Observe que você pode ter duas regras diferentes do udev que atribuem um dispositivo a eth0 - isso permite que você manipule o caso Realtek e e1000 ao mesmo tempo.

    
por 28.01.2012 / 17:15
5

Você pode tentar adicionar a opção PXELINUX IPAPPEND 2 ao seu arquivo pxelinux.cfg para informar aos scripts de inicialização para usar a interface que fez a inicialização PXE:

/var/lib/tftpboot/pxelinux.cfg/default

LABEL linux
   KERNEL /ubuntu/casper/vmlinuz 
   APPEND initrd=/ubuntu/casper/initrd.gz root=/dev/nfs boot=casper netboot=nfs nfsroot=192.168.1.1:/var/lib/tftpboot/ubuntu --
   IPAPPEND 2

veja: link

    
por 20.06.2012 / 21:36