Vários servidores PXE na mesma sub-rede

2

Eu tenho lutado com isso há algum tempo. Eu tenho algumas máquinas de teste que inicializam a partir da rede, eles recebem os dados de inicialização do servidor DHCP, isso diz a eles quem é o servidor de inicialização onde está o arquivo que eles inicializarão etc. No entanto, eu preciso adicionar um segundo servidor PXE na mesma sub-rede (criar outro Vlan não é uma opção agora).

Eu li em algum lugar que eu posso ser capaz de enviar certos parâmetros para determinadas máquinas com base em seu endereço MAC (assim escolhendo quais computadores inicializam a partir de qual servidor), mas não consigo encontrar como fazer isso, alguém sabe como? esta será a minha solução, mas não consigo encontrar a resposta.

Meu DHCP é um servidor Windows 2003

Eu tenho 2 servidores executando versões personalizadas do servidor Linux como servidores TFTP. Algumas máquinas usam dados para inicializar a partir do servidor 1, e as outras devem poder inicializar a partir do servidor 2.

Thx

EDIT: Eu já escolhi resposta, mas se alguém se importa, eu não usei chain loading como proposto, mas em vez disso escrevi um script gPXE e gravei-o com imagem ISO em um CD, inicializei com ele, o script foi executado e o PC é redirecionado para o servidor indicado no script este é o script que eu usei.

#!gpxe
dhcp net0
set filename pxelinux.0
set next-server 10.225.83.125   #Server your pointing to
set 210:string http://10.225.83.125/fogimg/  #if http the exact http address
imgfetch pxelinux.0       #name of the img file to fetch
imgload pxelinux.0        #name of the img file to load
boot pxelinux.0           #name of the img file to boot from
    
por Termiux 28.06.2011 / 17:32

3 respostas

3

Isso é possível se você usar gPXE . Você configura todos os hosts para inicializar usando o gPXE, em seguida, usa um script de servidor escrito em PHP ou algo do tipo para servir a imagem apropriada, dado um parâmetro de endereço MAC:

chain http://${next-server}/boot.php?mac=${net0/mac}

é o exemplo dado aqui .

Você não precisa gravar o gPXE em suas NICs (embora essa seja certamente uma opção válida): chainloading funciona muito bem .

Por fim, a página que descreve a configuração dos seus clientes gPXE no Win2k3 DHCP é aqui .

    
por 28.06.2011 / 19:20
2

Usamos o ISC dhcpd3 no nosso servidor DHCP Linux, não no Server 2003. Mas nós temos dois ambientes de netboot diferentes suportados lá. PXELinux para instalações Linux e o Microsoft Deployment Toolkit 2010 para instalações do Windows.

Assim, por exemplo, desde que nós TFTP do servidor DHCP, nossos clientes Linux têm entradas como

host linux-host {hardware ethernet 00:01:02:03:04:05;
                 fixed-address A.B.C.D; filename "pxelinux.0";}

e os clientes do Windows têm entradas como

host windows-host {hardware ethernet 00:06:07:08:09:10;
                   fixed-address A.B.C.E; use-host-decl-names on;
                   next-server A.B.C.F; option tftp-server-name "A.B.C.F";
                   option bootfile-name "boot\x86\wdsnbp.com";}

Esta é (eu acho) a configuração que o Chopper3 está descrevendo acima. Pessoalmente, eu nunca vou voltar para um servidor DHCP do Windows. Temos um script em Python que pode regenerar nossa configuração de DHCP em segundos para que possamos alternar entre os tipos de inicialização conforme necessário.

    
por 28.06.2011 / 19:21
1

O que você está procurando aqui é a capacidade de definir opções de BOOTP / DHCP 66 e 67 com base no MAC do cliente. Embora você possa definir facilmente essas opções globalmente usando o serviço DHCP padrão do Windows, não há nenhuma opção para torná-las seletivas, mesmo usando reservas.

Também não estou ciente dessa capacidade em outros servidores DHCP, portanto, outra possibilidade seria definir reservas de MAC para IP em seu servidor DHCP existente (para que você saiba em quais IPs sua máquina está) e use as opções 66 e 67 para distribuir o mesmo host de inicialização e arquivo para cada máquina, mas então na máquina que está distribuindo esses arquivos de inicialização, ele distribui arquivos diferentes com base no IP de origem - isso faz sentido?

    
por 28.06.2011 / 19:01