DNS Linux leve [fechado]

6

Alguém pode recomendar um servidor DNS Linux leve, que seria adequado para o data center?

EDITAR: Nós falamos sobre datacenter tipicamente dentro de 10 - 20 servidores, até 100 no máximo. Para uma quantidade maior, há uma sensação de usar o BIND, de fato.

Estou procurando por algo mais leve, o BIND (se é que existe algo assim).

Se estiver incluído nos repositórios comuns do YUM para o CentOS 5.4, melhor.

    
por SyRenity 05.01.2010 / 19:45

6 respostas

7

Que tipo de DNS você precisa? Você precisa de um resolvedor recursivo para clientes no datacenter? Um servidor autoritativo para alguns domínios que você está hospedando? Deseja remover uma dependência (pesquisas de DNS recursivas externas) de seus próprios servidores?

A resposta curta (e isso é algo de uma questão religiosa, por isso, tome-o com um pedaço de sal):

  • executam resolvedores recursivos no host local de cada servidor, cada servidor usa a si próprio para DNS recursivo. O PowerDNS faz um resolvedor que funciona no Windows e no Unix; O dnscache do DJB, parte do pacote tinydns, também é 100% à prova de balas, mas você pode precisar ajustá-lo para que ele possa seguir cadeias de nomes muito longos (akamai, estou olhando para você).

  • execute um servidor DNS separado para os endereços que você possui. Novamente, o PowerDNS é uma opção usada pela Wikipedia. Ele tem todos os tipos de bons back-ends de arquivos de zona de ligação para bancos de dados postgresql. Tinydns é ótimo também, embora um pouco estranho se você estiver vindo de terra firme. Execute esses servidores DNS em suas interfaces "não-locais" e publique esses endereços com seu registrador. Seja mestre do seu próprio domínio!

  • se você estiver fornecendo serviço recursivo a outros hosts no datacenter, execute o dnscache ou o pdns-recursor em uma máquina que não forneça serviços DNS e defina as ACLs do resolvedor para atender apenas às solicitações de serviço de dentro do data center. Hosts aleatórios na Internet podem conduzir ataques mal-intencionados de envenenamento de cache contra servidores DNS, portanto eles não devem ser confiáveis se você tiver uma escolha.

O PowerDNS é mais fácil de instalar a partir de um pacote; no passado distante, DJB era super paranóico em relação a terceiros que bagunçavam seus bebês, então ele tinha restrições de licença estranhas em distribuições binárias; estes foram removidos desde então, mas os sentimentos negativos em relação ao conjunto de utilitários DNS do DJB permanecem.

    
por 05.01.2010 / 20:46
8

dnsmasq pode ser uma boa opção. Pode fazer tanto o dns quanto o dhcp. Apenas usa o arquivo host e tem configuração simples. E deve estar nos repositórios padrão para sua distribuição.

Edit: Deixe-me esclarecer minha resposta, pois está recebendo alguns votos e comentários. A questão não está clara quanto ao caso de uso e à escala. Então, embora você possa não concordar, o dnsmasq é uma solução completamente válida sob as circunstâncias corretas. O OP vai ter que descobrir o que se encaixa no seu caso particular, já que a questão deles era um pouco carente de detalhes.

Eu só recomendaria isso como uma solução viável se fosse para a resolução do DNS interno no segmento de LAN privada do data center. Assumindo que não estamos falando de centenas de servidores. Se você deseja executar seu próprio DNS público, é melhor estar preparado para executar uma solução de DNS avançada em pelo menos dois datacenters diferentes.

    
por 05.01.2010 / 19:59
7

Dê uma olhada no DNS do DJB (djbdns e tinydns) do link ? É até possível usar os arquivos de zona do BIND.

    
por 05.01.2010 / 19:56
5

Eu uso nsd para servidores de nomes autorizados. Tenha em mente que o all nsd age como um servidor de nomes autoritativo, então eu uso "unbound" (dos mesmos desenvolvedores) internamente para as consultas recursivas dos próprios servidores.

Para uma referência (um tanto sem sentido), um servidor de nomes principal, que atende a meia dúzia de zonas com talvez 20 registros cada, tem um consumo de memória de cerca de 1,1 MB.

Eu achei o nsd muito estável. O único problema é que as transferências de zona entre servidores podem ser complicadas, certamente não como plug-and-play como entre 2 servidores BIND. Acabei usando um script rsync para atualizar / reconstruir / recarregar os registros do meu servidor de nomes secundário.

Outra opção que eu já experimentei é o MaraDNS, que tem um bom desempenho, mas não muito mais leve que o BIND.

    
por 05.01.2010 / 20:08
4

IMHO o "peso" do serviço DNS não é o software em si, mas o tráfego que ele manipula e o trabalho que ele precisa fazer para resolver um endereço. Você pode implantar vários DNS em seu data center para minimizar a carga e diminuir o possível ponto único de falha. Mas tenha em mente que um DNS de baixo desempenho pode reduzir o desempenho de outros serviços.

    
por 05.01.2010 / 19:58
1

Desde que esta pergunta foi feita, houve mudanças no panorama do DNS que merecem ser mencionadas. Parece que o consulente está buscando um recursor de DNS. As opções que valem a pena discutir são:

  • unbound - Um resolvedor de DNS com recursos completos, mas ainda leve. Não consolidado é pequeno, sólido e seguro . É o primeiro resolvedor de terceiros a substituir o BIND em uma versão do sistema operacional. É altamente recomendado.
  • dnscache - lançado como parte do djbdns , é o recursor de DNS leve original. É sólido como pedra, não vaza memória, é muito seguro , e é muito seguro funciona bem. Desvantagens são uma instalação um pouco incomum , falta de DNSSEC, sem suporte para múltiplas CPUs e Manipulação de CNAME que falha em circunstâncias suficientes para incomodar.
  • PowerDNS Recursor - É mais difícil chamar os pdns de leves. O PowerDNS se auto-intitula um recursor de "alto desempenho" e tem um pior registro de segurança do que o dnscache e o unbound. Eu não tenho experiência suficiente para comentar mais.
  • BIND - Não é justo chamar o BIND de leve, esse não é o foco. O BIND pretende ser o servidor DNS máximo, suportando todos os protocolos DNS em todos os sistemas operacionais. Isso geralmente traz uma penalidade a ser paga em termos de desempenho, tamanho e especialmente segurança .

As opções para um servidor DNS autoritativo leve são consideravelmente mais amplas agora do que no passado. Knot, NSD, tinydns e Yadifa têm vulnerabilidades de segurança baixas ou inexistentes (pontos de bônus para tinydns desde que foi lançado por muito mais tempo), são daemons muito leves. Todos os 4 têm um desempenho muito bom, cada um com pontos esotéricos particulares.

  • Knot, NSD, Yadifa - Tudo muito leve, seguro e muito, muito rápido. Esses três foram escritos para servir os TLDs (poucas zonas, muitos registros), mas também funcionam bem para atender a carga de trabalho mais comum do ISP de muitas zonas, com um punhado de registros cada.
  • tinydns - altamente seguro e muito rápido. Suporta DNSCurve (quase 0% de adoção) e não DNSSEC (generalizada e crescente). Instalação incomum, mas extremamente confiável em operação.
  • PowerDNS - O PowerDNS tem um bom desempenho. Como o BIND, um escolheria o PowerDNS mais por seu conjunto de recursos do que seu desempenho e segurança.
  • BIND - como mencionado anteriormente, não é leve.

Another requirement, is for the solution to be HA, meaning the DNS servers will sync the data between themselves. And last (preferred but not a must), is to have some simple web front-end for the whole stuff.

Somente o PowerDNS tem uma interface da Web "empacotada" com o servidor DNS. Para um front-end da web para gerenciar DNS autoritativo , há várias opções. O NicTool é obviamente o meu favorito, já que pode ser usado com tinydns, BIND, Knot, NSD, Yadifa ou qualquer combinação deles.

    
por 10.07.2014 / 21:38