DNSMASQ(8) System Manager's Manual DNSMASQ(8) NAME Dnsmasq - Un serveur DHCP et cache DNS poids-plume. SYNOPSIS dnsmasq [OPTION]... DESCRIPTION dnsmasq est un serveur a faible empreinte memoire faisant DNS, TFTP, PXE, annonces de routeurs et DHCP. Il offre a la fois les services DNS et DHCP pour un reseau local (LAN). Dnsmasq accepte les requetes DNS et y repond soit en utilisant un petit cache local, soit en effectuant une requete a un serveur DNS recursif externe (par exemple celui de votre fournisseur d'acces internet). Il charge le contenu du fichier /etc/hosts afin que les noms locaux n'apparaissant pas dans les DNS globaux soient tout de meme resolus, et assure egalement la resolution de nom pour les hotes presents dans le service DHCP. Il peut aussi agir en temps que serveur DNS faisant autorite pour un ou plusieurs domaines, permettant a des noms locaux d'apparaitre dans le DNS global. Le serveur DHCP de Dnsmasq supporte les definitions d'adresses statiques et les reseaux multiples. Il fournit par defaut un jeu raisonnable de parametres DHCP, et peut etre configure pour fournir n'importe quelle option DHCP. Il inclut un serveur TFTP securise en lecture seule permettant le demarrage via le reseau/PXE de clients DHCP et supporte egalement le protocole BOOTP. Le support PXE est complet, et comprend un mode proxy permettant de fournir des informations PXE aux clients alors que l'allocation d'adresse via DHCP est effectuee par un autre serveur. Le serveur DHCPv6 de dnsmasq possede non seulement les memes fonctionnalites que le serveur DHCPv4, mais aussi le support des annonces de routeurs ainsi qu'une fonctionnalite permettant l'addition de ressources AAAA pour des clients utilisant DHCPv4 et la configuration IPv6 sans etat (stateless autoconfiguration). Il inclut le support d'allocations d'adresses (a la fois en DHCPv6 et en annonces de routeurs - RA) pour des sous-reseaux dynamiquement delegues via une delegation de prefixe DHCPv6. Dnsmasq est developpe pour de petits systemes embarques. Il tend a avoir l'empreinte memoire la plus faible possible pour les fonctions supportees, et permet d'exclure les fonctions inutiles du binaire compile. OPTIONS Notes : Il est possible d'utiliser des options sans leur donner de parametre. Dans ce cas, la fonction correspondante sera desactivee. Par exemple --pid-file= (sans parametre apres le =) desactive l'ecriture du fichier PID. Sur BSD, a moins que le logiciel ne soit compile avec la bibliotheque GNU getopt, la forme longue des options ne fonctionne pas en ligne de commande; elle est toujours supportee dans le fichier de configuration. --test Verifie la syntaxe du ou des fichiers de configuration. Se termine avec le code de retour 0 si tout est OK, ou un code different de 0 dans le cas contraire. Ne demarre pas Dnsmasq. -w, --help Affiche toutes les options de ligne de commande. --help dhcp affiche les options de configuration connues pour DHCPv4, et --help dhcp6 affiche les options de configuration connues pour DHCPv6. -h, --no-hosts Ne pas charger les noms d'hotes du fichier /etc/hosts. -H, --addn-hosts= Fichiers d'hotes additionnels. Lire le fichier specifie en plus de /etc/hosts. Si -h est specifie, lire uniquement le fichier specifie. Cette option peut etre repetee afin d'ajouter d'autres fichiers. Si un repertoire est donne, lis les fichiers contenus dans ce repertoire. -E, --expand-hosts Ajoute le nom de domaine aux noms simples (ne contenant pas de point dans le nom) contenus dans le fichier /etc/hosts, de la meme facon que pour le service DHCP. Notez que cela ne s'applique pas aux noms de domaine dans les CNAME, les enregistrements PTR, TXT, etc... -T, --local-ttl= Lorsque Dnsmasq repond avec une information provenant du fichier /etc/hosts ou avec un bail DHCP, il donne un temps de vie (time- to-live) positionne a zero, afin d'indiquer a la machine faisant la requete que celle-ci ne doit pas etre mise dans un cache. Ceci est le comportement correct dans presque toutes les situations. Cette option permet de specifier la valeur de time- to-live a retourner (en secondes). Cela permet de reduire la charge sur le serveur, mais les clients risquent d'utiliser des donnees perimees dans certains cas. --neg-ttl= Les reponses negatives provenant des serveurs amonts contiennent normalement une information de duree de vie (time-to-live) dans les enregistrements SOA, information dont dnsmasq se sert pour mettre la reponse en cache. Si la reponse du serveur amont omet cette information, dnsmasq ne cache pas la reponse. Cette option permet de donner une valeur de duree de vie par defaut (en secondes) que dnsmasq utilise pour mettre les reponses negatives dans son cache, meme en l'absence d'enregistrement SOA. --max-ttl= Definie la valeur de TTL maximum qui sera fournie aux clients. La valeur maximum de TTL specifiee sera fournie aux clients en remplacement de la vraie valeur de TTL si cette derniere est superieure. La valeur reelle de TTL est cependant conservee dans le cache afin d'eviter de saturer les serveurs DNS en amont. --max-cache-ttl= Definie la valeur de TTL maximum pour les entrees dans le cache --auth-ttl= Definie la valeur de TTL retournee pour les reponses du serveur faisant autorite. -k, --keep-in-foreground Ne pas aller en tache de fond au lancement, mais en dehors de cela, fonctionner normalement. Ce mode est prevu pour les cas ou Dnsmasq est lance par daemontools ou launchd. -d, --no-daemon Mode debug (deverminage) : ne pas aller en tache de fond, ne pas ecrire de fichier pid, ne pas changer d'identifiant utilisateur, generer un etat complet du cache lors de la reception d'un signal SIGUSR1, envoyer les logs sur la sortie standard d'erreur ("stderr") de meme que dans le syslog, ne pas creer de processus fils pour traiter les requetes TCP. A noter que cette option est a user pour du deverminage seulement : pour empecher dnsmasq se fonctionner en mode demon en production, utiliser -k. -q, --log-queries Enregistrer les resultats des requetes DNS traitees par Dnsmasq dans un fichier de traces ("logs"). Active la generation d'un etat complet du cache lors de la reception d'un signal SIGUSR1. -8, --log-facility= Definit la "facility" dans laquelle Dnsmasq enverra ses entrees syslog, par defaut DAEMON ou LOCAL0 si le mode debug est active. Si la "facility" contient au moins un caractere "/", alors Dnsmasq considere qu'il s'agit d'un fichier et enverra les logs dans le fichier correspondant a la place du syslog. Si la "facility" est '-', alors dnsmasq envoie les logs sur la sortie d'erreur standard stderr. (Les erreurs lors de la lecture de la configuration vont toujours vers le syslog, mais tous les messages posterieurs a un demarrage reussi seront exclusivement envoyes vers le fichier de logs). Lorsque Dnsmasq est configure pour envoyer ses traces vers un fichier, la reception d'un signal SIGUSR2 entraine la fermeture et reouverture du fichier. Cela permet la rotation de fichiers de traces sans necessiter l'arret de Dnsmasq. --log-async[=] Permet l'envoi de traces de maniere asynchrone, et de maniere optionnelle, le nombre de lignes devant etre mises dans la file d'attente par Dnsmasq lorsque l'ecriture vers le syslog est lente. Dnsmasq peut envoyer ses logs de maniere asynchrone : cela lui permet de continuer a fonctionner sans etre bloque par le syslog, et permet a syslog d'utiliser Dnsmasq pour les resolutions DNS sans risque d'interblocage. Si la file d'attente devient pleine, Dnsmasq loggera le depassement de file et le nombre de messages perdus. La longueur par defaut de la file d'attente est de 5 et une valeur saine sera comprise entre 5 et 25, avec une limite maximum imposee de 100. -x, --pid-file= Specifie un fichier dans lequel stocker le numero de processus (pid). La valeur par defaut est /var/run/dnsmasq.pid. -u, --user= Specifie l'identite (nom d'utilisateur) prise par Dnsmasq apres le demarrage. Dnsmasq doit normalement etre demarre en temps que root ("super-utilisateur"), mais abandonne ses privileges apres le demarrage en changeant d'identite. Normalement cet utilisateur est l'utilisateur nobody ("personne"), mais il est possible d'en definir un autre par le biais de ce parametre. -g, --group= Specifie le groupe sous lequel Dnsmasq s'execute. Par defaut, il s'agit du groupe "dip", afin de faciliter l'acces au fichier /etc/ppp/resolv.conf qui n'est en general pas en lecture par tout le monde. -v, --version Imprime le numero de version. -p, --port= Ecoute sur le port numero au lieu du port DNS standard (53). Parametrer cette valeur a zero desactive completement la fonction DNS pour ne laisser actif que le DHCP ou le TFTP. -P, --edns-packet-max= Specifie la taille maximum de paquet UDP EDNS.0 supporte par le relai DNS. Le defaut est de 4096, qui est la valeur recommandee dans la RFC5625. -Q, --query-port= Envoie et ecoute les requetes DNS sortantes depuis le port UDP specifie par , et non sur un port aleatoire. NOTE : Cette option rends dnsmasq moins sur contre les attaques par usurpation DNS ("DNS spoofing"), mais cela peut permettre d'utiliser moins de ressources et d'etre plus rapide. Donner une valeur de zero a cette option restaure le comportement par defaut present dans les versions de dnsmasq inferieures a 2.43 qui consiste a n'allouer qu'un seul port alloue par le systeme d'exploitation. --min-port= Ne pas utiliser de port dont le numero est inferieur a la valeur donnee en parametre pour les requetes DNS sortantes. Dnsmasq choisis un port source aleatoire pour les requetes sortantes : lorsque cette option est fournie, les ports utilises seront toujours au dessus de la valeur specifiee. Utile pour des systemes derriere des dispositifs garde-barrieres ("firewalls"). -i, --interface= N'ecouter que sur l'interface reseau specifiee. Dnsmasq ajoute automatiquement l'interface locale ("loopback") a la liste des interfaces lorsque l'option --interface est utilisee. Si aucune option --interface ou --listen-address n'est donnee, Dnsmasq ecoutera sur toutes les interfaces disponibles sauf celle(s) specifiee(s) par l'option --except-interface. Les alias d'interfaces IP (par exemple "eth1:0") ne peuvent etre utilises ni avec --interface ni --except-interface. Utiliser l'option --listen-address a la place. Un simple joker, consistant en un '*' final, peut etre utilise dans les options --interface et --except-interface -I, --except-interface= Ne pas ecouter sur l'interface specifiee. Notez que l'ordre dans lesquelles les options --listen-address , --interface et --except-interface sont fournies n'importe pas, et que l'option --except-interface l'emporte toujours sur les autres. --auth-server=,| Active le mode DNS faisant autorite pour les requetes arrivant sur cette interface ou sur cette adresse. Noter que l'interface ou l'adresse n'ont pas besoin d'etre mentionnees ni dans --interface ni dans --listen-address En effet, --auth-server va passer outre ceux-ci et fournir un service DNS different sur l'interface specifiee. La valeur de est l'enregistrement de type "colle" ("glue record"). Il doit correspondre dans le service DNS global avec un enregistrement de type A et/ou AAAA pointant sur l'adresse sur laquelle dnsmasq ecoute pour le mode DNS faisant autorite. -2, --no-dhcp-interface= Ne pas fournir de service DHCP sur l'interface specifiee, mais fournir tout de meme le service DNS. -a, --listen-address= Ecouter sur la ou les adresse(s) IP specifiee(s). Les options --interface et --listen-address peuvent etre specifiees simultanement, auquel cas un jeu d'interfaces et d'adresses seront utilisees. Notez que si aucune option --interface n'est donnee alors qu'une option --listen-address l'est, Dnsmasq n'ecoutera pas automatiquement sur l'interface locale ("loopback"). Pour activer l'ecoute sur l'interface locale, il est alors necessaire de fournir explicitement son adresse IP, 127.0.0.1 via l'option --listen-address. -z, --bind-interfaces Sur les systemes qui le supportent, Dnsmasq s'associe avec l'interface joker ("wildcard"), meme lorsqu'il ne doit ecouter que sur certaines interfaces. Par la suite, il rejette les requetes auxquelles il ne doit pas repondre. Cette situation presente l'avantage de fonctionner meme lorsque les interfaces vont et viennent ou changent d'adresses. L'option --bind-interfaces force Dnsmasq a ne reellement s'associer qu'avec les interfaces sur lesquelles il doit ecouter. L'un des seuls cas ou cette option est utile est celui ou un autre serveur de nom (ou une autre instance de Dnsmasq) tourne sur la meme machine. Utiliser cette option permet egalement d'avoir plusieurs instances de Dnsmasq fournissant un service DHCP sur la meme machine. --bind-dynamic Autorise un mode reseau intermediaire entre --bind-interfaces et le mode par defaut. Dnsmasq s'associe a une seule interface, ce qui permet plusieurs instances de dnsmasq, mais si une interface ou adresse apparaissent, il se mettra automatiquement a ecouter sur celles-ci (les regles de controle d'acces s'appliquent). De fait, les interfaces creees dynamiquement fonctionnent de la meme facon que dans le comportement par defaut. Ce fonctionnement necessite des APIs reseau non standard et n'est disponible que sous Linux. Sur les autres plateformes, le fonctionnement est celui du mode --bind-interfaces. -y, --localise-queries Retourne des reponses aux requetes DNS dependantes de l'interface sur laquelle la requete a ete recue, a partir du fichier /etc/hosts. Si un nom dans /etc/hosts a plus d'une adresse associee avec lui, et qu'une des adresses au moins est dans le meme sous-reseau que l'interface sur laquelle la requete a ete recue, alors ne retourne que la(les) adresse(s) du sous- reseau considere. Cela permet d'avoir dans /etc/hosts un serveur avec de multiples adresses, une pour chacune de ses interfaces, et de fournir aux hotes l'adresse correcte (basee sur le reseau auquel ils sont attaches). Cette possibilite est actuellement limitee a IPv4. -b, --bogus-priv Fausse resolution inverse pour les reseaux prives. Toutes les requetes DNS inverses pour des adresses IP privees (192.168.x.x, etc...) qui ne sont pas trouvees dans /etc/hosts ou dans le fichier de baux DHCP se voient retournees une reponse "pas de tel domaine" ("no such domain") au lieu d'etre transmises aux serveurs de nom amont ("upstream server"). -V, --alias=[]|[-],[,] Modifie les adresses IPv4 retournees par les serveurs de nom amont; est remplacee par . Si le optionnel est fourni, alors toute adresse correspondant a l'adresse / sera reecrite. Ainsi par exemple --alias=1.2.3.0,6.7.8.0,255.255.255.0 modifiera 1.2.3.56 en 6.7.8.56 et 1.2.3.67 en 6.7.8.67. Cette fonctionnalite correspond a ce que les routeurs Cisco PIX appellent "bidouillage DNS" ("DNS doctoring"). Si l'ancienne IP est donnee sous la forme d'une gamme d'adresses, alors seules les adresses dans cette gamme seront reecrites, et non le sous-reseau dans son ensemble. Ainsi, --alias=192.168.0.10-192.168.0.40,10.0.0.0,255.255.255.0 fait correspondre 192.168.0.10->192.168.0.40 a 10.0.0.10->10.0.0.40 -B, --bogus-nxdomain= Transforme les reponses contenant l'adresse IP fournie en reponses "pas de tel domaine" ("no such domain"). Ceci a pour but de neutraliser la modification sournoise mise en place par Verisign en septembre 2003, lorsqu'ils ont commence a retourner l'adresse d'un serveur web publicitaire en reponse aux requetes pour les noms de domaines non enregistres, au lieu de la reponse correcte "NXDOMAIN". Cette option demande a Dnsmasq de retourner la reponse correcte lorsqu'il constate ce comportement. L'adresse retournee par Verisign en septembre 2003 est 64.94.110.11. -f, --filterwin2k Les dernieres versions de windows font des requetes DNS periodiques auxquelles non seulement les serveurs DNS publics ne peuvent donner de reponse, mais qui, de surcroit, peuvent poser des problemes en declenchant des connexions intempestives pour des liens reseaux avec des connexions "a la demande". Fournir cette option active le filtrage des requetes de ce type. Les requetes bloquees sont les requetes pour les entrees de type SOA ou SRV, ainsi que les requetes de type ANY avec des noms possedant des caracteres sous-lignes (requetes pour des serveurs LDAP). -r, --resolv-file= Lis les adresses des serveurs de nom amont dans le fichier de nom , au lieu du fichier /etc/resolv.conf. Pour le format de ce fichier, voir dans le manuel pour resolv.conf(5) les entrees correspondant aux serveurs de noms (nameserver). Dnsmasq peut lire plusieurs fichiers de type resolv.conf, le premier fichier specifie remplace le fichier par defaut, le contenu des suivants est rajoute dans la liste des fichiers a consulter. Seul le fichier ayant la derniere date de modification sera charge en memoire. -R, --no-resolv Ne pas lire le contenu du fichier /etc/resolv.conf. N'obtenir l'adresse des serveurs de nom amont que depuis la ligne de commande ou le fichier de configuration de Dnsmasq. -1, --enable-dbus[=] Autoriser la mise a jour de la configuration de Dnsmasq par le biais d'appel de methodes DBus. Il est possible par ce biais de mettre a jour l'adresse de serveurs DNS amont (et les domaines correspondants) et de vider le cache. Cette option necessite que Dnsmasq soit compile avec le support DBus. Si un nom de service est fourni, dnsmasq fourni un service a ce nom, plutot qu'avec la valeur par defaut : uk.org.thekelleys.dnsmasq -o, --strict-order Par defaut, Dnsmasq envoie les requetes a n'importe lequel des serveurs amonts dont il a connaissance tout en essayant de favoriser les serveurs qu'il sait fonctionner. Cette option force Dnsmasq a essayer d'interroger, pour chaque requete, les serveurs DNS dans leur ordre d'apparition dans le fichier /etc/resolv.conf. --all-servers Par defaut, lorsque dnsmasq a plus d'un serveur amont disponible, il n'envoie les requetes qu'a un seul serveur. Specifier cette option force dnsmasq a effectuer ses requetes a tous les serveurs disponibles. Le resultat renvoye au client sera celui fournit par le premier serveur ayant repondu. --stop-dns-rebind Rejette (et enregistre dans le journal d'activite) les adresses dans la gamme d'adresses IP privee (au sens RFC1918) qui pourraient etre renvoyees par les serveurs amonts suite a une resolution de nom. Cela bloque les attaques cherchant a detourner de leur usage les logiciels de navigation web ('browser') en s'en servant pour decouvrir les machines situees sur le reseau local. --rebind-localhost-ok Exclue 127.0.0/8 des verifications de reassociation DNS. Cette gamme d'adresses est retournee par les serveurs Realtime Blackhole (RBL, utilises dans la lutte contre le spam), la bloquer peut entrainer des dysfonctionnements de ces services. --rebind-domain-ok=[]|[[//[/] Ne pas detecter ni bloquer les actions de type dns-rebind pour ces domaines. Cette option peut prendre comme valeur soit un nom de domaine soit plusieurs noms de domaine entoures par des '/', selon une syntaxe similaire a l'option --server, c-a-d : --rebind-domain-ok=/domaine1/domaine2/domaine3/ -n, --no-poll Ne pas verifier regulierement si le fichier /etc/resolv.conf a ete modifie. --clear-on-reload Lorsque le fichier /etc/resolv.conf est relu, ou si les serveurs amonts sont configures via DBus, vider le cache DNS. Cela est utile si les nouveaux serveurs sont susceptibles d'avoir des donnees differentes de celles stockees dans le cache. -D, --domain-needed Indique a Dnsmasq de ne jamais transmettre en amont de requetes A ou AAAA pour des noms simples, c'est a dire ne comprenant ni points ni nom de domaine. Si un nom n'est pas dans /etc/hosts ou dans la liste des baux DHCP, alors une reponse de type "non trouve" est renvoyee. -S, --local, --server=[/[]/[domaine/]][[#][@|[#]]] Specifie directement l'adresse IP d'un serveur de nom amont. Cette option ne supprime pas la lecture du fichier /etc/resolv.conf : utiliser pour cela l'option -R . Si un ou plusieurs nom(s) de domaine(s) optionnel(s) sont fournis, ce serveur sera uniquement utilise uniquement pour ce(s) domaine(s), et toute requete concernant ce(s) domaine(s) sera adressee uniquement a ce serveur. Cette option est destinee aux serveurs de nom prives : si vous avez un serveur de nom sur votre reseau ayant pour adresse IP 192.168.1.1 et effectuant la resolution des noms de la forme xxx.internal.thekelleys.org.uk, alors -S /internal.thekelleys.org.uk/192.168.1.1 enverra toutes les requetes pour les machines internes vers ce serveur de nom, alors que toutes les autres requetes seront adressees aux serveurs indiques dans le fichier /etc/resolv.conf. Une specification de nom de domaine vide, // possede le sens particulier de "pour les noms non qualifies uniquement", c'est-a-dire les noms ne possedant pas de points. Un port non standard peut etre rajoute a la suite des adresses IP en utilisant le caractere #. Plus d'une option -S est autorisee, en repetant les domaines et adresses IP comme requis. Le domaine le plus specifique l'emporte sur le domaine le moins specifique, ainsi : --server=/google.com/1.2.3.4 --server=/www.google.com/2.3.4.5 enverra les requetes pour *.google.com a 1.2.3.4, a l'exception des requetes *www.google.com, qui seront envoyees a 2.3.4.5. L'adresse speciale '#' signifie "utiliser les serveurs standards", ainsi --server=/google.com/1.2.3.4 --server=/www.google.com/# enverra les requetes pour *.google.com a 1.2.3.4, a l'exception des requetes pour *www.google.com qui seront envoyees comme d'habitude (c-a-d aux serveurs definis par defaut). Il est egalement permis de donner une option -S avec un nom de domaine mais sans adresse IP; Cela informe Dnsmasq que le domaine est local et qu'il doit repondre aux requetes le concernant depuis les entrees contenues dans le fichier /etc/hosts ou les baux DHCP, et ne doit en aucun cas transmettre les requetes aux serveurs amonts. local est synonyme de server ("serveur") afin de rendre plus claire l'utilisation de cette option pour cet usage particulier. Les adresses IPv6 peuvent inclure un identifiant de zone sous la forme %interface tel que par exemple fe80::202:a412:4512:7bbf%eth0. La chaine de caracteres optionnelle suivant le caractere @ permet de definir la source que Dnsmasq doit utiliser pour les reponses a ce serveur de nom. Il doit s'agir d'une des adresses IP appartenant a la machine sur laquelle tourne Dnsmasq ou sinon la ligne sera ignoree et une erreur sera consignee dans le journal des evenements, ou alors d'un nom d'interface. Si un nom d'interface est donne, alors les requetes vers le serveur de nom seront envoyees depuis cette interface; si une adresse IP est donnee, alors l'adresse source de la requete sera l'adresse en question. L'option query-port est ignoree pour tous les serveurs ayant une adresse source specifiee, mais il est possible de la donner directement dans la specification de l'adresse source. Forcer les requetes a etre emises depuis une interface specifique n'est pas possible sur toutes les plateformes supportees par dnsmasq. -A, --address=//[domaine/] Specifie une adresse IP a retourner pour toute requete pour les domaines fournis en option. Les requetes pour ce(s) domaine(s) ne sont jamais transmises aux serveurs amonts et recoivent comme reponse l'adresse IP specifiee qui peut etre une adresse IPv4 ou IPv6. Pour donner a la fois une adresse IPv4 et une adresse IPv6 pour un domaine, utiliser plusieurs options -A. Il faut noter que le contenu du fichier /etc/hosts et de celui des baux DHCP supplante ceci pour des noms individuels. Une utilisation courante de cette option est de rediriger la totalite du domaine doubleclick.net vers un serveur web local afin d'eviter les bannieres publicitaires. La specification de domaine fonctionne de la meme facon que --server, avec la caracteristique supplementaire que /#/ coincide avec tout domaine. Ainsi, --address=/#/1.2.3.4 retournera 1.2.3.4 pour toute requete n'ayant de reponse ni dans /etc/hosts, ni dans les baux DHCP, et n'etant pas transmise a un serveur specifique par le biais d'une directive --server. --ipset=//[domaine/][,] Obtient les adresses IP des domaines specifies et les place dans les groupes d'IP netfilter (ipset) indiques. Domaines et sous- domaines sont resolus de la meme facon que pour --address. Ces groupes d'IP doivent deja exister. Voir ipset(8) pour plus de details. -m, --mx-host=[[,],] Specifie un enregistrement de type MX pour retournant le nom donne dans (s'il est present), ou sinon le nom specifie dans l'option --mx-target si elle est presente. Sinon retourne le nom de la machine sur laquelle Dnsmasq tourne. La valeur par defaut (specifiee dans l'option --mx-target ) est utile dans un reseau local pour rediriger les courriers electroniques vers un serveur central. La valeur de preference est optionnelle et vaut par defaut 1 si elle n'est pas specifiee. Plus d'une entree MX peut etre fournie pour un hote donne. -t, --mx-target= Specifie la reponse par defaut fournie par Dnsmasq pour les requetes sur des enregistrements de type MX. Voir --mx-host. Si --mx-target est donne mais pas de --mx-host, alors Dnsmasq retourne comme reponse un enregistrement MX contenant le nom d'hote specifie dans l'option --mx-target pour toute requete concernant le MX de la machine sur laquelle tourne Dnsmasq. -e, --selfmx Definit, pour toutes les machines locales, un MX correspondant a l'hote considere. Les machines locales sont celles definies dans le fichier /etc/hosts ou dans un bail DHCP. -L, --localmx Definit, pour toutes les machines locales, un enregistrement MX pointant sur l'hote specifie par mx-target (ou la machine sur laquelle Dnsmasq tourne). Les machines locales sont celles definies dans le fichier /etc/hosts ou dans un bail DHCP. -W --srv-host=<_service>.<_protocole>.[],[[,[,[,]]]] Specifie un enregistrement DNS de type SRV. Voir la RFC2782 pour plus de details. Si le champs n'est pas fourni, prends par defaut la valeur fournie dans l'option --domain. La valeur par defaut pour le domaine est vide et le port par defaut est 1, alors que les poids et priorites par defaut sont 0. Attention lorsque vous transposez des valeurs issues d'une configuration BIND : les ports, poids et priorites sont dans un ordre differents. Pour un service/domaine donne, plus d'un enregistrement SRV est autorise et tous les enregistrements qui coincident sont retournes dans la reponse. --host-record=[,....][],[] Ajoute des enregistrements A, AAAA et PTR dans le DNS. Ceci permet d'ajouter un ou plusieurs noms dans le DNS et de les associer a des enregistrements IPv4 (A) ou IPv6 (AAAA). Un nom peut apparaitre dans plus d'une entree host-record et de fait etre associe a plus d'une adresse. Seule la premiere entree creee l'enregistrement PTR associee au nom. Ceci correspond a la meme regle que celle utilisee lors de la lecture du fichier hosts. Les options host-record sont considerees lues avant le fichier hosts, ainsi un nom apparaissant dans une option host- record et dans le fichier hosts n'aura pas d'enregistrement PTR associe a l'entree dans le fichier hosts. A l'inverse du fichier hosts, les noms ne sont pas etendus, meme lorsque l'option expand-hosts est activee. Les noms longs et les noms courts peuvent apparaitre dans la meme entree host-record, c-a-d --host-record=laptop,laptop.thekelleys.org,192.168.0.1,1234::100 -Y, --txt-record=[[,],] Definit un enregistrement DNS de type TXT. La valeur de l'enregistrement TXT est un ensemble de chaines de caracteres, donc un nombre variable de chaines de caracteres peuvent etre specifiees, separees par des virgules. Utilisez des guillemets pour mettre une virgule dans une chaine de caracteres. Notez que la longueur maximale pour une chaine est de 255 caracteres, les chaines plus longues etant decoupees en morceaux de 255 caracteres de longs. --ptr-record=[,] Definit un enregistrement DNS de type PTR. --naptr-record=,,,,,[,] Retourne un enregistrement de type NAPTR, tel que specifie dans le RFC3403. --cname=, Retourne un enregistrement de type CNAME qui indique que est en realite . Il existe des contraintes importantes sur la valeur cible; il doit s'agir d'un nom DNS qui est connu de dnsmasq via /etc/hosts (ou un fichier hotes additionnel), via DHCP, via interface--name ou par un autre --cname. Si une cible ne satisfait pas ces criteres, le CNAME est ignore. Le CNAME doit etre unique, mais il est autorise d'avoir plus d'un CNAME pointant vers la meme cible. --dns-rr=,,[] Retourne un enregistrement DNS arbitraire. Le numero correspond au type d'enregistrement (qui est toujours de la classe C_IN). La valeur de l'enregistrement est donnee dans les donnees hexadecimales, qui peuvent etre de la forme 01:23:45, 01 23 45,+012345 ou n'importe quelle combinaison. --interface-name=, Definit un enregistrement DNS associant le nom avec l'adresse primaire sur l'interface donnee en argument. Cette option specifie un enregistrement de type A pour le nom donne en argument de la meme facon que s'il etait defini par une ligne de /etc/hosts, sauf que l'adresse n'est pas constante mais dependante de l'interface definie. Si l'interface est inactive, non existante ou non configuree, une reponse vide est fournie. Un enregistrement inverse (PTR) est egalement cree par cette option, associant l'adresse de l'interface avec le nom. Plus d'un nom peut etre associe a une interface donnee en repetant cette option plusieurs fois; dans ce cas, l'enregistrement inverse pointe vers le nom fourni dans la premiere instance de cette option. --synth-domain=,[,] Cree des enregistrements A/AAAA ou PTR pour une plage d'adresses. Les enregistrements utilisent l'adresse ainsi que les points (ou les deux points dans le cas d'IPv6) remplaces par des tirets. Un exemple devrait rendre cela plus clair : La configuration --synth-domain=thekelleys.org.uk,192.168.0.0/24,internal- permet de retourner internal-192-168-0-56.thekelleys.org.uk lors d'une requete sur l'adresse 192.168.0.56 et vice-versa pour la requete inverse. La meme logique s'applique pour IPv6, avec la particularite suivante : les adresses IPv6 pouvant commencer par '::', mais les noms DNS ne pouvant pas commencer par '-', si aucun prefixe n'est donne, un zero est ajoute en debut de nom. Ainsi, ::1 devient 0--1. La plage d'adresses peut etre de la forme , ou / --add-mac Ajoute l'adresse MAC du requeteur aux requetes DNS transmises aux serveurs amonts. Cela peut etre utilise dans un but de filtrage DNS par les serveurs amonts. L'adresse MAC peut uniquement etre ajoutee si le requeteur est sur le meme sous- reseau que le serveur dnsmasq. Veuillez noter que le mecanisme utilise pour effectuer cela (une option EDNS0) n'est pas encore standardisee, aussi cette fonctionnalite doit etre consideree comme experimentale. Notez egalement qu'exposer les adresses MAC de la sorte peut avoir des implications en termes de securite et de vie privee. L'avertissement donne pour --add-subnet s'applique egalement ici. --add-subnet[[=],] Rajoute l'adresse de sous-reseau du requeteur aux requetes DNS transmises aux serveurs amonts. La quantite d'adresses transmises depend du parametre longueur du prefixe : 32 (ou 128 dans le cas d'IPv6) transmet la totalite de l'adresse, 0 n'en transmet aucun mais marque neanmoins la requete ce qui fait qu'aucun serveur amont ne rajoutera d'adresse client. La valeur par defaut est zero et pour IPv4 et pour IPv6. A noter que les serveurs amonts peuvent etre configures pour retourner des valeurs differentes en fonction de cette information mais que le cache de dnsmasq n'en tient pas compte. Si une instance de dnsmasq est configuree de telle maniere que des valeurs differentes pourraient etre rencontrees, alors le cache devrait etre desactive. -c, --cache-size= Definit la taille du cache de Dnsmasq. La valeur par defaut est de 150 noms. Definir une valeur de zero desactive le cache. Remarque: la taille importante du cache a un impact sur les performances. -N, --no-negcache Desactive le "cache negatif". Le "cache negatif" permet a Dnsmasq de se souvenir des reponses de type "no such domain" fournies par les serveurs DNS en amont et de fournir les reponses sans avoir a retransmettre les requetes aux serveurs amont. -0, --dns-forward-max= Definit le nombre maximum de requetes DNS simultanees. La valeur par defaut est 150, ce qui devrait etre suffisant dans la majorite des configurations. La seule situation identifiee dans laquelle cette valeur necessite d'etre augmentee est lorsqu'un serveur web a la resolution de nom activee pour l'enregistrement de son journal des requetes, ce qui peut generer un nombre important de requetes simultanees. --proxy-dnssec Un resolveur sur une machine cliente peut effectuer la validation DNSSEC de deux facons : il peut effectuer lui-meme les operations de chiffrements sur la reponse recue, ou il peut laisser le serveur recursif amont faire la validation et positionner un drapeau dans la reponse au cas ou celle-ci est correcte. Dnsmasq n'est pas un validateur DNSSEC, aussi il ne peut effectuer la validation comme un serveur de nom recursif, cependant il peut retransmettre les resultats de validation de ses serveurs amonts. Cette option permet l'activation de cette fonctionnalite. Vous ne devriez utiliser cela que si vous faites confiance aux serveurs amonts ainsi que le reseau entre vous et eux. Si vous utilisez le premier mode DNSSEC, la validation par le resolveur des clients, cette option n'est pas requise. Dnsmasq retourne toujours toutes les donnees necessaires par un client pour effectuer la validation lui-meme. --auth-zone=[,[/][,[/].....]] Definie une zone DNS pour laquelle dnsmasq agit en temps que serveur faisant autorite. Les enregistrements DNS definis localement et correspondant a ce domaine seront fournis. Les enregistrements A et AAAA doivent se situer dans l'un des sous- reseaux definis, ou dans un reseau correspondant a une plage DHCP (ce comportement peut etre desactive par constructor-noauth: ). Le ou les sous-reseaux sont egalement utilise(s) pour definir les domaines in-addr.arpa et ip6.arpa servant a l'interrogation DNS inverse. Si la longueur de prefixe n'est pas specifiee, elle sera par defaut de 24 pour IPv4 et 64 pour IPv6. Dans le cas d'IPv4, la longueur du masque de reseau devrait etre de 8, 16 ou 24, sauf si en cas de mise en place d'une delegation de la zone in-addr.arpa conforme au RFC 2317. --auth-soa=[,[,[,[,]]]] Specifie les champs de l'enregistrement de type SOA (Start Of Authority) associe a une zone pour laquelle le serveur fait autorite. A noter que cela est optionnel, les valeurs par defaut devant convenir a la majorite des cas. --auth-sec-servers=[,[,...]] Specifie un ou plusieurs serveur de nom secondaires pour une zone pour laquelle dnsmasq fait autorite. Ces serveurs doivent etre configures pour recuperer aupres de dnsmasq les informations liees a la zone au travers d'un transfert de zone, et repondre aux requetes pour toutes les zones pour lesquelles dnsmasq fait autorite. --auth-peer=[,[,...]] Specifie la ou les adresses de serveurs secondaires autorises a initier des requetes de transfert de zone (AXFR) pour les zones pour lesquelles dnsmasq fait autorite. Si cette option n'est pas fournie, les requetes AXFR seront acceptees pour tous les serveurs secondaires. --conntrack Lis le marquage de suivi de connexion Linux associe aux requetes DNS entrantes et positionne la meme marque au trafic amont utilise pour repondre a ces requetes. Cela permet au trafic genere par Dnsmasq d'etre associe aux requetes l'ayant declenche, ce qui est pratique pour la gestion de la bande passante (accounting) et le filtrage (firewall). Dnsmasq doit pour cela etre compile avec le support conntrack, le noyau doit egalement inclure conntrack et etre configure pour cela. Cette option ne peut pas etre combinee avec --query-port. -F, --dhcp-range=[tag: