Ubuntu recebendo nome de host errado do DHCP

0

Ao provisionar novos servidores Ubuntu Precise (12.04), o nome do host que eles estão recebendo parece ser gerado a partir do caminho de pesquisa do DNS, não uma pesquisa inversa no nome do host.

Faça a seguinte configuração

BIND é configurado com o nome do host e o nome reverso

Zona normal $ TTL 600 $ ORIGIN srv.local.net.

@ IN SOA ns0.local.net.  hostmaster.local.net. (
        2014082101
        10800
        3600
        604800
        600 )

@               IN      NS      ns0.local.net.
@               IN      MX      5   mail.local.net.

my-new-server           IN      A       10.32.2.30

E inverta @ IN SOA ns0.local.net. hostmaster.local.net. (2014082101 10800 3600 604800 600)

@ IN NS ns0.local.net.

$ORIGIN 32.10.in-addr.arpa.

30.2  IN  PTR my-new-server.srv.local.net.

Em seguida, o DHCPD é configurado para distribuir concessões estáticas com base em endereços mac como esses

subnet 10.32.2.0 netmask 255.255.254.0 {
    option subnet-mask 255.255.254.0;
    option routers 10.32.2.1;
    option domain-name-servers 10.32.2.1;
    option domain-name "util.of1.local.net of1.local.net srv.local.net";

    site-option-space "pxelinux";
    option pxelinux.magic f1:00:74:7e;
    if exists dhcp-parameter-request-list {
        option dhcp-parameter-request-list = concat(option dhcp-parameter-request-list,d0,d1,d2,d3);
    }

    group {

        option pxelinux.configfile "pxelinux.cfg/pxeboot";

        host my-new-server {
            fixed-address my-new-server.srv.local.net;
            hardware ethernet aa:aa:aa:bb:bb:bb;
        }
    }
}

Portanto, o nome do host deve ser my-new-server.srv.local.net, no entanto, ao criar um nó Ubuntu 12.04, o nome do host acaba comomy-new-server.util.of1.local.net

Ao criar hosts Lucid (10.04), o nome do host estará correto; somente nos nós do Precise / 12.04 temos o problema.

Fazer uma pesquisa normal e reversa no host e no IP retorna o resultado correto

Sams-MacBook-Pro:~ sam$ host my-new-server
my-new-server.srv.local.net has address 10.32.2.30
Sams-MacBook-Pro:~ sam$ host my-new-server.srv.local.net
my-new-server.srv.local.net has address 10.32.2.30
Sams-MacBook-Pro:~ sam$ host 10.32.2.30
30.2.32.10.in-addr.arpa domain name pointer my-new-server.srv.local.net.

O conteúdo do arquivo hosts também está incorreto

127.0.0.1       localhost
127.0.1.1       my-new-server.util.of1.local.net of1.local.net srv.local.net       my-new-server

Assim, ao criar o arquivo hosts, parece que ele coloca todo o conteúdo do caminho de pesquisa DNS no endereço local, de modo que o FQDN de acordo com o servidor seja o nome abreviado do host, conforme definido, e o primeiro domínio no caminho de pesquisa.

Existe uma maneira de contornar esse comportamento ou corrigir isso para que ele obtenha o nome do host corretamente? Ele está pegando a primeira parte do nome do host e o resto está errado.

mancha
fonte

Respostas:

0

Corrija-o no seu /etc/hostsarquivo, é aí que está errado. Os nomes no arquivo hosts substituem o que está no DNS. Quanto ao local onde ele pegou o util.of1.local.net durante a instalação, está ali na sua configuração do DHCP:

opção nome do domínio "util.of1.local.net of1.local.net srv.local.net";

Você pode vê-lo preso literalmente no /etc/hostsarquivo, espaços e tudo ...

Lembre-se de que a domain-nameopção por definição deve conter apenas um nome de domínio, o domínio padrão. Mas é aqui que as coisas ficam complicadas. Em plataformas Linux mais antigas, como testemunha aqui, ela pegaria a string na opção domain-name e a colocaria cegamente em lugares como /etc/hosts, e também a colocaria no /etc/resolv.confparâmetro de pesquisa que efetivamente forneceu um conjunto de listas de pesquisa. A maneira correta de transmitir isso hoje é usar a domain-searchopção, por exemplo,

opção de pesquisa de domínio "util.of1.local.net", "of1.local.net", "srv.local.net";

Infelizmente, isso será ignorado na versão 12.04 mais antiga e não fornecerá um conjunto de listas de pesquisa.

Então, eu acho que você está apenas tentando consertar o que há /etc/hostsdepois de cada instalação, pois esse é um ponto de contato único.

E você provavelmente sabe disso, mas a versão mais recente do Ubuntu LTS é 14.04.1 até o momento. Existem várias correções de bugs nessa versão do LTS, em comparação com a 12.04, você realmente deveria usar a 14.04.1, se possível. Você pode configurar o cliente DHCP (in /etc/dhcp/dhclient.conf) para solicitar o parâmetro de pesquisa de domínio e fazer as coisas corretamente.

mili
fonte