Configuração de DNS para um Mandriva Directory Server 5.0

2

Acabei de herdar uma intranet onde um Mandriva Directory Server 5.0 atua como servidor DNS e DHCP interno , baseado em um servidor LDAP para armazenamento de configuração.

A idéia é que todos os hosts de intranet recebam um nome de entrada de DNS-ipdaddres onde o endereço IP esteja em um espaço privado NATted 10.0.*.*

Alguns desses hosts também são declarados em um DNS público real (internet :-)) apontando para o endereço IP público do roteador; ele cuida de alguns encaminhamentos de porta e redirecionamentos http para permitir que alguns serviços de intranet estejam disponíveis de fora do escritório sem um acesso semelhante a VPN ou túnel SSH.

O servidor DNS MDS, portanto, abrange apenas os endereços IP privados e confia nos servidores DNS públicos para o resto.

Agora, tenho algumas perguntas estritamente relacionadas sobre essa configuração. Eu não estou acostumado a arquivos de configuração mandriva, e estou um pouco confuso sobre a prática correta para esta configuração de dns 'duplo'

  1. ONDE posso modificar os servidores de nomes 'públicos' para o MDS?

    Está em /etc/sysconfig/network-scripts/ifcfg-eth0 , DNS1 e DNS2 ? Eles mudaram desde então.

  2. Qual é a melhor prática para que um host verifique primeiro o DNS do MDS e use o DNS público? Os hosts devem usar somente o DNS do MDS e o MDS acessa os DNSs públicos para obter as entradas ausentes ou ...?

editar

Avançando, mas ainda assim a questão principal parece a mesma.

Por favor, não que o servidor esteja funcionando atualmente e a maioria dos nomes de domínio foi resolvida, mas alguns não são, e provavelmente estavam usando um DNS público antigo e desatualizado.

Após o @TiZon informar, eu editei /etc/resolvconf/resolv.conf.d/tail para adicionar os servidores de nomes públicos.

Agora é isso que acontece. Quando o servidor de nomes principal falha, ele não faz fallback para os públicos:

dig rueducommerce.com @10.0.0.10

; <<>> DiG 9.5.0-P2 <<>> rueducommerce.com @10.0.0.10
;; global options:  printcmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: SERVFAIL, id: 55845
;; flags: qr rd ra; QUERY: 1, ANSWER: 0, AUTHORITY: 0, ADDITIONAL: 0

;; QUESTION SECTION:
;rueducommerce.com.             IN      A

;; Query time: 0 msec
;; SERVER: 10.0.0.10#53(10.0.0.10)
;; WHEN: Thu May 19 15:50:55 2011
;; MSG SIZE  rcvd: 35

Dig (ou nslookup, mesmo comportamento) sem especificar um servidor receberá o código de falha e tente o próximo servidor em /etc/resolv.conf e retorne corretamente o resultado.

dig rueducommerce.com

;; Got SERVFAIL reply from 127.0.0.1, trying next server

; <<>> DiG 9.5.0-P2 <<>> rueducommerce.com
;; global options:  printcmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 38942
;; flags: qr rd ra; QUERY: 1, ANSWER: 2, AUTHORITY: 0, ADDITIONAL: 0

;; QUESTION SECTION:
;rueducommerce.com.             IN      A

;; ANSWER SECTION:
rueducommerce.com.      440     IN      A       178.251.201.141
rueducommerce.com.      440     IN      A       178.251.200.141

;; Query time: 279 msec
;; SERVER: 8.8.8.8#53(8.8.8.8)
;; WHEN: Thu May 19 15:51:51 2011
;; MSG SIZE  rcvd: 67

mas o stackoverflow funciona

dig stackoverflow.com @10.0.0.10

; <<>> DiG 9.5.0-P2 <<>> stackoverflow.com @10.0.0.10
;; global options:  printcmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 40964
;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 3, ADDITIONAL: 0

;; QUESTION SECTION:
;stackoverflow.com.             IN      A

;; ANSWER SECTION:
stackoverflow.com.      1800    IN      A       64.34.119.12

;; AUTHORITY SECTION:
stackoverflow.com.      38      IN      NS      ns3.serverfault.com.
stackoverflow.com.      38      IN      NS      ns2.serverfault.com.
stackoverflow.com.      38      IN      NS      ns1.serverfault.com.

;; Query time: 230 msec
;; SERVER: 10.0.0.10#53(10.0.0.10)
;; WHEN: Thu May 19 16:02:24 2011
;; MSG SIZE  rcvd: 117

O que eu posso depurar para entender por que o stackoverflow está funcionando, mas o comércio não está?

Eu poderia adicionar um DNS público como um DNS secundário no DHCP (como?) e os clientes provavelmente se comportarão melhor (o mesmo que esta linha de comando), mas essa é a maneira correta de resolver esse problema? Para mim, parece que os clientes poderiam começar a obter resultados contraditórios do servidor privado e público.

Existe uma maneira de vincular / nomear ir buscar esses resultados ou dizer ao cliente para onde ir buscá-los?

Espero que a pergunta esteja clara o suficiente, não hesite em adicionar comentários caso eu precise declarar com mais clareza ou adicionar detalhes ... obrigado!

    
por Stefano 19.05.2011 / 12:07

1 resposta

1

As configurações de DNS são armazenadas em /etc/resolv.conf . O servidor (ou outros clientes que usam DHCP e obtêm a mesma lista) usará o primeiro servidor de nomes, se disponível, ele só voltará se o primeiro não responder (não se ele não souber). Então você deve tentar configurar o primeiro DNS (privado) para retransmitir para o DNS público.

Em /etc/resolv.conf , a primeira linha deve ser nameserver 127.0.0.1 . Coloque o seu público na segunda linha: nameserver 8.8.8.8 .

Se você tiver o resolv.conf.d em execução (verifique se a pasta etc / resolvconf / resolv.conf.d existe), nesse caso, anexe o nameserver público ao /etc/resolvconf/resolv.conf.d/tail

Agora teste de outro computador na rede:

nslookup serverfault.com 10.0.X.X

(onde 10.0.X.X deve ser o IP que o servidor MDS possui)

    
por 19.05.2011 / 12:13