Estabilidade de tinydns?

1

Estou usando tinydns atrás do dnscache para resolver nomes de máquinas em uma LAN, como instalado no Ubuntu 10.04 LTS. De vez em quando, sem explicação, os nomes locais não podem mais ser resolvidos por qualquer máquina na rede. Parece que tinydns não está mais respondendo. A reinicialização do servidor às vezes ajuda, mas não é assim que eu executo servidores Unix. Matar tinydns também parece funcionar às vezes, mas nem sempre.

Minha experiência geral ao tentar executar um servidor DNS local não foi boa, com ajustes cuidadosos de arquivos resolv.conf e falhas aparentemente aleatórias de tinydns. Se outras pessoas tiverem problemas com o djbdns, por favor me avise. Dicas de diagnóstico de DNS também são úteis.

Atualização:

Uma verificação rápida dos registros mostra reclamações sobre falha de E / S, seguidas por uma reclamação sobre a impossibilidade de vincular-se ao endereço fornecido. Às vezes nada é relatado nos logs, o aplicativo simplesmente pára de responder.

Apenas uma nota sobre a configuração, que tinha seus próprios problemas. O dnscache foi executado na eth0 em um endereço IP, e tinydns foi inicialmente executado em eth0: 0 em outro endereço IP. (Configurar o tinydns em 127.0.0.1 não funcionou, mesmo que o djb diga que deveria.) Entretanto, esta configuração (eth0: 0) não funcionou na reinicialização, já que o Ubuntu tem algum problema ao iniciar a eth0: 0 automaticamente. Alterar o alias para eth0: 1 permitiu que a interface surgisse automaticamente na reinicialização. isso é mais aventura do que o esperado para uma tarefa aparentemente simples.

Por enquanto, estou tentando tinydns em um servidor completamente separado, e reportarei de volta se isso for estável.

    
por casualcoder 24.01.2011 / 03:41

1 resposta

1

Não é o mais fácil de depurar isso, especialmente no UDP e com o tinydns (porta 53).

Primeiro, verifique se você configurou corretamente a configuração básica:

  1. certifique-se de que dnscache e tinydns sejam executados em dois endereços IP diferentes (para que eles não roubem o soquete um do outro)
  2. verifique se o seu 127.0.0.1:53 é gratuito, ou seja, nenhum outro daemon escuta o sistema ( netstat -n )
  3. execute tinydns no 127.0.0.1 e consulte-o manualmente com dig yr-authoritative-dom.com @127.0.0.1 . Isso DEVE funcionar sempre e de forma confiável
  4. execute o dnscache no endereço IP eth0 público. Em seu diretório root / servers /, aponte yr-authoritative-dom.com para 127.0.0.1. Em root / ip put 192.168 (ou qualquer prefixo de endereço que você tenha consultado)

Se isso não funcionar, considere as seguintes possibilidades:

  • existem alguns problemas com o esgotamento de recursos. Tente desabilitar o log do dnscache completamente (renomeie o "log / run") temporariamente e observe se o problema ocorre novamente.
  • algum outro processo está revinculando o socket IP: 53 do dnscache.
por 31.10.2011 / 22:14