[Toulibre] nslookup et ping pas d' accord

Alban Crequy muadda at gmail.com
Dim 15 Juin 23:37:04 CEST 2008


2008/6/14 Vincent Besse <vincent at ouhena.org>:
> Salut,
>
> en oscultant un peu les messages de logcheck, j' ai régulièrement des
> messages du type:
>
> [Sat Jun 14 19:05:18 2008] [error] [client AAA.BBB.CCC.DDD] File does
> not exist: /var/www/phpMyAdmin
>
> Rien que du normal me direz-vous. Comme j' ai ces messages à
> intervalles réguliers (~25mn) depuis la même adresse IP, j' ai voulu
> essayer d' en savoir un peu plus. J' ai fait un:
>
> :~$ nslookup AAA.BBB.CCC.DDD
>
> qui m' a dit, entre autres
>
> Non-authoritative answer:
> DDD.CCC.BBB.AAA.in-addr.arpa    name = un.fqdn.tld
>
> Or, un ping me dit:
> :~$ ping un.fqdn.tld
> PING un.fqdn.tld (WWW.XXX.YYY.ZZZ) 56(84) bytes of data.
>
> Je ne comprends pas pourquoi l' adresse IP que cherche à joindre le
> ping (WWW.XXX.YYY.ZZZ) n'est pas la même que celle qui cherche des poux
> à mon gentil serveur Apache (AAA.BBB.CCC.DDD). Si quelqu'un dispose d'
> un peu de lumière pour éclairer ma lanterne...

Il me semble que nslookup et ping n'utilisent pas la même méthode pour
la résolution de noms.

- nslookup fait toujours une requête DNS en utilisant les serveurs DNS
précisés sur la ligne de commande ou dans le fichier /etc/resolv.conf

- ping utilise gethostbyname() qui passe par NSS (voir man
nsswitch.conf). Mon fichier /etc/nsswitch.conf contient:
hosts:          files mdns4_minimal [NOTFOUND=return] dns mdns4
ce qui signifie que les requêtes de résolution de nom faites par
gethostbyname() seront faite en priorité par la méthode "files" (càd
regarder dans /etc/hosts), puis si rien n'est trouvé, par la méthode
mdns4_minimal (mutlicast dns pour les machines sur le réseau local),
puis si toujours rien n'est trouvé, par la méthode dns (requête DNS
normal en utilisant le fichier /etc/resolv.conf pour trouver les
serveurs DNS), puis en dernier resort la méthode mdns4.

-- 
Alban



Plus d'informations sur la liste de diffusion Toulouse-ll