O ISC DHCPD pode operar como um servidor DHCP Proxy para inicialização PXE?

2

Eu tenho uma LAN existente com um servidor DHCP que já distribui endereços IP.

Por vários motivos, não posso substituir esse servidor, por isso ainda será necessário distribuir os endereços IP.

Eu tenho experimentado com o Dnsmasq no modo Proxy para fornecer nomes de arquivos de inicialização do PXE. Agora eu tenho o Dnsmasq chainloading iPXE ok, mas descobri que o problema com o Dnsmasq é que no modo Proxy ele não envia as opções de DHCP para baixo. Portanto, não consigo enviar a opção 17 para inicializar o iSCSI SAN.

Eu li em algum lugar que não está habilitado no código-fonte. Ah, bem, então pensei que talvez devesse tentar o ISC DHCPD (versão padrão4 com o Ubuntu), mas não consigo encontrar nenhum exemplo de configuração que funcione como um Proxy.

  1. O ISC DHCPD funciona mesmo no modo Proxy? Exemplos na Web implicam em corrigir a origem.
  2. Que outras opções eu tenho?
por Matt 09.08.2012 / 12:37

2 respostas

2

Você pode analisar a criação de uma imagem iPXE personalizada com um script ipxe incorporado que encadeie tudo o que você deseja ver após a inicialização pela rede (por exemplo, menu.c32, vesamenu.c32, pxelinux etc.). O bom é que o iPXE não precisa de nenhuma opção DHCP aprovada (por exemplo, opções 66 e 67). O que está incorporado no script ipxe será usado em seu lugar. Só precisa de DHCP para atribuir um IP.

A possível desvantagem dessa abordagem é que você precisa inicializar um CD (é possível criar uma imagem ISO do ipxe), montar o ISO dentro de uma VM para inicializar a partir dele ou, se tiver uma inicialização PXE existente servidor e estão usando algo como pxelinux e menu.c32 / vesamenu.c32 você pode colocar uma imagem UNDI que o processo de compilação do ipxe irá gerar. A versão do ipxe do UNDI pode ser inicializada a partir do pxelinux e talvez de outros gerenciadores de inicialização.

Ainda estou tentando descobrir como usar o dnsmasq como um servidor proxyDHCP. Eu posso obtê-lo para inicializar a imagem ipxe via proxyDHCP, mas não consigo obter ipxe para obter um endereço IP DHCP depois que ele carrega. De eu posso dizer que é porque o cliente DHCP iPXE está preferindo o proxyDHCP como seu servidor DHCP (se isso faz sentido), o que parece estranho, dada a finalidade do servidor proxyDHCP - ou seja, para não precisar de um servidor DHCP.

EDIT: Aqui está uma configuração proxydhcp funcional para dnsmasq (finalmente descobri):

No arquivo /etc/dnsmasq.d/proxydhcp.conf incluído na configuração principal do /etc/dnsmasq.conf (por exemplo, linha de configuração conf-dir = / etc / dnsmasq.d):

port=0  
log-dhcp  
dhcp-match=ipxe,175  
dhcp-option=175,8:1:1  
dhcp-boot=net:ipxe,http://mynetbootserver.domain.com/boot/ipxeboot/${net0/mac}  
dhcp-boot=tag:!Iipxe,ipxe.0  
enable-tftp  
tftp-root=/tftpboot  
dhcp-range=192.168.0.0,proxy,255.255.0.0  
dhcp-range=10.0.0.0,proxy,255.0.0.0  
dhcp-range=172.16.0.0,proxy,255.255.0.0  
pxe-service=net:#ipxe,x86PC,"My Cool Netboot Processes",ipxe-native  

Funciona muito bem com outro servidor DHCP na rede. Minhas VMs inicializam pegando as opções proxyDHCP passadas para o cliente DHCP; no entanto, eu suponho (talvez incorretamente?) Que o cliente selecionará quaisquer opções de inicialização relacionadas a PXE (por exemplo, 66, 67) a partir de um servidor DHCP se já estiver configurado para fornecer essas opções.

Observe o uso de todo o espaço IP RFC1918 nas declarações de proxy. Não parece haver nenhum problema ao fazer isso - ou seja, nenhuma interferência visível em um servidor DHCP existente, porque, obviamente, isso é apenas um proxy e não um servidor DHCP autoritativo para uma sub-rede. Além disso, as opções do ipxe não são especificamente necessárias para suportar o proxydhcp, mas apenas um exemplo baseado em como eu escolho usá-lo; isto é, use proxydhcp para passar as informações do bootstrap do ipxe.

Em suma, proxyDHCP é uma maneira muito agradável de implementar de forma não invasiva a inicialização de rede PXE em ambientes onde você não é tecnicamente ou administrativamente capaz de modificar o (s) servidor (es) DHCP em execução em seu ambiente.

    
por 27.08.2012 / 06:25
0

Não, o servidor ISC DHCPD não suporta o modo ProxyDHCP. Nós tivemos uma ideia para um projeto GSoC na comunidade iPXE por algum tempo para implementar isso, mas nenhum estudante esteve disposto a assumir a tarefa ainda. Por outro lado, o dnsmasq pode ser configurado para funcionar no modo ProxyDHCP, mas sua configuração é puramente estática. Nós temos uma idéia para o GSoC deste ano estender o dnsmasq para que ele possa enviar solicitações DHCP para um servidor web que possa cuidar da lógica e enviar de volta uma resposta ao dnsmasq, que deve então retransmiti-la para o cliente ProxyDHCP. Você pode ler mais sobre isso nesta página: link

    
por 30.03.2013 / 10:13