No passado, eu configurei um servidor PXE várias vezes, fazendo com que o servidor dhcp normal retornasse tudo o que era necessário para a inicialização pela rede: tanto a configuração regular do ip quanto as informações de inicialização em uma única configuração dhcp. Dessa forma, é fácil de fazer .
De acordo com a documentação que eu li (a wikipedia possui um bom resumo ), deve ser possível ter um servidor dhcp não modificado (por exemplo, se o administrador do seu local negar acesso) e um servidor separado que apenas retorne as informações de inicialização. Isso geralmente é chamado de servidor "PXE" ou "Proxy DHCP". No passado, eu vi (não usei) esse servidor pxe (a última versão foi há 5 anos).
Ontem instalei o Cobbler para ver o que ele realmente faz. Agora eu gostaria de usá-lo (adoro a facilidade de uso), mas modificar o servidor dhcpd 'main' para obter o PXE não é uma opção.
Não consegui encontrar nenhuma documentação sobre como executar o sapateiro usando um servidor PXE (== proxy dhcp) real.
Isso pode ser feito com sapateiro?
Posso configurar o servidor isc dhcp para se comportar como um servidor PXE (por exemplo, NO ip info, only boot info)?
Ou devo optar por uma abordagem completamente diferente (se sim, qual é a sua sugestão)?
obrigado
Nova descoberta que acabei de fazer: o changelog para dnsmasq versão 2.4.8 diz:
"Proxy-DHCP, onde o dnsmasq apenas fornece as informações PXE e outro servidor DHCP faz a alocação de endereços, também é permitido."
MUITO INTERESSANTE. Especialmente porque o sapateiro já pode controlar o dnsmasq.
Atualizar:
O dnsmasq 2.51 suportará essa configuração que executa totalmente o truque que eu queria.
Meu /etc/cobbler/dnsmasq.template agora fica assim:
# Cobbler generated configuration file for dnsmasq
# $date
#
# resolve.conf .. ?
#no-poll
#enable-dbus
read-ethers
addn-hosts = /var/lib/cobbler/cobbler_hosts
# Be a proxyDHCP server
dhcp-range=10.10.0.0,proxy
# Only respond to clients that are known (i.e present in /etc/ethers)
dhcp-ignore=#known
# Set this (and domain: see below) if you want to have a domain
# automatically added to simple names in a hosts-file.
expand-hosts
domain=test.basjes.nl,10.10.15.0
# Loads <tftp-root>/pxelinux.0 from dnsmasq TFTP server.
pxe-service=x86PC, "Boot PXELinux (=Cobbler controlled)", pxelinux ,$next_server
$insert_cobbler_system_definitions
Atualização: 30-04-2012
Alguns meses atrás, recebi um e-mail de alguém informando que ele não conseguia fazer o trabalho acima. Acontece que eu havia reparado e trocado meu sapateiro de que havia esquecido. Então, eu forneci a correção crucial para o sapateiro principal, que acaba de se tornar parte do tronco. Eu também criei alguma documentação de suporte adicional .
Respostas:
O que fazemos é montar um arquivo ISO que criamos, inicializar um kernel e initrd a partir dele e carregar um kickstart a partir de um local central. Esse arquivo kickstart aponta para um repositório com arquivos RPM, que pode ser o seu servidor de sapateiro.
Não tenho muita experiência com o Sapateiro (infelizmente), mas talvez essa seja uma opção para você?
fonte
A ROM do PXE precisa de uma diretiva "próximo servidor" do servidor DHCP para encontrar e carregar o gerenciador de inicialização (seja grub, pxelinux ou qualquer outro gerenciador de inicialização). Se um "próximo servidor" não for fornecido, cabe à ROM do PXE decidir o que fazer. Você precisará examinar a configuração da BIOS da placa de rede e verificar se existe uma opção para talvez especificar o servidor manualmente.
Conforme observado pela resposta acima, usar um ISO ou USB Stick personalizado para inicializar a máquina, com todas as informações já fornecidas na linha de comando do kernel é provavelmente o melhor caminho a percorrer. Se você não tem acesso à configuração do servidor DHCP.
fonte
se você quiser apenas executar alguns testes, poderá ter vários servidores dhcp na mesma rede. você pode fazer com que o sapateiro crie uma configuração dhcpd que instrua o servidor apenas a responder quando um determinado MAC estiver fazendo uma solicitação ARP. e se você simplesmente comentar / desativar qualquer intervalo nesse servidor (e eu estou falando sobre o isc-dhcpd aqui), não será invasivo. Você pode obter algumas caixas de janelas reclamando (em transmissões) sobre esse servidor dhcp não ser autoritário se você estiver usando o AD e tal, mas, além disso, acho que não há muito perigo.
Mas a melhor maneira é ter o sapateiro / dhcp e os servidores que você está tentando provisionar em uma VLAN separada do restante da sua rede. Dessa forma, você limita seu domínio de transmissão e nenhuma outra caixa verá seus anúncios dhcp.
fonte