Quando o servidor de nomes de armazenamento em cache inclui a seção de autoridade?

2

Gostaria de descobrir os servidores de nomes oficiais para o domínio swedbank.se . Eu questionei alguns servidores de nome em cache para swedbank.se e, enquanto alguns respondiam aos servidores de nomes oficiais, outros não. Por exemplo, servidores DNS públicos do Google:

$ dig @8.8.8.8 swedbank.se +noall +authority

; <<>> DiG 9.6.1-P1 <<>> @8.8.8.8 swedbank.se +noall +authority
; (1 server found)
;; global options: +cmd
$ dig @isp-nameserver swedbank.se +noall +authority

; <<>> DiG 9.6.1-P1 <<>> @isp-nameserver swedbank.se +noall +authority
; (1 server found)
;; global options: +cmd
swedbank.se.            2719    IN      NS      ns2.foreningssparbanken.se.
swedbank.se.            2719    IN      NS      ns1.foreningssparbanken.se.
swedbank.se.            2719    IN      NS      ns3.foreningssparbanken.se.
$ 

Isso é apenas uma questão de armazenar em cache a configuração do servidor de nomes? Ou há alguma outra razão para tal comportamento?

    
por Martin 13.01.2015 / 14:00

1 resposta

1

A resposta mais precisa é "quando exigido pelo RFC, e alguns outros casos além de".

As únicas vezes em que você tem a garantia de ver uma seção AUTHORITY é quando o servidor remoto está respondendo com zero registros na seção ANSWER (e, mesmo assim, somente quando o rcode é NOERROR ou NXDOMAIN). Os casos mais comuns que conheço são:

  • Consultando um servidor autoritativo para um registro que foi delegado a outro servidor
  • Recebendo uma resposta NXDOMAIN
  • Consultando um servidor recursivo sem o sinalizador RD (recursão desejada) definido quando o registro não está no cache. Usando dig, isso seria realizado através da opção +norecurse .

Fora das circunstâncias exigidas pelo RFC, o que você obterá nesse campo é a implementação específica e não confiável. Alguns softwares de servidor de nomes fornecem opções para não fornecer esses dados, exceto quando exigido pelo RFC, o que é útil para reduzir o tamanho do pacote por resposta em cenários de ataque de amplificação. Um exemplo disso é a opção minimal-responses do BIND9.

minimal-responses
If yes, then when generating responses the server will only add records to the authority and additional data sections when they are required (e.g. delegations, negative responses). This may improve the performance of the server. The default is no.

Em resumo, a menos que uma referência ou NXDOMAIN esteja envolvido, você deve considerar os dados na seção AUTHORITY como um fator de conveniência apenas. Ao escrever código que analisa respostas de DNS, eu só vejo a seção AUTHORITY se o rcode era NOERROR com zero registros na seção ANSWER.

    
por 13.01.2015 / 16:05