não pode resolver o próprio nome de domínio do servidor DNS

1

Eu tenho um servidor DNS (mega.dude - 123.123.123.123) executando a ligação 9.4. Quando eu:

dig mega.dude

Eu não recebo nenhuma seção de respostas.

Eu tenho

nameserver 123.123.123.123

no /etc/resolv.conf

Aqui está o meu arquivo de zona:

$TTL 1W
@                       IN SOA          mega.dude. names.mega.dude. (
                                        2009081502      ; serial
                                        3H              ; refresh
                                        15M             ; retry
                                        1W              ; expiry
                                        1D )            ; minimum

                        NS        ns1
                        NS        ns2
                        MX 10     mail.mega.dude.

                        A 123.123.123.123
@                       A 123.123.123.123
ns1                     A 123.123.123.123
ns2                     A 123.123.123.123
www                     CNAME @
mail                    A 123.123.123.123

Não costumava ser assim. Eu li que é malvado ter um registro mx apontando para um CNAME. Então eu mudei isso. Então eu pensei que talvez esse também fosse o caso de NS. Então eu mudei também. Ainda não é bom. As portas estão abertas. Eu não consigo descobrir. Ah, a propósito, todas as outras zonas retornam bem. Mas não os servidores possuem domínio. Então eu sei que estou fazendo algo estúpido.

EDITAR

Aqui está a seção do meu named.conf:

zone "mega.dude" {
     type master;
     file "pri/mega.dude";
};

zone "123.123.123.in-addr.arpa" {
        type master;
        notify no;
        file "pri/123.123.123";
};

Aqui está a resposta que recebo no próprio servidor:

$ dig mega.dude

; <<>> DiG 9.4.3-P1 <<>> mega.dude
;; global options:  printcmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: SERVFAIL, id: 25170
;; flags: qr rd ra; QUERY: 1, ANSWER: 0, AUTHORITY: 0, ADDITIONAL: 0

;; QUESTION SECTION:
;mega.dude.                    IN      A

;; Query time: 134 msec
;; SERVER: 123.123.123.123#53(123.123.123.123)
;; WHEN: Thu Apr  1 08:02:54 2010
;; MSG SIZE  rcvd: 28

E aqui está a resposta do meu laptop:

dig @mega.dude mega.dude

; <<>> DiG 9.4.2-P2.1 <<>> @mega.dude mega.dude
; (1 server found)
;; global options:  printcmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: SERVFAIL, id: 21361
;; flags: qr rd; QUERY: 1, ANSWER: 0, AUTHORITY: 0, ADDITIONAL: 0
;; WARNING: recursion requested but not available

;; QUESTION SECTION:
;mega.dude.                    IN      A

;; Query time: 51 msec
;; SERVER: 123.123.123.123#53(123.123.123.123)
;; WHEN: Thu Apr  1 08:20:19 2010
;; MSG SIZE  rcvd: 28

O queries.log tem:

01-Apr-2010 08:02:54.192 client 123.123.123.123#33160: query: mega.dude IN A +

Em outro lugar eu deveria verificar?

EDITAR

Eu fiz as alterações sugeridas por Alnitak - pelo menos acho que entendi:

$TTL 1W
@                       IN SOA          mega.dude. names.mega.dude. (
                                        2009081502      ; serial
                                        3H              ; refresh
                                        15M             ; retry
                                        1W              ; expiry
                                        1D )            ; minimum

                        IN NS        ns1
                        IN NS        ns2
                        IN MX 10     mail

                        A 123.123.123.123
ns1                     A 123.123.123.123
ns2                     A 123.123.123.123
www                     A 123.123.123.123
mail                    A 123.123.123.123

Agora obtenho uma seção de autoridade, mas nenhuma seção de resposta:

dig mega.dude

; <<>> DiG 9.4.3-P1 <<>> mega.dude
;; global options:  printcmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 30264
;; flags: qr aa rd ra; QUERY: 1, ANSWER: 0, AUTHORITY: 1, ADDITIONAL: 0

;; QUESTION SECTION:
;mega.dude.                    IN      A

;; AUTHORITY SECTION:
mega.dude.             86400   IN      SOA     mega.dude. names.mega.dude. 2009081502 10800 900 604800 86400

;; Query time: 0 msec
;; SERVER: 123.123.123.123#53(123.123.123.123)
;; WHEN: Thu Apr  1 08:33:50 2010
;; MSG SIZE  rcvd: 70

Então acontece que o registro extra estava causando um problema.

Isso funciona:

@                       A 210.48.255.42

Isso não:

                        A 210.48.255.42

Agora recebo uma resposta completa:

