Eu tenho uma instalação do XenServer com máquinas Debian (lenny) criadas diariamente usando um script que cria a máquina a partir de um modelo e a atribui com um novo nome de host.
Nossa rede possui um dispositivo Fortinet 60B que funciona como servidor DHCP e um Microsoft Windows 2008 DC que também serve como servidor DNS. Gostaria de configurar o modelo da VM para enviar seu nome de host para o servidor DNS quando obtiver um IP concedido do DHCP.
Atualmente, o Fortinet atribui o controlador de domínio como servidor DNS junto com a concessão de IP. Tentei adicionar uma linha 'send host-name "my-host-name"' ao /etc/dhcp3/dhclient.conf, mas nada é atualizado no controlador de domínio.
Respostas:
Então, basicamente, você quer que seu cliente envie o nome do host para o servidor DNS?
Isso funciona muito bem com clientes Windows, mas, para máquinas Linux, eu faria o contrário: configure seus clientes para solicitar ao servidor DHCP um IP e um nome de host. Usando a opção "request host-name", o dhclient pede ao servidor DHCP para enviar um nome de host junto com o endereço IP e depois define o nome de host da VM.
Obviamente, você precisará preparar, no seu DNS, um nome de host para cada endereço IP no intervalo DHCP.
Dessa forma, você não tem o problema de atraso na propagação / cache do DNS e pode ter um lugar central com todos os nomes de IP e host - seu servidor DNS.
Não sei se o servidor DHCP do seu dispositivo suporta o envio de nomes de host - a maioria sim, mas acho que é a maneira mais fácil para os clientes Linux.
Nota: Se você configurou o servidor DHCP para que a mesma máquina sempre obtenha o mesmo endereço IP (por exemplo, usando o endereço mac), obviamente também sempre obterá o mesmo nome de host. Em algum servidor DHCP, você pode usar diretamente o nome do host em vez do endereço IP nos arquivos de configuração.
fonte
Acabei usando um script que executa o nsupdate após a VM ser criada a partir do modelo e após cada inicialização.
fonte
Isso é um pouco semelhante à minha própria pergunta . Dê uma olhada no meu comentário final para a única resposta que recebi, onde me refiro ao dhclient.conf.
fonte
Descobri duas coisas necessárias para obter uma máquina que não ingressou no domínio para registrar e atualizar seus registros DNS em um servidor Windows DC \ DNS:
Configure o servidor DC \ DNS para permitir atualizações DNS dinâmicas seguras e não seguras.
Configure o FQDN do host não associado ao domínio para corresponder ao seu nome do AD \ DNS: como em host.domain.com
fonte
Hmm. Nunca tentei essa configuração exata - já trabalhei com clientes Linux em servidores DHCP do Windows, mas nessa configuração o servidor DHCP faz a atualização. Não tenho certeza se a caixa Fortinet faz a mesma coisa.
Você pode tentar fazer o cliente falar diretamente com o servidor DNS; algo como:
em /etc/dhcp3/dhclient.conf. Verifique
man dhclient.conf
para mais informações. Eu tive que definir pelo menossend fqdn.fqdn
para fazê-lo funcionar na minha configuração.Você também precisará ativar atualizações inseguras nas zonas DNS.
fonte
Muitos podem considerar isso flagrantemente óbvio, mas certifique-se de especificar sua própria diretiva de solicitação na
dhclient.conf
qual não solicita um nome de host ou nome de domínio . O padrão na minha distribuição era:Observe que isso solicita nomes de host e domínio do servidor que anula uma
send host-name ...
diretiva. Minhas diretivas de solicitação e de envio de host são assim:fonte