Citation
merlin8282
Je ne suis pas sûr, mais je crois qu'il y a un cache DNS aussi, dans lequel le noyau regarde avant de faire un requête aux serveurs DNS.
Non, le noyau ne connait pas DNS (et n'y regarde pas)! Il connait juste les protocoles réseaux de transport (IP et companie ICMP, routage, ...). DNE est un protocole applicatif IP/UDP.
Le DNS est connu de la libc. Et on peut se passer de la libc (OK faut vouloir se taper les appels systèmes à la main en assembleur cf [
tldp.org] pour les sombres détails et
busybox [
www.busybox.net] ou
dietlibc pour un exemple). En fait le DNS est lié aux fonctions
gethostbyname et autres, qui ont besoin de /etc/nsswitch.conf (qui configure leur comportement, lequel est souvent de dlopen-er la librarie adhoc de service de nom).
Il fut un temps où certaines implémentations de CommonLisp ou SML n'utilisaient pas la libc usuelle. Et on peut tout à faire coder un appel système sans libc (mais avec des parties en asm).
----
Basile STARYNKEVITCH
Membre de l'
APRIL « promouvoir et défendre le logiciel libre » - adhérez vous aussi à l'APRIL!
Projet logiciel libre:
RefPerSys
Poste le Wednesday 31 January 2007 22:32:08