web-dev-qa-db-fra.com

Comment diriger une requête vers un serveur DNS spécifique?

J'aimerais envoyer une requête à un serveur DNS spécifique, dont je connais l'adresse IP. Peu importe que ce soit sous Windows ou * nix.

Sous Windows, je peux faire quelque chose comme:

C:\Documents and Settings\Anton Daneyko>nslookup superuser.com
Server:  DNSs2.Uni-Marburg.DE
Address:  137.248.21.22

Non-authoritative answer:
Name:    superuser.com
Address:  64.34.119.12

Mais cela utilise les paramètres DNS de la machine locale. Au lieu de cela, je voudrais interroger un serveur DNS spécifique pour vérifier s'il répond correctement ou pas du tout à mes requêtes.

Donc, cela devrait être quelque chose comme:

nslookup --dns-ip=8.8.8.8 superuser.com
141
Anton Daneyko

Pour les enregistrements de base A et CNAME, vous pouvez simplement faire

nslookup somewhere.com some.dns.server
Usage: 
   nslookup [-opt ...]             # interactive mode using default server
   nslookup [-opt ...] - server    # interactive mode using 'server'
   nslookup [-opt ...] Host        # just look up 'Host' using default server
   nslookup [-opt ...] Host server # just look up 'Host' using 'server'

ou si vous tapez simplement nslookup sans aucun paramètre, vous pouvez faire beaucoup plus d'options ...

Commands:   (identifiers are shown in uppercase, [] means optional)
NAME            - print info about the Host/domain NAME using default server
NAME1 NAME2     - as above, but use NAME2 as server
help or ?       - print info on common commands
set OPTION      - set an option
    all                 - print options, current server and Host
    [no]debug           - print debugging information
    [no]d2              - print exhaustive debugging information
    [no]defname         - append domain name to each query
    [no]recurse         - ask for recursive answer to query
    [no]search          - use domain search list
    [no]vc              - always use a virtual circuit
    domain=NAME         - set default domain name to NAME
    srchlist=N1[/N2/.../N6] - set domain to N1 and search list to N1,N2, etc.
    root=NAME           - set root server to NAME
    retry=X             - set number of retries to X
    timeout=X           - set initial time-out interval to X seconds
    type=X              - set query type (ex. A,AAAA,A+AAAA,ANY,CNAME,MX,NS,PTR,SOA,SRV)
    querytype=X         - same as type
    class=X             - set query class (ex. IN (Internet), ANY)
    [no]msxfr           - use MS fast zone transfer
    ixfrver=X           - current version to use in IXFR transfer request
server NAME     - set default server to NAME, using current default server
lserver NAME    - set default server to NAME, using initial server
root            - set current default server to the root
ls [opt] DOMAIN [> FILE] - list addresses in DOMAIN (optional: output to FILE)
    -a          -  list canonical names and aliases
    -d          -  list all records
    -t TYPE     -  list records of the given RFC record type (ex. A,CNAME,MX,NS,PTR etc.)
view FILE           - sort an 'ls' output file and view it with pg
exit            - exit the program
184
TheCompWiz

Le simple fait de fouiller dans les options de nslookup, que vous pouvez afficher si vous appelez nslookup, puis en tapant help à l'intérieur du mode interactif nslookup, m'a donné la bonne réponse:

C:\Documents and Settings\Anton Daneyko>nslookup help
Server:  DNSs2.Uni-Marburg.DE
Address:  137.248.21.22

*** DNSs2.Uni-Marburg.DE can't find help: Non-existent domain

C:\Documents and Settings\Anton Daneyko>nslookup
Default Server:  DNSs2.Uni-Marburg.DE
Address:  137.248.21.22

> stackoverflow.com 8.8.8.8
Server:  [8.8.8.8]
Address:  8.8.8.8

Non-authoritative answer:
Name:    stackoverflow.com
Address:  64.34.119.12
11
Anton Daneyko

Oui, C:\Documents and Settings\Anton Daneyko>nslookup superuser.com recherchera votre propre serveur DNS pour connaître l'adresse IP de superuser.com. Si vous ajoutez l'adresse IP ou le nom d'un autre serveur DNS à la ligne de commande, le serveur DNS indiqué recherchera l'adresse IP de superutilisateur.com. Ex:

C:\Documents and Settings\Anton Daneyko>nslookup superuser.com 8.8.4.4
Server:  google-public-dns-b.google.com
Address:  8.8.4.4

Non-authoritative answer:
Name:    superuser.com
Addresses:  190.93.245.58
      190.93.246.58
      141.101.114.59
      190.93.247.58
      190.93.244.58

À propos, 8.8.4.4 est l'adresse IP des serveurs Google DNS.

Mais, les deux réponses ci-dessus donnent des "réponses ne faisant pas autorité", comme aucune des deux SOA, qui fait autorité pour le domaine superuser.com. Les deux ont une copie en cache qui a été propagée à partir de la SOA. Si vous souhaitez demander au serveur faisant autorité, commencez par connaître le nom de l'adresse IP du serveur faisant autorité, à l'aide de la commande suivante:

C:\Documents and Settings\Anton Daneyko>nslookup -type=ns superuser.com
Server:  DNSs2.Uni-Marburg.DE
Address:  137.248.21.22

Non-authoritative answer:
superuser.com   nameserver = cf-dns02.superuser.com
superuser.com   nameserver = cf-dns01.superuser.com

cf-dns02.superuser.com  internet address = 173.245.59.4
cf-dns02.superuser.com  AAAA IPv6 address = 2400:cb00:2049:1::adf5:3b04
cf-dns01.superuser.com  AAAA IPv6 address = 2400:cb00:2049:1::adf5:3a35
cf-dns01.superuser.com  internet address = 173.245.58.53

Cela renverra une réponse ne faisant pas autorité de votre serveur DNS local, de Marburg Uni, nommant tous les serveurs faisant autorité pour le superutilisateur.com. Ensuite, vous pouvez utiliser la commande que nous avons utilisée précédemment pour interroger l’un des 4 serveurs faisant autorité, comme suit:

C:\Documents and Settings\Anton Daneyko>nslookup superuser.com 173.245.59.4
Server:  cf-173-245-59-4.cloudflare.com
Address:  173.245.59.4

Name:    superuser.com
Addresses:  141.101.114.59
      190.93.246.58
      190.93.245.58
      190.93.247.58
      190.93.244.58

Comme vous le voyez, le serveur faisant autorité SOA a renvoyé les adresses IP et vous ne voyez donc plus le commentaire "Réponse ne faisant pas autorité". Cela est particulièrement utile lorsque vous avez créé un nouveau nom de domaine, modifié les fournisseurs d’hébergement ou transféré vers un autre registraire de domaine et que vous ne pouvez pas accéder à votre site Web, car les nouvelles adresses IP ne se sont pas propagées même après 24 heures. Ensuite, vous pouvez commencer par le SOA et vérifier que votre adresse IP correcte est fournie par le serveur DNS, puis la suivre plus loin dans l'arborescence. C'est bien de vérifier si les serveurs DNS Google ont reçu les modifications et enfin si votre serveur DNS local peut résoudre votre nom de domaine pour corriger l'adresse IP.

7
Bede Amarasekara

Pour changer votre serveur DNS par défaut dans nslookup, vous pouvez simplement changer de serveur en tapant le serveur NAMEorIPofDNS. Dans l'exemple ci-dessous, j'ai remplacé mon serveur DNS par défaut (192.168.50.21) (4.2.2.3).

C:\Windows\system32> nslookup

Serveur par défaut: inconnu

Adresse: 192.168.50.21

serveur 4.2.2.3

Serveur par défaut: c.resolvers.level3.net

Adresse: 4.2.2.3

>

Je suis maintenant prêt à poser des questions sur 4.2.2.3 contre 192.168.50.21

1

vous pouvez configurer le DNS principal à utiliser avec votre connexion.
Accédez à vos propriétés de connexion => Internet Procol (TCP/IP). (l'endroit où vous pouvez définir une adresse IP statique)
Ici, vous pouvez définir manuellement le DNS que vous voulez utiliser pour chaque connexion.
Après le test, vous pouvez toujours rétablir sa valeur précédente.

0
PatrickCUDO

Je travaille sur Openwrt 18.06.1 ARMv6 Raspberry Pi et la mise en place de DNS ainsi que de dnscrypt-proxy a donc eu un problème très similaire. La cause fondamentale en est que le fournisseur d'accès Internet local intercepte les réponses non sécurisées de root-servers.net, les réponses indiquant que le site n'a pas été trouvé, puis redirigées vers leur propre site Web. Bien que ce ne soit pas un gros problème de sécurité, je ne le trouve pas particulièrement utile non plus.

Le premier test à effectuer lorsque vous interrogez une adresse spécifique consiste en fait à essayer une adresse non valide, afin de vous assurer que vous obtenez une réponse null correcte lorsque vous utilisez les paramètres serveur, port et hôte. Il existe de nombreux guides et versions et il est facile de penser vous effectuez un test de port alors qu'il répond en fait à partir de résultats mis en cache ou de serveurs par défaut. Après avoir obtenu une réponse nulle, utilisez une adresse de serveur et un port actifs. Les ports actifs peuvent être affichés sur openwrt avec netstat -plnt mais notez que certaines commandes de routeur peuvent avoir besoin d'être installées en premier. Le service tor que j'ai défini sur le port 9053 ne s'affiche pas ici, mais fonctionne après l'ajout de DNSPort 127.0.0.1:9053 au fichier torrc. Le format nslookup sur cette plate-forme accepte les paramètres [hôte] et [serveur] et je peux tester dns avec nslookup cnn.com 127.0.0.1 # 9053 Je peux tester dnscrypt avec la commande nslookup cnn.com 127.0.0.1 # 5353 Passage en port non valide les nombres ou les domaines obtiennent une réponse; ; la connexion a expiré; aucun serveur n’a pu être atteint. Dig fonctionne également sur openwrt mais doit être installé à partir du paquet bind-Dig. Dig -q 127.0.0.1 -p 9053 www.bbc.com Et échoue à nouveau pour les ports non valides. Dans mon cas, le problème était résolu lorsque je changeais les entrées dans/etc/config/network et que je définissais l'option DNS '127.0.0.1' pour les réseaux où j'utilisais auparavant des entrées DNS non sécurisées.

0
Prada

Obtenir des types d'enregistrement spécifiques du serveur DNS spécifié avec une seule commande

Pour rechercher des types d'enregistrement autres que les enregistrements A et AAAA (et CNAME) par défaut renvoyés par nslookup, à l'aide du serveur DNS que vous spécifiez:

nslookup -q=<record type> <Host> <DNS server>

Par exemple, pour renvoyer des enregistrements MX pour le domaine stackexchange.com à l'aide du serveur DNS 8.8.4.4, la commande serait la suivante:

nslookup -q=MX stackexchange.com 8.8.4.4
0
Twisty Impersonator

Pour Windows, ce que vous cherchez peut-être est présenté dans l'article suivant: https://technet.Microsoft.com/en-us/library/ff394369.aspx

0
Zaspam Akaunt