BIND 9 - Como eu insiro um registro DNS para o domínio principal?

1

Digamos que eu tenha um domínio chamado example.com. Os subdomínios nesse trabalho, no entanto, não posso anexar example.com a um endereço IP próprio.

wifi    IN    A   1.1.1.1     ; -Works (wifi.example.com)
router  IN    A   1.1.1.2     ; -Works (router.example.com)
@       IN    A   1.1.1.3     ; - Doesn't Work (example.com)

named-checkconf e named-checkzone não retornam nada. Eu sou bastante novo no BIND, em vez de problemas para fotografar meu arquivo de zona. Você pode simplesmente fornecer as instruções para alcançar minha pergunta acima?

    
por Alex I 26.08.2016 / 23:28

2 respostas

3

Para adicionar um registro de endereço ( A / AAAA ) como em seu exemplo, independentemente de estar no ápice da zona ou em outro nível, basta especificar o nome do proprietário desejado.

Um exemplo que não depende de nenhum "truque":

example.com. IN A 192.0.2.7

O que você fez também é uma maneira potencialmente funcional de fazer isso, mas o valor de @ é muito sensível ao contexto.
@ expande para a origem atual (pode ser alterado usando a diretiva $ORIGIN ).

Em um ponto no arquivo de zona em que não há diretivas $ORIGIN , a origem é o nome da zona ( example.com. em seu exemplo).
Se houver $ORIGIN diretivas você terá que acompanhar qual é a origem atual para saber o que significa @ . (Onde você adiciona sua linha afetará seu significado.)

O mesmo também se aplica aos nomes relativos (que você usou para os outros registros em seu exemplo), estes também são relativos à origem atual.

Por exemplo

wifi.example.com. IN A 192.0.2.8

está usando um nome absoluto e não é sensível ao contexto

enquanto

wifi IN A 192.0.2.8

é sensível ao contexto e expandirá para wifi com qualquer que seja a origem atual anexada a ele, com implicações praticamente idênticas às do uso de @ .

Você obtendo êxito diferente com, por exemplo, wifi e @ poderia ser explicado ao adicionar essas linhas em posições diferentes em um arquivo de zona que tenha $ORIGIN diretivas.

named-checkconf -zj / named-checkzone não mostrando nenhum erro suporta esta teoria, já que não é um erro real, é apenas que você adicionou o registro em um lugar diferente do pretendido, por exemplo, em foo.example.com. em vez de em example.com. .

Para ver os dados da zona propriamente ditos, você pode querer formatá-los em sua forma totalmente expandida, você pode facilmente obter isso usando por exemplo dig @localhost example.com AXFR (se você se permitir AXFR) ou named-compilezone -f text -F text -s full -j -o - example.com db.example.com ( se você tiver o arquivo disponível).

    
por 27.08.2016 / 00:20
4

Em uma abreviação do arquivo de zona DNS, um registro de recurso @ é substituído pelo $ORIGIN (geralmente o nome da zona), mas você também pode usar um FQDN como registro de recurso, encerrando com um à direita. (para evitar outra convenção abreviada em que os registros de recursos sem um . final são anexados com $ORIGIN )

Se o seu $ORIGIN está correto (e definido como example.com.) os seguintes são equivalentes:

example.com. IN A 192.168.0.0
@            IN A 192.168.0.0
    
por 27.08.2016 / 00:03