.TH DNSMASQ 8 .SH NAME Dnsmasq \- Un serveur DHCP et cache DNS poids-plume. .SH SYNOPSIS .B dnsmasq .I [OPTION]... .SH "DESCRIPTION" .BR dnsmasq est un serveur DHCP et DNS à faible empreinte mémoire. Il offre à la fois les services DNS et DHCP pour un réseau local (LAN). .PP Dnsmasq accepte les requêtes DNS et y réponds soit en utilisant un petit cache local, soit en effectuant une requête à un serveur DNS récursif externe (par exemple celui de votre fournisseur d'accès internet). Il charge le contenu du fichier /etc/hosts afin que les noms locaux n'apparaissant pas dans les DNS globaux soient tout de même résolus, et assure également la résolution de nom pour les hôtes présents dans le service DHCP. .PP Le serveur DHCP Dnsmasq DHCP supporte les définitions d'adresses statiques et les réseaux multiples. Il envoie par défaut un jeu raisonnable de paramètres DHCP, et peut être configuré pour envoyer n'importe quel option DHCP. Il inclut un serveur TFTP sécurisé en lecture seule permettant le démarrage via le réseau/PXE de clients DHCP et supporte également le protocole BOOTP. .PP Dnsmasq supporte IPv6 pour le DNS mais pas pour le DHCP. .SH OPTIONS Notes : Il est possible d'utiliser des options sans leur donner de paramètre. Dans ce cas, la fonction correspondante sera désactivée. Par exemple .B --pid-file= (sans paramètre après le =) désactive l'écriture du fichier PID. Sur BSD, à moins que le logiciel ne soit compilé avec la bibliothèque GNU getopt, la forme longue des options ne fonctionne pas en ligne de commande; Elle est toujours supportée dans le fichier de configuration. .TP .B --test Vérifie la syntaxe du ou des fichiers de configurations. Se termine avec le code de retour 0 si tout est OK, ou un code différent de 0 dans le cas contraire. Ne démarre pas Dnsmasq. .TP .B \-h, --no-hosts Ne pas charger les noms du fichier /etc/hosts. .TP .B \-H, --addn-hosts= Fichiers d'hôtes additionnels. Lire le fichier spécifié en plus de /etc/hosts. Si .B -h est spécifié, lire uniquement le fichier spécifié. Cette option peut être répétée afin d'ajouter d'autres fichiers. Si un répertoire est donné, lis les fichiers contenus dans ce répertoire. .TP .B \-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 même façon que pour le service DHCP. Notez que cela ne s'applique pas au nom de domaine dans les CNAME, les enregistrements PTR, TXT, etc... .TP .B \-T, --local-ttl= Lorsque Dnsmasq répond avec une information provenant du fichier /etc/hosts ou avec un bail DHCP, il donne un temps de vie (time-to-live) positionné à zéro, afin d'indiquer à la machine faisant la requête que celle-ci ne doit pas être mise dans un cache. Ceci est le comportement correct dans presque toutes les situations. Cette option permet de spécifier la valeur de time-to-live à retourner (en secondes). Cela permet de réduire la charge sur le serveur, mais les clients risquent d'utiliser des données périmées dans certains cas. .TP .B --neg-ttl= Les réponses négatives provenant des serveurs amonts contiennent normalement une information de durée de vie (time-to-live) dans les enregistrements SOA, information dont dnsmasq se sert pour mettre la réponse en cache. Si la réponse du serveur amont omet cette information, dnsmasq ne cache pas la réponse. Cette option permet de doner une valeur de durée de vie par défaut (en secondes) que dnsmasq utilise pour mettre les réponses négatives dans son cache, même en l'absence d'enregistrement SOA. .TP .B \-k, --keep-in-foreground Ne pas aller en tâche de fond au lancement, mais en dehors de cela, fonctionner normalement. Ce mode est prévu pour les cas où Dnsmasq est lancé par daemontools ou launchd. .TP .B \-d, --no-daemon Mode debug (déverminage) : ne pas aller en tâche de fond, ne pas écrire de fichier pid, ne pas changer d'identifiant utilisateur, générer un état complet du cache lors de la réception d'un signal SIGUSR1, envoyer les logs sur la sortie standard d'erreur ("stderr") de même que dans le syslog, ne pas créer de processus fils pour traiter les requêtes TCP. .TP .B \-q, --log-queries Enregistrer les résultats des requêtes DNS traitées par Dnsmasq dans un fichier de traces ("logs"). Active la génération d'un état complet du cache lors de la réception d'un signal SIGUSR1. .TP .B \-8, --log-facility= Définit la "facility" dans laquelle Dnsmasq enverra ses entrées syslog, par défaut DAEMON ou LOCAL0 si le mode debug est activé. Si la "facility" contient au moins un caractère "/", alors Dnsmasq considère qu'il s'agit d'un fichier et enverra les logs dans le fichier correspondant à la place du syslog. (Les erreurs lors de la lecture de la configuration vont toujours vers le syslog, mais tous les messages postérieures à un démarrage réussi seront exclusivement envoyés vers le fichier de logs). Lorsque Dnsmasq est configuré pour envoyer ses traces vers un fichier, la réception d'un signal SIGUSR2 entraine la fermeture et réouverture du fichier. Cela permet la rotation de fichiers de traces sans nécessiter l'arrêt de Dnsmasq. .TP .B --log-async[=] Permet l'envoi de traces de manière asynchrone, et de manière optionnelle, le nombre de lignes devant être mises dans la file d'attente par Dnsmasq lorsque l'écriture vers le syslog est lente. Dnsmasq peut envoyer ses logs de manière asynchrone : cela lui permet de continuer à fonctionner sans être bloqué par le syslog, et permet à syslog d'utiliser Dnsmasq pour les résolutions DNS sans risque d'interblocage. Si la file d'attente devient pleine, Dnsmasq loggera le dépassement de file et le nombre de messages perdus. La longueur par défaut de la file d'attente est de 5 et une valeur saine sera comprise entre 5 et 25, avec une limite maximum imposée de 100. .TP .B \-x, --pid-file= Spécifie un fichier dans lequel stocker le numéro de processus (pid). La valeur par défaut est /var/run/dnsmasq.pid. .TP .B \-u, --user= Spécifie l'identité (nom d'utilisateur) prise par Dnsmasq après le démarrage. Dnsmasq doit normalement être démarré en temps que root ("super-utilisateur"), mais abandonne ses privilèges après le démarrage en changeant d'identité. Normalement cet utilisateur est l'utilisateur nobody ("personne"), mais il est possible d'en définir un autre par le biais de ce paramètre. .TP .B \-g, --group= Spécifie le groupe sous lequel Dnsmasq s'exécute. Par défaut, il s'agit du groupe "dip", afin de faciliter l'accès au fichier /etc/ppp/resolv.conf qui n'est en général pas en lecture par tout le monde. .TP .B \-v, --version Imprime le numéro de version. .TP .B \-p, --port= Ecoute sur le port numéro au lieu du port DNS standard (53). Paramétrer cette valeur à zéro désactive complètement la fonction DNS pour ne laisser actif que le DHCP ou le TFTP. .TP .B \-P, --edns-packet-max= Spécifie la taille maximum de paquet UDP EDNS.0 supporté par le relai DNS. Le défaut est de 1280, qui est la valeur maximale recommandée pour ethernet dans la RFC2671. .TP .B \-Q, --query-port= Envoie et écoute les requêtes DNS sortantes depuis le port UDP spécifié par , et non sur un port aléatoire. NOTE : Cette option rends dnsmasq moins sûr contre les attaques par usurpation DNS ("DNS spoofing"), mais cela peut permettre d'utiliser moins de ressources et d'être plus rapide. Donner une valeur de zéro à cette option restaure le comportement par défaut présent dans les versions de dnsmasq inférieures à 2.43 qui consiste à n'allouer qu'un seul port alloué par le système d'exploitation. .TP .B --min-port= Ne pas utiliser de port dont le numéro est inférieur à la valeur donnée en paramètre pour les requêtes DNS sortantes. Dnsmasq choisis un port source aléatoire pour les requêtes sortantes : lorsque cette option est fournie, les ports utilisés seront toujours au dessus de la valeur spécifiée. Utile pour des systèmes derrière des dispositifs garde-barrières ("firewalls"). .TP .B \-i, --interface= N'écouter que sur l'interface réseau spécifiée. Dnsmasq aujoute automatiquement l'interface locale ("loopback") à la liste des interfaces lorsque l'option .B --interface est utilisée. Si aucune option .B --interface ou .B --listen-address n'est donnée, Dnsmasq écoutera sur toutes les interfaces disponibles sauf celle(s) spécifiée(s) par l'option .B --except-interface. Les alias d'interfaces IP (e-g "eth1:0") ne peuvent être utilisés ni avec .B --interface ni .B \--except-interface. Utiliser l'option .B --listen-address à la place. .TP .B \-I, --except-interface= Ne pas écouter sur l'interface spécifiée. Notez que l'ordre dans lesquelles les options .B \--listen-address , .B --interface et .B --except-interface sont fournies n'importe pas, et que l'option .B --except-interface l'emporte toujours sur les autres. .TP .B \-2, --no-dhcp-interface= Ne pas fournir de service DHCP sur l'interface spécifiée, mais fournir tout de même le service DNS. .TP .B \-a, --listen-address= Ecouter sur la ou les adresse(s) IP spécifiée(s). Les options .B \--interface et .B \--listen-address peuvent-être spécifiées simultanément, auquel cas un jeu d'interfaces et d'adresses seront utilisées. Notez que si aucune option .B \--interface n'est donnée alors qu'une option .B \--listen-address l'est, Dnsmasq n'écoutera pas automatiquement sur l'interface locale ("loopback"). Pour activer l'écoute sur l'interface locale, il est alors nécessaire de fournir explicitement son adresse IP, 127.0.0.1 via l'option .B \--listen-address. .TP .B \-z, --bind-interfaces Sur les systèmes qui le supporte, Dnsmasq s'associe avec l'interface joker ("wildcard"), même lorsqu'il ne doit écouter que sur certaines interfaces. Par la suite, il rejette les requêtes auxquelles il ne doit pas répondre. Cette situation présente l'avantage de fonctionner même lorsque les interfaces vont et viennent ou changent d'adresses. L'option .B --bind-interfaces force Dnsmasq à ne réellement s'associer qu'avec les interfaces sur lesquelles il doit écouter. L'un des seuls cas où cette option est utile est celui où un autre serveur de nom (ou une autre instance de Dnsmasq) tourne sur la même machine. Utiliser cette option permet également d'avoir plusieurs instances de Dnsmasq fournissant un service DHCP sur la même machine. .TP .B \-y, --localise-queries Retourne des réponses aux requêtes DNS dépendantes de l'interface sur laquelle la requête a été reçue, à partir du fichier /etc/hosts. Si un nom dans /etc/hosts a plus d'une adresse associée avec lui, et qu'une des adresses au moins est dans le même sous-réseau que l'interface sur laquelle la requête a été reçue, alors ne retourne que la(les) adresse(s) du sous-réseau considéré. Cela permet d'avoir dans /etc/hosts un serveur avec de multiples adresses, une pour chacune de ses interfaces, et de fournir aux hôtes l'adresse correcte (basée sur le réseau auquel ils sont attachés). Cette possibilité est actuellement limitée à IPv4. .TP .B \-b, --bogus-priv Fausse résolution inverse pour les réseaux privés. Toutes les requêtes DNS inverses pour des adresses IP privées (ie 192.168.x.x, etc...) qui ne sont pas trouvées dans /etc/hosts ou dans le fichier de baux DHCP se voient retournées une réponse "pas de tel domaine" ("no such domain") au lieu d'être transmises aux serveurs de nom amont ("upstream server"). .TP .B \-V, --alias=[]|[-],[,] Modifie les adresses IPv4 retournées par les serveurs de nom amont; est remplacée par . Si le optionnel est fourni, alors toute adresse correspondant à l'adresse / sera réécrite. Ainsi par exemple .B --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 fonctionnalité correspond à ce que les routeurs Cisco PIX appellent "bidouillage DNS" ("DNS doctoring"). Si l'ancienne IP est donnée sous la forme d'une gamme d'adresses, alors seules les adresses dans cette gamme seront réecrites, et non le sous-réseau dans son ensemble. Ainsi, .B --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 à 10.0.0.10->10.0.0.40 .TP .B \-B, --bogus-nxdomain= Transforme les réponses contenant l'adresse IP fournie en réponses "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 commencé à retourner l'adresse d'un serveur web publicitaire en réponse aux requêtes pour les noms de domaines non enregistrés, au lieu de la réponse correcte "NXDOMAIN". Cette option demande à Dnsmasq de retourner la réponse correcte lorsqu'il constate ce comportement. L'adresse retournée par Verisign en septembre 2003 est 64.94.110.11. .TP .B \-f, --filterwin2k Les dernières versions de windows font des requêtes DNS périodiques auxquelles non seulement les serveurs DNS publics ne peuvent donner de réponse, mais qui, de surcroît, peuvent poser des problèmes en déclenchant des connexions intempestives pour des liens réseaux avec des connexions "à la demande". Fournir cette option active le filtrage des requêtes de ce type. Les requêtes bloquées sont les requêtes pour les entrées de type SOA ou SRV, ainsi que les requêtes de type ANY avec des noms possédant des caractères sous-lignés (requêtes pour des serveurs LDAP). .TP .B \-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 .BR resolv.conf (5) les entrées correspondant aux serveurs de noms (nameserver). Dnsmasq peut lire plusieurs fichiers de type resolv.conf, le premier fichier spécifié remplace le fichier par défaut, le contenu des suivants est rajouté dans la liste des fichiers à consulter. Seul le fichier ayant la dernière date de modification sera chargé en mémoire. .TP .B \-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. .TP .B \-1, --enable-dbus Autoriser la mise à jour de la configuration de Dnsmasq par le biais d'appel de méthodes DBus. Il est possible par ce biais de mettre à jour l'adresse de serveurs DNS amont (et les domaines correspondants) et de vider le cache. Cette option nécessite que Dnsmasq soit compilé avec le support DBus. .TP .B \-o, --strict-order Par défaut, Dnsmasq envoie les requêtes à 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 à essayer d'interroger, pour chaque requête, les serveurs DNS dans leur ordre d'apparition dans le fichier /etc/resolv.conf. .TP .B --all-servers Par défaut, lorsque dnsmasq a plus d'un serveur amont disponible, il n'envoie les requêtes qu'à un seul serveur. Spécifier cette option force dnsmasq à effectuer ses requêtes à tous les serveurs disponibles. Le résultat renvoyé au client sera celui fournit par le premier serveur ayant répondu. .TP .B --stop-dns-rebind Rejete (et enregistre dans le journal d'activité) les adresses dans la gamme d'adresses IP privée (au sens RFC1918) qui pourraient être renvoyées par les serveurs amonts suite à une résolution de nom. Cela bloque les attaques cherchant à détourner de leur usage les logiciels de navigation web ('browser') en s'en servant pour découvrir les machines situées sur le réseau local. .TP .B \-n, --no-poll Ne pas vérifier régulièrement si le fichier /etc/resolv.conf a été modifié. .TP .B --clear-on-reload Lorsque le fichier /etc/resolv.conf est relu, vider le cache DNS. Cela est utile si les nouveaux serveurs sont susceptibles d'avoir des données différentes de celles stockées dans le cache. .TP .B \-D, --domain-needed Indique à Dnsmasq de ne jamais transmettre en amont de requêtes pour des noms simples, ne comprenant donc ni points ni nom de domaine. Si un nom n'est pas dans /etc/hosts ou dans la liste des baux DHCP, alors une réponse de type "non trouvé" est renvoyée. .TP .B \-S, --local, --server=[/[]/[domaine/]][[#][@|[#]]] Spécifie 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 .B -R . Si un ou plusieurs nom(s) de domaine(s) optionnel(s) sont fournis, ce serveur sera uniquement utilisé uniquement pour ce(s) domaine(s), et toute requête concernant ce(s) domaine(s) sera adressée uniquement à ce serveur. Cette option est destinée aux serveurs de nom privés : si vous avez un serveur de nom sur votre réseau ayant pour adresse IP 192.168.1.1 et effectuant la résolution des noms de la forme xxx.internal.thekelleys.org.uk, alors .B -S /internal.thekelleys.org.uk/192.168.1.1 enverra toutes les requêtes pour les machines internes vers ce serveur de nom, alors que toutes les autres requêtes seront adressées aux serveurs indiqués dans le fichier /etc/resolv.conf. Une spécification de nom de domaine vide, .B // possède le sens particulier de "pour les noms non qualifiés uniquement", c'est-à-dire les noms ne possédant pas de points. Un port non standard peut être rajouté à la suite des adresses IP en utilisant le caractère #. Plus d'une option .B -S est autorisée, en répétant les domaines et adresses IP comme requis. Il est également permis de donner une option .B -S avec un nom de domaine mais sans adresse IP; Cela informe Dnsmasq que le domaine est local et qu'il doit répondre aux requêtes le concernant depuis les entrées contenues dans le fichier /etc/hosts ou les baux DHCP, et ne doit en aucun cas transmettre les requêtes aux serveurs amonts. .B local est synonyme de .B server ("serveur") afin de rendre plus claire l'utilisation de cette option pour cet usage particulier. La chaîne de caractères optionnelle suivant le caractère @ permet de définir la source que Dnsmasq doit utiliser pour les réponses à ce serveur de nom. Il doit s'agir d'une des adresses IP appartenant à la machine sur laquelle tourne Dnsmasq ou sinon la ligne sera ignorée et une erreur sera consignée dans le journal des événements, ou alors d'un nom d'interface. Si un nom d'interface est donné, alors les requêtes vers le serveur de nom seront envoyées depuis cette interface; si une adresse ip est donnée, alors l'adresse source de la requête sera l'adresse en question. L'option query-port est ignorée pour tous les serveurs ayant une adresse source spécifiée, mais il est possible de la donner directement dans la spécification de l'adresse source. Forcer les requêtes à être émises depuis une interface spécifique n'est pas possible sur toutes les plateformes supportées par dnsmasq. .TP .B \-A, --address=//[domaine/] Spécifie une adresse IP à retourner pour toute requête pour les domaines fournis en option. Les requêtes pour ce(s) domaine(s) ne sont jamais transmises aux serveurs amonts et reçoivent comme réponse l'adresse IP spécifiée qui peut être une adresse IPv4 ou IPv6. Pour donner à la fois une adresse IPv4 et une adresse IPv6 pour un domaine, utiliser plusieurs options .B -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 totalité du domaine doubleclick.net vers un serveur web local afin d'éviter les bannières publicitaires. La spécification de domaine fonctionne de la même façon que .B --server, avec la caractéristique supplémentaire que .B /#/ coïncide avec tout domaine. Ainsi, .B --address=/#/1.2.3.4 retournera 1.2.3.4 pour toute requête n'ayant de réponse ni dans /etc/hosts, ni dans les baux DHCP, et n'étant pas transmise à un serveur spécifique par le biais d'une directive .B --server. .TP .B \-m, --mx-host=[[,],] Spécifie un enregistrement de type MX pour retournant le nom donné dans (s'il est présent), ou sinon le nom spécifié dans l'option .B --mx-target si elle est présente. Sinon retourne le nom de la machine sur laquelle Dnsmasq tourne. La valeur par défaut (spécifiée dans l'option .B --mx-target ) est utile dans un réseau local pour rediriger les courriers électroniques vers un serveur central. La valeur de préférence est optionnelle et vaut par défaut 1 si elle n'est pas spécifiée. Plus d'une entrée MX peut être fournie pour un hôte donné. .TP .B \-t, --mx-target= Spécifie la réponse par défaut fournie par Dnsmasq pour les requêtes sur des enregistrements de type MX. Voir .B --mx-host. Si .B --mx-target est donné mais pas de .B --mx-host, alors Dnsmasq retourne comme réponse un enregistrement MX contenant le nom d'hôte spécifié dans l'option .B --mx-target pour toute requête concernant le MX de la machine sur laquelle tourne Dnsmasq. .TP .B \-e, --selfmx Définit, pour toutes les machines locales, un MX correspondant à l'hôte considéré. Les machines locales sont celles définies dans le fichier /etc/hosts ou dans un bail DHCP. .TP .B \-L, --localmx Définit, pour toutes les machines locales, un enregistrement MX pointant sur l'hôte spécifié par mx-target (ou la machine sur laquelle Dnsmasq tourne). Les machines locales sont celles définies dans le fichier /etc/hosts ou dans un bail DHCP. .TP .B \-W --srv-host=<_service>.<_protocole>.[],[[,[,[,]]]] Spécifie un enregistrement DNS de type SRV. Voir la RFC2782 pour plus de détails. Si le champs n'est pas fourni, prends par défaut la valeur fournie dans l'option .B --domain. La valeur par défaut pour le domaine est vide et le port par défaut est 1, alors que les poids et priorités par défaut sont 0. Attention lorsque vous transposez des valeurs issues d'une configuration BIND : les ports, poids et priorités sont dans un ordre différents. Pour un service/domaine donné, plus d'un enregistrement SRV est autorisé et tous les enregistrements qui coïncident sont retournés dans la réponse. .TP .B \-Y, --txt-record=[[,],] Définit un enregistrement DNS de type TXT. La valeur de l'enregistrement TXT est un ensemble de chaînes de caractères, donc un nombre variable de chaînes de caractères peuvent être spécifiées, séparées par des virgules. .TP .B --ptr-record=[,] Définit un enregistrement DNS de type PTR. .TP .B --naptr-record=,,,,,[,] Retourne un enregistrement de type NAPTR, tel que spécifié dans le RFC3403. .TP .B --cname=, Retourne un enregistrement de type CNAME qui indique que est en réalité . Il existe des contraintes significatives sur la valeur de cible; il doit s'agir d'un nom DNS qui est connu de dnsmasq via /etc/hosts (ou un fichier hôtes additionnel) ou via DHCP. Si une cible ne satisfait pas ces critères, le CNAME est ignoré. Le CNAME doit être unique, mais il est autorisé d'avoir plus d'un CNAME pointant vers la même cible. .TP .B --interface-name=, Définit un entregistrement DNS associant le nom avec l'adresse primaire sur l'interface donnée en argument. Cette option spécifie un enregistrement de type A pour le nom donné en argument de la même façon que s'il était défini par une ligne de /etc/hosts, sauf que l'adresse n'est pas constante mais dépendante de l'interface définie. Si l'interface est inactive, non existante ou non configurée, une réponse vide est fournie. Un enregistrement inverse (PTR) est également créé par cette option, associant l'adresse de l'interface avec le nom. Plus d'un nom peut être associé à une interface donnée en répétant cette option plusieurs fois; dans ce cas, l'enregistrement inverse pointe vers le nom fourni dans la première instance de cette option. .TP .B \-c, --cache-size= Définit la taille du cache de Dnsmasq. La valeur par défaut est de 150 noms. Définir une valeur de zéro désactive le cache. .TP .B \-N, --no-negcache Désactive le "cache négatif". Le "cache négatif" permet à Dnsmasq de se souvenir des réponses de type "no such domain" fournies par les serveurs DNS en amont et de fournir les réponses sans avoir à re-transmettre les requêtes aux serveurs amont. .TP .B \-0, --dns-forward-max= Définit le nombre maximum de requêtes DNS simultanées. La valeur par défaut est 150, ce qui devrait être suffisant dans la majorité des configurations. La seule situation identifiée dans laquelle cette valeur nécessite d'être augmentée est lorsqu'un serveur web a la résolution de nom activée pour l'enregistrement de son journal des requêtes, ce qui peut générer un nombre important de requêtes simultanées. .TP .B \-F, --dhcp-range=[[net:]identifiant de réseau,],[[,],][,] Active le serveur DHCP. Les adresses seront données dans la plage comprise entre et et à partir des adresses définies statiquement dans l'option .B dhcp-host. Si une durée de bail est donnée, alors les baux seront donnés pour cette durée. La durée de bail est donnée en secondes, en minutes (exemple : 45m), en heures (exemple : 1h) ou être la chaine de caractère "infinite" pour une durée indéterminée. Si aucune valeur n'est donnée, une durée de bail par défaut de une heure est appliquée. La valeur minimum pour un bail DHCP est de 2 minutes. Cette option peut être répétée, avec différentes adresses, pour activer le service DHCP sur plus d'un réseau. Pour des réseaux directement connectés (c'est-à-dire des réseaux dans lesquels la machine sur laquelle tourne Dnsmasq possède une interface), le masque de réseau est optionnel. Il est par contre requis pour les réseaux pour lesquels le service DHCP se fait via un relais DHCP ("relay agent"). L'adresse de broadcast est toujours optionnelle. Il est toujours possible d'avoir plus d'une plage DHCP pour un même sous-réseau. L'identifiant de réseau optionnel est un label alphanumérique qui permet de marquer ce réseau afin de fournir des options DHCP spécifiques à chaque réseau. Lorsque préfixé par 'net:', la signification change est au lieu de définir un label, il définit le label pour laquelle la règle s'applique. Un seul label peut- être défini mais plusieurs labels peuvent coïncider. L'adresse de fin peut être remplacée par le mot-clef .B static ("statique") qui indique à Dnsmasq d'activer le service DHCP pour le réseau spécifié, mais de ne pas activer l'allocation dynamique d'adresses IP : Seuls les hôtes possédant des adresses IP statiques fournies via .B dhcp-host ou présentes dans le fichier /etc/ethers seront alors servis par le DHCP. L'adresse de fin peut-être remplacée par le mot-clef .B proxy , auquel cas Dnsmasq fournira un service de DHCP proxy pour le sous-réseau spécifié. (voir .B pxe-prompt et .B pxe-service pour plus de détails). .TP .B \-G, --dhcp-host=[][,id:|*][,net:][,][,][,][,ignore] Spécifie les paramètres DHCP relatifs à un hôte. Cela permet à une machine possédant une adresse matérielle spécifique de se voir toujours allouée les mêmes nom d'hôte, adresse IP et durée de bail. Un nom d'hôte spécifié comme ceci remplace le nom fourni par le client DHCP de la machine hôte. Il est également possible d'omettre l'adresse matérielle et d'inclure le nom d'hôte, auquel cas l'adresse IP et la durée de bail s'appliqueront à toute machine se réclamant de ce nom. Par exemple .B --dhcp-host=00:20:e0:3b:13:af,wap,infinite spécifie à Dnsmasq de fournir à la machine d'adresse matérielle 00:20:e0:3b:13:af le nom, et un bail de durée indéterminée. .B --dhcp-host=lap,192.168.0.199 spécifie à Dnsmasq d'allouer toujours à la machine portant le nom lap l'adresse IP 92.168.0.199. Les adresses allouées comme ceci ne sont pas contraintes dans une plage d'adresse spécifiée par une option --dhcp-range, mais elles doivent être sur un réseau servi par le serveur DHCP. Il est possible d'utiliser des identifiants clients plutôt que des adresses matérielles pour identifier les hôtes, en préfixant par ceux-ci par 'id:'. Ainsi, .B --dhcp-host=id:01:02:03:04,..... réfère à l'hôte d'identifiant 01:02:03:04. Il est également possible de spécifier l'identifiant client sous la forme d'une chaîne de caractères, comme ceci : .B --dhcp-host=id:identifiantclientsousformedechaine,..... L'option spéciale id:* signifie : "ignorer tout identifiant client et n'utiliser que l'adresse matérielle". Cela est utile lorsqu'un client présente un identifiant client mais pas les autres. Si un nom apparaît dans /etc/hosts, l'adresse associée peut être allouée à un bail DHCP mais seulement si une option .B --dhcp-host spécifiant le nom existe par ailleurs. Le mot clef "ignore" ("ignorer") indique à Dnsmasq de ne jamais fournir de bail DHCP à une machine. La machine peut être spécifiée par son adresse matérielle, son identifiant client ou son nom d'hôte. Par exemple .B --dhcp-host=00:20:e0:3b:13:af,ignore Cela est utile lorsqu'un autre serveur DHCP sur le réseau doit être utilisé par certaines machines. Le paramètre net: permet de définir un identifiant de réseau lorsque l'option dhcp-host est utilisée. Cela peut servir à sélectionner des options DHCP juste pour cet hôte. Lorsqu'une machine coïncide avec une directive dhcp-host (ou une impliquée par /etc/ethers), alors l'identifiant réseau réservé "known" ("connu") est associé. Cela permet à Dnsmasq d'être configuré pour ignorer les requêtes issus de machines inconnue par le biais de .B --dhcp-ignore=#known. Les adresses ethernet (mais pas les identifiants clients) peuvent être définies avec des octets joker, ainsi par exemple .B --dhcp-host=00:20:e0:3b:13:*,ignore demande à Dnsmasq d'ignorer une gamme d'adresses matérielles. Il est à noter que "*" doit-être précédé d'un caractère d'échappement ou mis entre guillemets lorsque spécifié en option de ligne de commande, mais pas dans le fichier de configuration. Les adresses matérielles coïncident en principe avec n'importe quel type de réseau (ARP), mais il est possible de les limiter à un seul type ARP en les précédant du type ARP (en Hexadécimal) et de "-". Ainsi .B --dhcp-host=06-00:20:e0:3b:13:af,1.2.3.4 coïncidera uniquement avec des adresses matérielles Token-Ring, puisque le type ARP pour une adresse Token-Ring est 6. Un cas spécial correspond à l'inclusion d'une ou plusieurs adresses matérielles, c-à-d : .B --dhcp-host=11:22:33:44:55:66,12:34:56:78:90:12,192.168.0.2. Cela permet à une adresse IP d'être associé à plusieurs adresses matérielles, et donne à dnsmasq la permission d'abandonner un bail DHCP attribué à l'une de ces adresses lorsqu'une autre adresse dans la liste demande un bail. Ceci est une opération dangereuse qui ne fonctionnera de manière fiable que si une adresse matérielle est active à un moment donné et dnsmasq n'a aucun moyen de s'assurer de cela. Cela est utile, par exemple, pour allouer une adresse IP stable à un laptop qui aurait à la fois une connexion filaire et sans-fil. .TP .B --dhcp-hostsfile= Lis les informations d'hôtes DHCP dans le fichier spécifié. Le fichier contient des informations à raison d'un hôte par ligne. Le format d'une ligne est la même que le texte fourni à la droite sur caractère "=" dans l'option .B --dhcp-host. L'avantage de stocker les informations sur les hôtes DHCP dans ce fichier est que celles-ci peuvent être modifiées sans recharger Dnsmasq; le fichier sera relu lorsque Dnsmasq reçoit un signal SIGHUP. .TP .B --dhcp-optsfile= Lis les informations relatives aux options DHCP dans le fichier spécifié. L'intérêt d'utiliser cette option est le même que pour --dhcp-hostsfile : le fichier spécifié sera rechargé à la réception par dnsmasq d'un signal SIGHUP. Notez qu'il est possible d'encoder l'information via .B --dhcp-boot en utilisant les noms optionnels bootfile-name, server-ip-address et tftp-server. Ceci permet d'inclure ces options dans un fichier "dhcp-optsfile".DNSMASQ_SUPPLIED_HOSTNAME .TP .B \-Z, --read-ethers Lis les informations d'hôtes DHCP dans le fichier /etc/ethers. Le format de /etc/ethers est une adresse matérielle suivie, soit par un nom d'hôte, soit par une adresse IP sous la forme de 4 chiffres séparés par des points. Lorsque lu par Dnsmasq, ces lignes ont exactement le même effet que l'option .B --dhcp-host contenant les mêmes informations. /etc/ethers est relu à la réception d'un signal SIGHUP par Dnsmasq. .TP .B \-O, --dhcp-option=[,[,]][encap: