Rattachement de DNS DNS ou épingle à cheveux?

8

J'ai la configuration suivante: CISCO 881, IOS 15.2 (4) M6. Sur l'interface WAN est configuré le sous-réseau 86.34.156.48/29 de notre FAI. Derrière le routeur se trouve 2 serveurs Web. NAT: 86.34.156.51 <> 10.10.10.100 (IP privée, serveur1). Si je configure les enregistrements du serveur DNS BIND A avec l'IP externe du serveur (86.34.156.51), le monde extérieur n'obtient jamais la réponse de mon serveur DNS (je ne sais pas ce qui se passe là-bas, peut-être que le routeur fait du raclage DNS ou quelque chose similaire (c'est une question)), et il est sûr que le serveur DNS est configuré et fonctionne correctement (j'ai capturé les paquets IP avec TCPdump). Mais si je configure les enregistrements du serveur DNS A avec l'IP privée du serveur (10.10.10.100), les paquets arrivent toujours à la bonne destination (avec l'IP externe du serveur, peut-être aussi le raclage DNS).

Que pouvais-je faire???

        +-----+
        |     |  an other host somewhere on internet(C)
        |     |
        +-----+
            |
            |
            :
            :  internet
            :

            |  

        +-----+
        |     |      ISP's router
        |     |       black box, without acces
        +-----+

            |
            | 86.34.456.48/29
        +-----+
        |     |      CISCO 881,
        |     |       IOS 15.2(4)M6
        +-----+
            |
            |
------------------------------------------------------------  local private network 10.10.10.0/24
    |                                           |
    | (86.34.156.51)                            | (Nat rule not yet attached)
    | 10.10.10.100                              | 10.10.10.101
    |                                           |
+-----+                                       +-----+
|     |                                       |     |
|     |                                       |     |
+-----+                                       +-----+
linux server (A)                                linux server (B)
BIND DNS server
 style2take.ro

Voici quelques dig (outil de diagnostic DNS sous Linux):

De l'hôte B: $ dig style2take.ro

;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 42222
;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 1

;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 4096
;; QUESTION SECTION:
;style2take.ro.                 IN      A

;; ANSWER SECTION:
style2take.ro.          0       IN      A       10.10.10.100                                                <-- here you can see the TTL is 0

;; Query time: 52 msec
;; SERVER: 193.231.100.130#53(193.231.100.130)
;; WHEN: Fri Feb 20 10:27:25 EET 2015
;; MSG SIZE  rcvd: 58

De l'hôte B: $ dig @ 10.10.10.100 style2take.ro

;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 65374
;; flags: qr aa rd; QUERY: 1, ANSWER: 1, AUTHORITY: 2, ADDITIONAL: 3
;; WARNING: recursion requested but not available

;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 4096
;; QUESTION SECTION:
;style2take.ro.                 IN      A

;; ANSWER SECTION:
style2take.ro.          3600    IN      A       10.10.10.100                                                <-- here you can see the TTL is 3600

;; AUTHORITY SECTION:
style2take.ro.          3600    IN      NS      ns1.style2take.ro.
style2take.ro.          3600    IN      NS      ns2.style2take.ro.

;; ADDITIONAL SECTION:
ns1.style2take.ro.      3600    IN      A       10.10.10.100
ns2.style2take.ro.      3600    IN      A       10.10.10.100

;; Query time: 0 msec
;; SERVER: 10.10.10.100#53(10.10.10.100)
;; WHEN: Fri Feb 20 10:28:58 EET 2015
;; MSG SIZE  rcvd: 126

De l'hôte C: $ dig style2take.ro

;; global options:  printcmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 32364
;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 6, ADDITIONAL: 0

;; QUESTION SECTION:
;style2take.ro.                 IN      A

;; ANSWER SECTION:
style2take.ro.          0       IN      A       86.34.156.51                                                <-- here you can see the TTL is 0

;; AUTHORITY SECTION:
ro.                     106161  IN      NS      sns-pb.isc.org.
ro.                     106161  IN      NS      primary.rotld.ro.
ro.                     106161  IN      NS      sec-dns-a.rotld.ro.
ro.                     106161  IN      NS      sec-dns-b.rotld.ro.
ro.                     106161  IN      NS      dns-at.rotld.ro.
ro.                     106161  IN      NS      dns-ro.denic.de.

;; Query time: 149 msec
;; SERVER: 82.79.24.74#53(82.79.24.74)
;; WHEN: Fri Feb 20 10:29:52 2015
;; MSG SIZE  rcvd: 201

De l'hôte C: $ dig @ 86.34.156.51 style2take.ro

; (1 server found)
;; global options:  printcmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 48385
;; flags: qr aa rd; QUERY: 1, ANSWER: 1, AUTHORITY: 2, ADDITIONAL: 2

;; QUESTION SECTION:
;style2take.ro.                 IN      A

;; ANSWER SECTION:
style2take.ro.          0       IN      A       86.34.156.51                                                <-- here you can see the TTL is 0

;; AUTHORITY SECTION:
style2take.ro.          0       IN      NS      ns2.style2take.ro.
style2take.ro.          0       IN      NS      ns1.style2take.ro.

;; ADDITIONAL SECTION:
ns1.style2take.ro.      0       IN      A       86.34.156.51
ns2.style2take.ro.      0       IN      A       86.34.156.51

;; Query time: 29 msec
;; SERVER: 86.34.156.51#53(86.34.156.51)
;; WHEN: Fri Feb 20 10:35:05 2015
;; MSG SIZE  rcvd: 115
Szilveszter Zsigmond
la source
d'où vient l'épingle à cheveux?
bao7uo

Réponses:

0

Eh bien, si vous ne résolvez pas DNS, le problème peut être double:

  1. Mauvaise configuration DNS - le système DNS mondial est-il capable de dire quel est le NS pour votre domaine? C'est quelque chose que vous devez définir chez votre fournisseur de noms. Qu'est-ce que la dig style2take.ro NSsortie?

  2. Votre routeur n'accepte pas les requêtes DNS. Montez sur un serveur à l'extérieur et essayez de telnet au port 53 de votre DNS telnet 86.34.156.51- DNS devrait fonctionner à la fois sur UDP et TCP, cela teste au moins la partie TCP.

StanTastic
la source
0

Vous n'avez pas besoin d'avoir l'IP externe dans la configuration de vos paramètres DNS (nommés). Vous pouvez utiliser celui interne (10.10.10.100) partout et le NAT du routeur à 86.34.156.51 ( ip nat inside source static 10.10.10.100 86.34.156.51). Si vous voulez configurer un DNS secondaire, la même chose s'applique pour cela: utilisez 10.10.10.101 (comme NS2) NAT'ed à autre chose (comme 86.34.156.51). Assurez-vous également que les ports DNS sont réellement transférés dans le routeur et non bloqués par le pare-feu sur le serveur Linux. Utilisez un vérificateur de port basé sur le Web pour vous assurer que l'UDP 53 est ouvert.

Surmental
la source