$ dig @mega.dude mega.dude

; <<>> DiG 9.4.3-P1 <<>> @mega.dude mega.dude
; (1 server found)
;; global options:  printcmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 1029
;; flags: qr aa rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 2, ADDITIONAL: 2

;; QUESTION SECTION:
;mega.dude.                    IN      A

;; ANSWER SECTION:
mega.dude.             604800  IN      A       123.123.123.123

;; AUTHORITY SECTION:
mega.dude.             604800  IN      NS      ns1.mega.dude.
mega.dude.             604800  IN      NS      ns2.mega.dude.

;; ADDITIONAL SECTION:
ns1.mega.dude.         604800  IN      A       123.123.123.123
ns2.mega.dude.         604800  IN      A       123.123.123.123

;; Query time: 0 msec
;; SERVER: 123.123.123.123#53(123.123.123.123)
;; WHEN: Thu Apr  1 15:15:58 2010
;; MSG SIZE  rcvd: 112

Isso é ótimo! Apenas algumas esquisitices ...

Eu faço um teste no link

Eu vejo dois problemas:

  1. DNS principal definido por SOA (mega.dude) não foi encontrado entre os NS registros.

  2. O domínio mega.dude não tem registros MX,     mas tem um registro de domínio. este     configuração não é mega.dude

e em: link

Eu recebo:

Nenhum registro encontrado Reportado por ns1.mega.dude em quinta-feira, 1 de abril de 2010 às 01:09:05 (GMT-5)

Já faz mais de 12 horas desde que fiz as alterações. Eu acho que eu especifiquei um registro MX no meu arquivo de zona. E a SOA? Eu estou muito feliz que isso esteja praticamente resolvido, mas ainda parece que eu tenho alguns problemas. Provavelmente é óbvio que mega.dude não é o nome de domínio real. Eu não estou com vontade de ser hackeado ainda.

Desculpe por estar tanto tempo com essa pergunta. Eu acho que deveria editá-lo. Ou deveria fechar isso e postar outra pergunta?

Obrigado a todos!

    
por d-_-b 31.03.2010 / 16:52

3 respostas

0

Eu só quero esclarecer isso, caso alguém esteja se perguntando. O principal problema foi com o espaço em branco . No entanto, graças a todos que ajudaram a resolver alguns dos meus erros. Felicidades!

    
por 05.04.2010 / 13:28
1

Em vez de nos dizer que você não recebeu uma seção de respostas, poderíamos diagnosticar melhor se nos disser o que você fez , bem como o código de resposta.

Isso nos diria, por exemplo, se o servidor está atendendo corretamente o SOA ou se você está recebendo uma mensagem de erro específica.

FWIW, os avisos sobre o uso de um alias (ou seja, um CNAME ) como o destino de um MX ou NS registros estão corretos - você não deve fazer isso.

Não vejo nenhum erro de configuração real aqui, mas há algumas otimizações que você pode fazer para não precisar do nome de domínio real em qualquer lugar no arquivo de configuração:

@       IN SOA    ns1 names ( ... )        
        IN MX 10  mail

Além disso, o registro www também deve ser um A em vez de um CNAME - não é uma boa ideia tornar www um alias para o $ORIGIN , porque uma consulta para www IN MX? ou www IN NS? retornaria exatamente os mesmos registros que o próprio domínio, quando tudo que você realmente quer é o endereço IP.

Você também tem dois registros efetivamente idênticos para o registro principal A listado. Isso não deve quebrar nada, e talvez seja apenas um erro copiar e colar?

EDIT Curioso que a entrada do registro A duplicada foi o problema - possivelmente a falta do IN qualifier causou uma falha de análise - seus logs de inicialização do BIND lhe diriam isso.

Em relação às questões adicionais - essas seriam melhores em uma nova pergunta e, idealmente, citando o nome de domínio real. Nós simplesmente não podemos fazer diagnósticos efetivos sobre problemas de DNS ao vivo se você estiver usando dados fictícios.

EDIT2 No entanto, resolvi o problema SOA - a primeira entrada no SOA deve ser o nome do servidor de nomes principal. Veja o exemplo revisado acima.

    
por 31.03.2010 / 19:08
0

O que acontece se você solicitar um tipo de registro específico?

dig @mega.dude mega.dude. a
dig @mega.dude mega.dude. ns
dig @mega.dude mega.dude. mx

Você tentou a opção +trace do dig ? Ele mostrará todo o caminho da delegação, o que pode ajudá-lo a descobrir onde a consulta está sendo quebrada.

dig mega.dude. +trace
    
por 01.04.2010 / 07:11