Qual é a diferença real entre um registro Host e um registro A? Ambos apontam para um IP, então qual é a diferença?
Responder1
Não existe um registro Host na especificação DNS real. Os registros de host são geralmente uma construção lógica emDDI (DNS, DHCP e IPAM)soluções comoInfobloxe outros. Eles compreendem vários tipos de registros DNS (A, AAAA, PTR, CNAME, etc) e outros metadados associados a um “host”.
Responder2
Como outros afirmaram, não existe registro de "host" na especificação DNS. A maioria das pessoas confunde nomes de host e registros DNS porque o DNS é frequentemente usado para armazenar os relacionamentos entre nomes de host e endereços IP, representados por A
, AAAA
e PTR
tipos de registro.
DNS é muito mais do que isso:
- DNS é um banco de dados hiárquico amplamente distribuído que pode ser usado para armazenar inúmeras coisas. Acontece que se especializou em mapear nomes para endereços IP e vice-versa, porque é isso que a Internet mais precisa desse banco de dados.
- Todos os nomes de host são rótulos DNS legais. (rótulo = o lado esquerdo de um registro DNS)
- Nem todos os rótulos DNS são entidades legais de nomes de host.É aqui que as pessoas ficam confusas.A Wikipedia cobre esse tópico muito bem, mas a versão resumida é que existemmuitoscaracteres que passarão por uma verificação de sintaxe para DNS que não são legais para uso em nomes de host. Esta é uma dica bastante significativa de que o DNS não está escravizado pelas especificações do nome do host.
Para encerrar e reforçar os tópicos acima, vou deixar cair uma grande parede de texto deRFC-2181:
- Sintaxe do nome
Ocasionalmente, presume-se que o Sistema de Nomes de Domínio serve apenas para mapear nomes de hosts da Internet para dados e mapear endereços da Internet para nomes de hosts. Isso não está correto, o DNS é um banco de dados hierárquico geral (embora um tanto limitado) e pode armazenar quase qualquer tipo de dados, para quase qualquer finalidade.
O próprio DNS impõe apenas uma restrição aos rótulos específicos que podem ser usados para identificar registros de recursos. Essa restrição diz respeito ao comprimento do rótulo e ao nome completo. O comprimento de qualquer rótulo é limitado entre 1 e 63 octetos. Um nome de domínio completo está limitado a 255 octetos (incluindo os separadores). O nome completo de comprimento zero é definido como representando a raiz da árvore DNS e normalmente é escrito e exibido como ".". Deixando essas restrições de lado, qualquer string binária pode ser usada como rótulo de qualquer registro de recurso. Da mesma forma, qualquer string binária pode servir como valor de qualquer registro que inclua um nome de domínio como parte ou todo o seu valor (SOA, NS, MX, PTR, CNAME e quaisquer outros que possam ser adicionados). As implementações dos protocolos DNS não devem impor quaisquer restrições aos rótulos que podem ser utilizados. Em particular, os servidores DNS não devem recusar-se a servir uma zona porque ela contém rótulos que podem não ser aceitáveis para alguns programas clientes DNS. Um servidor DNS pode ser configurável para emitir avisos ao carregar, ou mesmo recusar o carregamento, uma zona primária contendo rótulos que podem ser considerados questionáveis, porém isso não deve acontecer por padrão.
Observe, entretanto, que os vários aplicativos que fazem uso de dados DNS podem ter restrições impostas sobre quais valores específicos são aceitáveis em seu ambiente. Por exemplo, o fato de qualquer rótulo binário poder ter um registro MX não implica que qualquer nome binário possa ser usado como parte de host de um endereço de e-mail. Os clientes do DNS podem impor quaisquer restrições apropriadas às suas circunstâncias nos valores que usam como chaves para solicitações de pesquisa de DNS e nos valores retornados pelo DNS. Se o cliente tiver tais restrições, ele será o único responsável por validar os dados do DNS para garantir que estejam em conformidade antes de fazer qualquer uso desses dados.
O último parágrafo é particularmente importante. Os padrões DNS são muito abertos em termos do que é legal armazenardentro do DNS, mas outros padrões podem ditar como um serviçoconsomeDNS e pode impor qualquer limitação sobre o que um aplicativo deve (e não deve) esperar encontrar lá. Isto é exatamente o que acontece no caso de nomes de host, que são definidos por RFCsforados padrões DNS.
Responder3
O DNS especifica registros A como um tipo de registro possível. Os registros A são às vezes chamados de registros de host. São a mesma coisa, mas eu preferiria usar "A record", já que é assim que se chama oficialmente.
Você encontrou ambos os conceitos em uma situação em que eles pareciam significar algo diferente? Eu sei que os dispositivos DNS da Infoblox suportam o conceito de 'objeto host', que é uma estrutura de dados em sua configuração que é traduzida em um registro A e PTR no servidor DNS.
Responder4
Sim, eu estava lidando com a Infoblox. E vocês estavam corretos - Host Record é um objeto criado pela Infoblox para criar um registro A e um registro PTR ao mesmo tempo.
Também a pesquisa direta e reversa individual também pode ser criada. Embora seja um pouco lento ao pesquisar um grande banco de dados, o Infoblox é bom para muitas coisas.
Obrigado pelas contribuições. Aprendeu muito :)