blob: 2ae0d09659803488ba7c7f3d221a1f3634f200c3 [file] [log] [blame]
Simon Kelley824af852008-02-12 20:43:05 +00001.TH DNSMASQ 8
2.SH NAME
3Dnsmasq \- Un serveur DHCP et cache DNS poids-plume.
4.SH SYNOPSIS
5.B dnsmasq
6.I [OPTION]...
7.SH "DESCRIPTION"
8.BR dnsmasq
Simon Kelley834f36f2013-04-17 13:52:49 +01009est un serveur à faible empreinte mémoire faisant DNS, TFTP, PXE, annonces de
10routeurs et DHCP. Il offre à la fois les services DNS et DHCP pour un réseau
11local (LAN).
Simon Kelley824af852008-02-12 20:43:05 +000012.PP
13Dnsmasq accepte les requêtes DNS et y réponds soit en utilisant un petit cache
14local, soit en effectuant une requête à un serveur DNS récursif externe (par
15exemple celui de votre fournisseur d'accès internet). Il charge le contenu du
16fichier /etc/hosts afin que les noms locaux n'apparaissant pas dans les DNS
17globaux soient tout de même résolus, et assure également la résolution de nom
Simon Kelley834f36f2013-04-17 13:52:49 +010018pour les hôtes présents dans le service DHCP. Il peut aussi agir en temps que
19serveur DNS faisant autorité pour un ou plusieurs domaines, permettant à des
20noms locaux d'apparaitre dans le DNS global.
Simon Kelley824af852008-02-12 20:43:05 +000021.PP
Simon Kelley7622fc02009-06-04 20:32:05 +010022Le serveur DHCP Dnsmasq DHCP supporte les définitions d'adresses statiques et les
Simon Kelley834f36f2013-04-17 13:52:49 +010023réseaux multiples. Il fournit par défaut un jeu raisonnable de paramètres DHCP,
24et peut être configuré pour fournir n'importe quelle option DHCP.
Simon Kelley824af852008-02-12 20:43:05 +000025Il inclut un serveur TFTP sécurisé en lecture seule permettant le démarrage via
Simon Kelley834f36f2013-04-17 13:52:49 +010026le réseau/PXE de clients DHCP et supporte également le protocole BOOTP. Le
27support PXE est complet, et comprend un mode proxy permettant de fournir des
28informations PXE aux clients alors que l'allocation DHCP est effectuée par un
29autre serveur.
Simon Kelley824af852008-02-12 20:43:05 +000030.PP
Simon Kelley834f36f2013-04-17 13:52:49 +010031Le serveur DHCPv6 de dnsmasq possède non seulement les mêmes fonctionalités
32que le serveur DHCPv4, mais aussi le support des annonces de routeurs ainsi
33qu'une fonctionalité permettant l'addition de ressources AAAA pour des
34clients utilisant DHCPv4 et la configuration IPv6 sans état (stateless
35autoconfiguration).
36Il inclut le support d'allocations d'adresses (à la fois en DHCPv6 et en
37annonces de routeurs - RA) pour des sous-réseaux dynamiquement délégués via
38une délégation de préfixe DHCPv6.
39.PP
40Dnsmasq est developpé pour de petits systèmes embarqués. It tends à avoir
41l'empreinte mémoire la plus faible possible pour les fonctions supportées,
42et permet d'exclure les fonctions inutiles du binaire compilé.
Simon Kelley824af852008-02-12 20:43:05 +000043.SH OPTIONS
44Notes : Il est possible d'utiliser des options sans leur donner de paramètre.
45Dans ce cas, la fonction correspondante sera désactivée. Par exemple
46.B --pid-file=
47(sans paramètre après le =) désactive l'écriture du fichier PID.
48Sur BSD, à moins que le logiciel ne soit compilé avec la bibliothèque GNU
49getopt, la forme longue des options ne fonctionne pas en ligne de commande; Elle
50est toujours supportée dans le fichier de configuration.
51.TP
Simon Kelley7622fc02009-06-04 20:32:05 +010052.B --test
53Vérifie la syntaxe du ou des fichiers de configurations. Se termine avec le
54code de retour 0 si tout est OK, ou un code différent de 0 dans le cas
55contraire. Ne démarre pas Dnsmasq.
56.TP
Simon Kelley824af852008-02-12 20:43:05 +000057.B \-h, --no-hosts
58Ne pas charger les noms du fichier /etc/hosts.
59.TP
60.B \-H, --addn-hosts=<fichier>
61Fichiers d'hôtes additionnels. Lire le fichier spécifié en plus de /etc/hosts.
62Si
63.B -h
64est spécifié, lire uniquement le fichier spécifié. Cette option peut être
Simon Kelley7622fc02009-06-04 20:32:05 +010065répétée afin d'ajouter d'autres fichiers. Si un répertoire est donné, lis les
66fichiers contenus dans ce répertoire.
Simon Kelley824af852008-02-12 20:43:05 +000067.TP
68.B \-E, --expand-hosts
69Ajoute le nom de domaine aux noms simples (ne contenant pas de point dans le
70nom) contenus dans le fichier /etc/hosts, de la même façon que pour le service
Simon Kelley1f15b812009-10-13 17:49:32 +010071DHCP. Notez que cela ne s'applique pas au nom de domaine dans les CNAME, les
72enregistrements PTR, TXT, etc...
Simon Kelley824af852008-02-12 20:43:05 +000073.TP
74.B \-T, --local-ttl=<durée>
75Lorsque Dnsmasq répond avec une information provenant du fichier /etc/hosts ou
76avec un bail DHCP, il donne un temps de vie (time-to-live) positionné à zéro,
77afin d'indiquer à la machine faisant la requête que celle-ci ne doit pas être
78mise dans un cache. Ceci est le comportement correct dans presque toutes les
79situations.
80Cette option permet de spécifier la valeur de time-to-live à retourner (en
81secondes). Cela permet de réduire la charge sur le serveur, mais les clients
82risquent d'utiliser des données périmées dans certains cas.
83.TP
Simon Kelley1a6bca82008-07-11 11:11:42 +010084.B --neg-ttl=<durée>
85Les réponses négatives provenant des serveurs amonts contiennent normalement
86une information de durée de vie (time-to-live) dans les enregistrements SOA,
87information dont dnsmasq se sert pour mettre la réponse en cache. Si la réponse
88du serveur amont omet cette information, dnsmasq ne cache pas la réponse. Cette
89option permet de doner une valeur de durée de vie par défaut (en secondes) que
90dnsmasq utilise pour mettre les réponses négatives dans son cache, même en
91l'absence d'enregistrement SOA.
92.TP
Simon Kelley8ef5ada2010-06-03 19:42:45 +010093.B --max-ttl=<durée>
94Définie la valeur de TTL maximum qui sera fournie aux clients. La valeur maximum
Simon Kelley834f36f2013-04-17 13:52:49 +010095de TTL spécifiée sera fournie aux clients en remplacement de la vraie valeur de
96TTL si cette dernière est supérieure. La valeur réelle de TTL est cependant
97conservée dans le cache afin d'éviter de saturer les serveurs DNS en amont.
98.TP
99.B --max-cache-ttl=<durée>
100Définie la valeur de TTL maximum pour les entrées dans le cache
101.TP
102.B --auth-ttl=<durée>
103Définie la valeur de TTL retournée pour les réponses du serveur faisant
104autorité.
Simon Kelley8ef5ada2010-06-03 19:42:45 +0100105.TP
Simon Kelley824af852008-02-12 20:43:05 +0000106.B \-k, --keep-in-foreground
107Ne pas aller en tâche de fond au lancement, mais en dehors de cela, fonctionner
108normalement. Ce mode est prévu pour les cas où Dnsmasq est lancé par daemontools
109ou launchd.
110.TP
111.B \-d, --no-daemon
112Mode debug (déverminage) : ne pas aller en tâche de fond, ne pas écrire de
113fichier pid, ne pas changer d'identifiant utilisateur, générer un état complet
114du cache lors de la réception d'un signal SIGUSR1, envoyer les logs sur la
115sortie standard d'erreur ("stderr") de même que dans le syslog, ne pas créer de
Simon Kelley834f36f2013-04-17 13:52:49 +0100116processus fils pour traiter les requêtes TCP. A noter que cette option est à
117user pour du déverminage seulement : pour empêcher dnsmasq se fonctionner en
118mode démon en production, utiliser
119.B -k.
Simon Kelley824af852008-02-12 20:43:05 +0000120.TP
121.B \-q, --log-queries
122Enregistrer les résultats des requêtes DNS traitées par Dnsmasq dans un fichier
123de traces ("logs"). Active la génération d'un état complet du cache lors de la
124réception d'un signal SIGUSR1.
125.TP
126.B \-8, --log-facility=<facility>
127Définit la "facility" dans laquelle Dnsmasq enverra ses entrées syslog, par
128défaut DAEMON ou LOCAL0 si le mode debug est activé. Si la "facility" contient
129au moins un caractère "/", alors Dnsmasq considère qu'il s'agit d'un fichier et
Simon Kelley8ef5ada2010-06-03 19:42:45 +0100130enverra les logs dans le fichier correspondant à la place du syslog. Si la
131"facility" est '-', alors dnsmasq envoie les logs sur la sortie d'erreur
132standard stderr. (Les erreurs lors de la lecture de la configuration vont
133toujours vers le syslog, mais tous les messages postérieurs à un démarrage
134réussi seront exclusivement envoyés vers le fichier de logs).
135Lorsque Dnsmasq est configuré pour envoyer
Simon Kelley824af852008-02-12 20:43:05 +0000136ses traces vers un fichier, la réception d'un signal SIGUSR2 entraine la
137fermeture et réouverture du fichier. Cela permet la rotation de fichiers de
138traces sans nécessiter l'arrêt de Dnsmasq.
139.TP
140.B --log-async[=<lignes>]
141Permet l'envoi de traces de manière asynchrone, et de manière optionnelle, le
142nombre de lignes devant être mises dans la file d'attente par Dnsmasq lorsque
143l'écriture vers le syslog est lente.
144Dnsmasq peut envoyer ses logs de manière asynchrone : cela lui permet de
145continuer à fonctionner sans être bloqué par le syslog, et permet à syslog
146d'utiliser Dnsmasq pour les résolutions DNS sans risque d'interblocage.
147Si la file d'attente devient pleine, Dnsmasq loggera le dépassement de file et
148le nombre de messages perdus. La longueur par défaut de la file d'attente est de
1495 et une valeur saine sera comprise entre 5 et 25, avec une limite maximum
150imposée de 100.
151.TP
152.B \-x, --pid-file=<chemin>
153Spécifie un fichier dans lequel stocker le numéro de processus (pid). La valeur
154par défaut est /var/run/dnsmasq.pid.
155.TP
156.B \-u, --user=<nom d'utilisateur>
157Spécifie l'identité (nom d'utilisateur) prise par Dnsmasq après le démarrage.
158Dnsmasq doit normalement être démarré en temps que root ("super-utilisateur"),
159mais abandonne ses privilèges après le démarrage en changeant d'identité.
160Normalement cet utilisateur est l'utilisateur nobody ("personne"), mais il est
161possible d'en définir un autre par le biais de ce paramètre.
162.TP
163.B \-g, --group=<nom de groupe>
164Spécifie le groupe sous lequel Dnsmasq s'exécute. Par défaut, il s'agit du
165groupe "dip", afin de faciliter l'accès au fichier /etc/ppp/resolv.conf qui
166n'est en général pas en lecture par tout le monde.
167.TP
168.B \-v, --version
169Imprime le numéro de version.
170.TP
171.B \-p, --port=<port>
Simon Kelley1a6bca82008-07-11 11:11:42 +0100172Ecoute sur le port numéro <port> au lieu du port DNS standard (53). Paramétrer
173cette valeur à zéro désactive complètement la fonction DNS pour ne laisser actif
174que le DHCP ou le TFTP.
Simon Kelley824af852008-02-12 20:43:05 +0000175.TP
176.B \-P, --edns-packet-max=<taille>
177Spécifie la taille maximum de paquet UDP EDNS.0 supporté par le relai DNS. Le
Simon Kelley316e2732010-01-22 20:16:09 +0000178défaut est de 4096, qui est la valeur recommandée dans la RFC5625.
Simon Kelley824af852008-02-12 20:43:05 +0000179.TP
180.B \-Q, --query-port=<numéro de port>
181Envoie et écoute les requêtes DNS sortantes depuis le port UDP spécifié par
Simon Kelley1a6bca82008-07-11 11:11:42 +0100182<numéro de port>, et non sur un port aléatoire. NOTE : Cette option rends
183dnsmasq moins sûr contre les attaques par usurpation DNS ("DNS spoofing"), mais
184cela peut permettre d'utiliser moins de ressources et d'être plus rapide. Donner
185une valeur de zéro à cette option restaure le comportement par défaut présent dans
186les versions de dnsmasq inférieures à 2.43 qui consiste à n'allouer qu'un seul port
187alloué par le système d'exploitation.
188.TP
189.B --min-port=<port>
190Ne pas utiliser de port dont le numéro est inférieur à la valeur donnée en paramètre
191pour les requêtes DNS sortantes. Dnsmasq choisis un port source aléatoire pour les
192requêtes sortantes : lorsque cette option est fournie, les ports utilisés seront toujours
193au dessus de la valeur spécifiée. Utile pour des systèmes derrière des dispositifs
194garde-barrières ("firewalls").
Simon Kelley824af852008-02-12 20:43:05 +0000195.TP
196.B \-i, --interface=<nom d'interface>
197N'écouter que sur l'interface réseau spécifiée. Dnsmasq aujoute automatiquement
198l'interface locale ("loopback") à la liste des interfaces lorsque l'option
199.B --interface
200est utilisée.
201Si aucune option
202.B --interface
203ou
204.B --listen-address
205n'est donnée, Dnsmasq écoutera sur toutes les interfaces disponibles sauf
206celle(s) spécifiée(s) par l'option
207.B --except-interface.
208Les alias d'interfaces IP (e-g "eth1:0") ne peuvent être utilisés ni avec
209.B --interface
210ni
211.B \--except-interface.
212Utiliser l'option
213.B --listen-address
Simon Kelley834f36f2013-04-17 13:52:49 +0100214à la place. Un simple joker, consistant d'un '*' final, peut-être utilisé dans
215les options
216.B \--interface
217et
218.B \--except-interface
Simon Kelley824af852008-02-12 20:43:05 +0000219.TP
220.B \-I, --except-interface=<interface name>
221Ne pas écouter sur l'interface spécifiée. Notez que l'ordre dans lesquelles les
222options
223.B \--listen-address
224,
225.B --interface
226et
227.B --except-interface
228sont fournies n'importe pas, et que l'option
229.B --except-interface
230l'emporte toujours sur les autres.
Simon Kelley834f36f2013-04-17 13:52:49 +0100231.TP
232.B --auth-server=<domaine>,<interface>|<addresse IP>
233Active le mode DNS faisant autorité pour les requêtes arrivant sur cette
234interface ou sur cette adresse. Noter que l'interface ou l'adresse n'ont
235pas besoin d'être mentionées ni dans
236.B --interface
237ni dans
238.B --listen-address
239En effet,
240.B --auth-server
241va passer outre ceux-ci et fournir un service DNS différent sur l'interface
242spécifiée. La valeur de <domaine> est l'enregistrement de type "colle"
243("glue record"). Il doit correspondre dans le service DNS global avec un
244enregistrement de type A et/ou AAAA pointant sur l'adresse sur laquelle dnsmasq
245écoute pour le mode DNS faisant autorité.
Simon Kelley824af852008-02-12 20:43:05 +0000246.TP
247.B \-2, --no-dhcp-interface=<nom d'interface>
248Ne pas fournir de service DHCP sur l'interface spécifiée, mais fournir tout de
249même le service DNS.
250.TP
251.B \-a, --listen-address=<adresse IP>
252Ecouter sur la ou les adresse(s) IP spécifiée(s). Les options
253.B \--interface
254et
255.B \--listen-address
256peuvent-être spécifiées simultanément, auquel cas un jeu d'interfaces et
257d'adresses seront utilisées. Notez que si
258aucune option
259.B \--interface
260n'est donnée alors qu'une option
261.B \--listen-address
262l'est, Dnsmasq n'écoutera pas automatiquement sur l'interface locale
263("loopback"). Pour activer l'écoute sur l'interface locale, il est alors
264nécessaire de fournir explicitement son adresse IP, 127.0.0.1 via l'option
265.B \--listen-address.
266.TP
267.B \-z, --bind-interfaces
268Sur les systèmes qui le supporte, Dnsmasq s'associe avec l'interface joker
269("wildcard"), même lorsqu'il ne doit écouter que sur certaines interfaces. Par
270la suite, il rejette les requêtes auxquelles il ne doit pas répondre. Cette
271situation présente l'avantage de fonctionner même lorsque les interfaces vont
272et viennent ou changent d'adresses. L'option
273.B --bind-interfaces
274force Dnsmasq à ne réellement s'associer qu'avec les interfaces sur lesquelles
275il doit écouter. L'un des seuls cas où cette option est utile est celui où un
276autre serveur de nom (ou une autre instance de Dnsmasq) tourne sur la même
277machine. Utiliser cette option permet également d'avoir plusieurs instances de
278Dnsmasq fournissant un service DHCP sur la même machine.
279.TP
Simon Kelleyc4c04882012-08-06 20:09:15 +0100280.B --bind-dynamic
281Autorise un mode réseau intermédiaire entre
282.B --bind-interfaces
283et le mode par défaut. Dnsmasq s'associe à une seule interface, ce qui permet
284plusieurs instances de dnsmasq, mais si une interface ou adresse apparaissent,
285il se mettra automatiquement à écouter sur celles-ci (les règles de contrôle
286d'accès s'appliquent).
287De fait, les interfaces créées dynamiquement fonctionnent de la même façon que
288dans le comportement par défaut. Ce fonctionnement nécessite des APIs réseau
289non standard et n'est disponible que sous Linux. Sur les autres plateformes,
290le fonctionnement est celui du mode --bind-interfaces.
291.TP
Simon Kelley824af852008-02-12 20:43:05 +0000292.B \-y, --localise-queries
293Retourne des réponses aux requêtes DNS dépendantes de l'interface sur laquelle
294la requête a été reçue, à partir du fichier /etc/hosts. Si un nom dans
295/etc/hosts a plus d'une adresse associée avec lui, et qu'une des adresses au
296moins est dans le même sous-réseau que l'interface sur laquelle la requête a été
297reçue, alors ne retourne que la(les) adresse(s) du sous-réseau considéré. Cela
298permet d'avoir dans /etc/hosts un serveur avec de multiples adresses, une pour
299chacune de ses interfaces, et de fournir aux hôtes l'adresse correcte (basée sur
300le réseau auquel ils sont attachés). Cette possibilité est actuellement limitée
301à IPv4.
302.TP
303.B \-b, --bogus-priv
304Fausse résolution inverse pour les réseaux privés. Toutes les requêtes DNS
305inverses pour des adresses IP privées (ie 192.168.x.x, etc...) qui ne sont pas
306trouvées dans /etc/hosts ou dans le fichier de baux DHCP se voient retournées
307une réponse "pas de tel domaine" ("no such domain") au lieu d'être transmises
308aux serveurs de nom amont ("upstream server").
309.TP
Simon Kelley73a08a22009-02-05 20:28:08 +0000310.B \-V, --alias=[<ancienne IP>]|[<IP de début>-<IP de fin>],<nouvelle IP>[,<masque>]
Simon Kelley824af852008-02-12 20:43:05 +0000311Modifie les adresses IPv4 retournées par les serveurs de nom amont;
312<ancienne IP> est remplacée par <nouvelle IP>. Si le <masque> optionnel est
313fourni, alors toute adresse correspondant à l'adresse <ancienne IP>/<masque>
314sera réécrite. Ainsi par exemple
315.B --alias=1.2.3.0,6.7.8.0,255.255.255.0
316modifiera 1.2.3.56 en 6.7.8.56 et 1.2.3.67 en 6.7.8.67.
317Cette fonctionnalité correspond à ce que les routeurs Cisco PIX appellent
Simon Kelley73a08a22009-02-05 20:28:08 +0000318"bidouillage DNS" ("DNS doctoring"). Si l'ancienne IP est donnée sous la forme
319d'une gamme d'adresses, alors seules les adresses dans cette gamme seront
320réecrites, et non le sous-réseau dans son ensemble. Ainsi,
321.B --alias=192.168.0.10-192.168.0.40,10.0.0.0,255.255.255.0
322fait correspondre 192.168.0.10->192.168.0.40 à 10.0.0.10->10.0.0.40
Simon Kelley824af852008-02-12 20:43:05 +0000323.TP
324.B \-B, --bogus-nxdomain=<adresse IP>
325Transforme les réponses contenant l'adresse IP fournie en réponses "pas de tel
326domaine" ("no such domain"). Ceci a pour but de neutraliser la modification
327sournoise mise en place par Verisign en septembre 2003, lorsqu'ils ont commencé
328à retourner l'adresse d'un serveur web publicitaire en réponse aux requêtes pour
329les noms de domaines non enregistrés, au lieu de la réponse correcte "NXDOMAIN".
330Cette option demande à Dnsmasq de retourner la réponse correcte lorsqu'il
331constate ce comportement. L'adresse retournée par Verisign en septembre 2003
332est 64.94.110.11.
333.TP
334.B \-f, --filterwin2k
335Les dernières versions de windows font des requêtes DNS périodiques auxquelles
336non seulement les serveurs DNS publics ne peuvent donner de réponse, mais qui,
337de surcroît, peuvent poser des problèmes en déclenchant des connexions
338intempestives pour des liens réseaux avec des connexions "à la demande". Fournir
339cette option active le filtrage des requêtes de ce type. Les requêtes bloquées
340sont les requêtes pour les entrées de type SOA ou SRV, ainsi que les requêtes de
341type ANY avec des noms possédant des caractères sous-lignés (requêtes pour des
342serveurs LDAP).
343.TP
344.B \-r, --resolv-file=<fichier>
345Lis les adresses des serveurs de nom amont dans le fichier de nom <fichier>,
346au lieu du fichier /etc/resolv.conf. Pour le format de ce fichier, voir dans le
347manuel pour
348.BR resolv.conf (5)
349les entrées correspondant aux serveurs de noms (nameserver). Dnsmasq peut lire
350plusieurs fichiers de type resolv.conf, le premier fichier spécifié remplace le
351fichier par défaut, le contenu des suivants est rajouté dans la liste des
352fichiers à consulter. Seul le fichier ayant la dernière date de modification
353sera chargé en mémoire.
354.TP
355.B \-R, --no-resolv
356Ne pas lire le contenu du fichier /etc/resolv.conf. N'obtenir l'adresse des
357serveurs de nom amont que depuis la ligne de commande ou le fichier de
358configuration de Dnsmasq.
359.TP
Simon Kelley834f36f2013-04-17 13:52:49 +0100360.B \-1, --enable-dbus[=<nom de service>]
Simon Kelley824af852008-02-12 20:43:05 +0000361Autoriser la mise à jour de la configuration de Dnsmasq par le biais d'appel de
362méthodes DBus. Il est possible par ce biais de mettre à jour l'adresse de
363serveurs DNS amont (et les domaines correspondants) et de vider le cache. Cette
Simon Kelley834f36f2013-04-17 13:52:49 +0100364option nécessite que Dnsmasq soit compilé avec le support DBus. Si un nom de
365service est fourni, dnsmasq fourni un service à ce nom, plutôt qu'avec la
366valeur par défaut :
367.B uk.org.thekelleys.dnsmasq
Simon Kelley824af852008-02-12 20:43:05 +0000368.TP
369.B \-o, --strict-order
370Par défaut, Dnsmasq envoie les requêtes à n'importe lequel des serveurs amonts
371dont il a connaissance tout en essayant de favoriser les serveurs qu'il sait
372fonctionner. Cette option force Dnsmasq à essayer d'interroger, pour chaque
373requête, les serveurs DNS dans leur ordre d'apparition dans le fichier
374/etc/resolv.conf.
375.TP
Simon Kelley1a6bca82008-07-11 11:11:42 +0100376.B --all-servers
377Par défaut, lorsque dnsmasq a plus d'un serveur amont disponible, il n'envoie
378les requêtes qu'à un seul serveur. Spécifier cette option force dnsmasq à
379effectuer ses requêtes à tous les serveurs disponibles. Le résultat renvoyé
380au client sera celui fournit par le premier serveur ayant répondu.
381.TP
382.B --stop-dns-rebind
383Rejete (et enregistre dans le journal d'activité) les adresses dans la gamme
384d'adresses IP privée (au sens RFC1918) qui pourraient être renvoyées par les
385serveurs amonts suite à une résolution de nom. Cela bloque les attaques cherchant
386à détourner de leur usage les logiciels de navigation web ('browser') en s'en
387servant pour découvrir les machines situées sur le réseau local.
388.TP
Simon Kelley8ef5ada2010-06-03 19:42:45 +0100389.B --rebind-localhost-ok
390Exclue 127.0.0/8 des vérifications de réassociation DNS. Cette gamme d'adresses
391est retournée par les serveurs Realtime Blackhole (RBL, utilisés dans la
392lutte contre le spam), la bloquer peut entraîner des disfonctionnements de ces
393services.
394.TP
395.B --rebind-domain-ok=[<domaine>]|[[/<domaine>/[<domaine>/]
396Ne pas détecter ni bloquer les actions de type dns-rebind pour ces domaines.
397Cette option peut prendre comme valeur soit un nom de domaine soit plusieurs
398noms de domains entourés par des '/', selon une syntaxe similaire à l'option
399--server, c-à-d :
400.B --rebind-domain-ok=/domaine1/domaine2/domaine3/
401.TP
Simon Kelley824af852008-02-12 20:43:05 +0000402.B \-n, --no-poll
403Ne pas vérifier régulièrement si le fichier /etc/resolv.conf a été modifié.
404.TP
405.B --clear-on-reload
406Lorsque le fichier /etc/resolv.conf est relu, vider le cache DNS.
407Cela est utile si les nouveaux serveurs sont susceptibles d'avoir des données
408différentes de celles stockées dans le cache.
409.TP
410.B \-D, --domain-needed
Simon Kelley7de060b2011-08-26 17:24:52 +0100411Indique à Dnsmasq de ne jamais transmettre en amont de requêtes A ou AAAA pour
412des noms simples, c'est à dire ne comprenant ni points ni nom de domaine. Si un
413nom n'est pas dans /etc/hosts ou dans la liste des baux DHCP, alors une réponse
414de type "non trouvé" est renvoyée.
Simon Kelley824af852008-02-12 20:43:05 +0000415.TP
Simon Kelley1a6bca82008-07-11 11:11:42 +0100416.B \-S, --local, --server=[/[<domaine>]/[domaine/]][<Adresse IP>[#<port>][@<Adresse IP source>|<interface>[#<port>]]]
Simon Kelley824af852008-02-12 20:43:05 +0000417Spécifie directement l'adresse IP d'un serveur de nom amont. Cette option ne
418supprime pas la lecture du fichier /etc/resolv.conf : utiliser pour cela
419l'option
420.B -R .
421Si un ou plusieurs nom(s) de domaine(s) optionnel(s) sont fournis, ce
422serveur sera uniquement utilisé uniquement pour ce(s) domaine(s), et toute
423requête concernant ce(s) domaine(s) sera adressée uniquement à ce serveur.
424Cette option est destinée aux serveurs de nom privés : si vous avez un serveur
425de nom sur votre réseau ayant pour adresse IP 192.168.1.1 et effectuant la
426résolution des noms de la forme xxx.internal.thekelleys.org.uk, alors
427.B -S /internal.thekelleys.org.uk/192.168.1.1
428enverra toutes les requêtes pour les machines internes vers ce serveur de nom,
429alors que toutes les autres requêtes seront adressées aux serveurs indiqués dans
430le fichier /etc/resolv.conf. Une spécification de nom de domaine vide,
431.B //
432possède le sens particulier de "pour les noms non qualifiés uniquement",
433c'est-à-dire les noms ne possédant pas de points. Un port non standard peut être
434rajouté à la suite des adresses IP en utilisant le caractère #. Plus d'une
435option
436.B -S
437est autorisée, en répétant les domaines et adresses IP comme requis.
438
Simon Kelley8ef5ada2010-06-03 19:42:45 +0100439Le domaine le plus spécifique l'emporte sur le domaine le moins spécifique,
440ainsi :
441.B --server=/google.com/1.2.3.4
442.B --server=/www.google.com/2.3.4.5
443enverra les requêtes pour *.google.com à 1.2.3.4, à l'exception des requêtes
444*www.google.com, qui seront envoyées à 2.3.4.5.
445
446L'adresse spéciale '#' signifie "utiliser les serveurs standards", ainsi
447.B --server=/google.com/1.2.3.4
448.B --server=/www.google.com/#
449enverra les requêtes pour *.google.com à 1.2.3.4, à l'exception des requêtes
450pour *www.google.com qui seront envoyées comme d'habitude (c-à-d aux serveurs
451définis par défaut).
452
Simon Kelley824af852008-02-12 20:43:05 +0000453Il est également permis de donner une option
454.B -S
455avec un nom de domaine mais sans
456adresse IP; Cela informe Dnsmasq que le domaine est local et qu'il doit répondre
457aux requêtes le concernant depuis les entrées contenues dans le fichier
458/etc/hosts ou les baux DHCP, et ne doit en aucun cas transmettre les requêtes
459aux serveurs amonts.
460.B local
461est synonyme de
462.B server
463("serveur") afin de rendre plus claire l'utilisation de cette option pour cet
464usage particulier.
465
Simon Kelley7de060b2011-08-26 17:24:52 +0100466Les adresses IPv6 peuvent inclure un identifiant de zone sous la forme
467%interface tel que par exemple
468fe80::202:a412:4512:7bbf%eth0.
469
Simon Kelley1a6bca82008-07-11 11:11:42 +0100470La chaîne de caractères optionnelle suivant le caractère @ permet de définir
471la source que Dnsmasq doit utiliser pour les réponses à ce
472serveur de nom. Il doit s'agir d'une des adresses IP appartenant à la machine sur
Simon Kelley824af852008-02-12 20:43:05 +0000473laquelle tourne Dnsmasq ou sinon la ligne sera ignorée et une erreur sera
Simon Kelley1a6bca82008-07-11 11:11:42 +0100474consignée dans le journal des événements, ou alors d'un nom d'interface. Si un nom
475d'interface est donné, alors les requêtes vers le serveur de nom seront envoyées
476depuis cette interface; si une adresse ip est donnée, alors l'adresse source de
477la requête sera l'adresse en question. L'option query-port est ignorée pour tous
478les serveurs ayant une adresse source spécifiée, mais il est possible de la donner
479directement dans la spécification de l'adresse source. Forcer les requêtes à être
480émises depuis une interface spécifique n'est pas possible sur toutes les plateformes
481supportées par dnsmasq.
Simon Kelley824af852008-02-12 20:43:05 +0000482.TP
483.B \-A, --address=/<domaine>/[domaine/]<adresse IP>
484Spécifie une adresse IP à retourner pour toute requête pour les domaines fournis
485en option. Les requêtes pour ce(s) domaine(s) ne sont jamais transmises aux
486serveurs amonts et reçoivent comme réponse l'adresse IP spécifiée qui peut être
487une adresse IPv4 ou IPv6. Pour donner à la fois une adresse IPv4 et une adresse
488IPv6 pour un domaine, utiliser plusieurs options
489.B -A.
490Il faut noter que le
491contenu du fichier /etc/hosts et de celui des baux DHCP supplante ceci pour des
492noms individuels. Une utilisation courante de cette option est de rediriger la
493totalité du domaine doubleclick.net vers un serveur web local afin d'éviter les
494bannières publicitaires. La spécification de domaine fonctionne de la même façon
495que
496.B --server,
497avec la caractéristique supplémentaire que
498.B /#/
499coïncide avec tout domaine. Ainsi,
500.B --address=/#/1.2.3.4
501retournera 1.2.3.4 pour toute requête
502n'ayant de réponse ni dans /etc/hosts, ni dans les baux DHCP, et n'étant pas
503transmise à un serveur spécifique par le biais d'une directive
504.B --server.
505.TP
Simon Kelley834f36f2013-04-17 13:52:49 +0100506.B --ipset=/<domaine>/[domaine/]<ipset>[,<ipset>]
507Obtient les adresses IP des domaines spécifiés et les place dans les groupes
508d'IP netfilter (ipset) indiqués. Domaines et sous-domaines sont résolus de la
509même façon que pour --address. Ces groupes d'IP doivent déjà exister. Voir
510ipset(8) pour plus de détails.
511.TP
Simon Kelley824af852008-02-12 20:43:05 +0000512.B \-m, --mx-host=<nom de l'hôte>[[,<nom du MX>],<préference>]
513Spécifie un enregistrement de type MX pour <nom de l'hôte> retournant le nom
514donné dans <nom du MX> (s'il est présent), ou sinon le nom spécifié dans
515l'option
516.B --mx-target
517si elle est présente. Sinon retourne le nom de la machine
518sur laquelle Dnsmasq tourne. La valeur par défaut (spécifiée dans l'option
519.B --mx-target
520) est utile dans un réseau local pour rediriger les courriers
521électroniques vers un serveur central. La valeur de préférence est optionnelle
522et vaut par défaut 1 si elle n'est pas spécifiée. Plus d'une entrée MX peut être
523fournie pour un hôte donné.
524.TP
525.B \-t, --mx-target=<nom d'hôte>
526Spécifie la réponse par défaut fournie par Dnsmasq pour les requêtes sur des
527enregistrements de type MX. Voir
528.B --mx-host.
529Si
530.B --mx-target
531est donné mais pas de
532.B --mx-host,
533alors Dnsmasq retourne comme réponse un enregistrement MX
534contenant le nom d'hôte spécifié dans l'option
535.B --mx-target
536pour toute requête
537concernant le MX de la machine sur laquelle tourne Dnsmasq.
538.TP
539.B \-e, --selfmx
540Définit, pour toutes les machines locales, un MX correspondant à l'hôte
541considéré. Les machines locales sont celles définies dans le fichier /etc/hosts
542ou dans un bail DHCP.
543.TP
544.B \-L, --localmx
545Définit, pour toutes les machines locales, un enregistrement MX pointant sur
546l'hôte spécifié par mx-target (ou la machine sur laquelle Dnsmasq tourne). Les
547machines locales sont celles définies dans le fichier /etc/hosts ou dans un bail
548DHCP.
549.TP
550.B \-W --srv-host=<_service>.<_protocole>.[<domaine>],[<cible>[,<port>[,<priorité>[,<poids>]]]]
551Spécifie un enregistrement DNS de type SRV. Voir la RFC2782 pour plus de
552détails. Si le champs <domaine> n'est pas fourni, prends par défaut la valeur
553fournie dans l'option
554.B --domain.
555La valeur par défaut pour le domaine est vide et le port par défaut est 1, alors
556que les poids et priorités par défaut sont 0. Attention lorsque vous transposez
557des valeurs issues d'une configuration BIND : les ports, poids et priorités sont
558dans un ordre différents. Pour un service/domaine donné, plus d'un
559enregistrement SRV est autorisé et tous les enregistrements qui coïncident sont
560retournés dans la réponse.
561.TP
Simon Kelleye46164e2012-04-16 16:39:38 +0100562.B --host-record=<nom>[,<nom>....][<adresse IPv4>],[<adresse IPv6>]
563Ajoute des enregistrements A, AAAA et PTR dans le DNS. Ceci permet d'ajouter
564un ou plusieurs noms dans le DNS et de les associer à des enregistrements IPv4
565(A) ou IPv6 (AAAA). Un nom peut apparaître dans plus d'une entrée
566.B host-record
567et de fait être associé à plus d'une adresse. Seule la première entrée créée
568l'enregistrement PTR associée au nom. Ceci correspond à la même règle que celle
569utilisée lors de la lecture du fichier hosts.
570Les options
571.B host-record
572sont considérées lues avant le fichier hosts, ainsi un nom apparaissant dans
573une option host-record et dans le fichier hosts n'aura pas d'enregistrement
574PTR associé à l'entrée dans le fichier hosts. A l'inverse du fichier hosts, les
575noms ne sont pas étendus, même lorsque l'option
576.B expand-hosts
577est activée. Les noms longs et les noms courts peuvent apparaitre dans la même
578entrée
579.B host-record,
580c-à-d
581.B --host-record=laptop,laptop.thekelleys.org,192.168.0.1,1234::100
582.TP
Simon Kelley824af852008-02-12 20:43:05 +0000583.B \-Y, --txt-record=<nom>[[,<texte>],<texte>]
584Définit un enregistrement DNS de type TXT. La valeur de l'enregistrement TXT est
585un ensemble de chaînes de caractères, donc un nombre variable de chaînes de
Simon Kelley28866e92011-02-14 20:19:14 +0000586caractères peuvent être spécifiées, séparées par des virgules. Utilisez des
587guillemets pour mettre une virgule dans une chaîne de caractères. Notez que la
588longueur maximale pour une chaîne est de 255 caractères, les chaînes plus
589longues étant découpées en morceaux de 255 caractères de longs.
Simon Kelley824af852008-02-12 20:43:05 +0000590.TP
591.B --ptr-record=<nom>[,<cible>]
592Définit un enregistrement DNS de type PTR.
593.TP
Simon Kelley1a6bca82008-07-11 11:11:42 +0100594.B --naptr-record=<nom>,<ordre>,<préférence>,<drapeaux>,<service>,<expr. régulière>[,<remplacement>]
595Retourne un enregistrement de type NAPTR, tel que spécifié dans le RFC3403.
596.TP
Simon Kelley73a08a22009-02-05 20:28:08 +0000597.B --cname=<cname>,<cible>
598Retourne un enregistrement de type CNAME qui indique que <cname> est en
599réalité <cible>. Il existe des contraintes significatives sur la valeur
600de cible; il doit s'agir d'un nom DNS qui est connu de dnsmasq via /etc/hosts
Simon Kelleyc4c04882012-08-06 20:09:15 +0100601(ou un fichier hôtes additionnel), ou via DHCP, ou par un autre
602.B --cname.
603Si une cible ne satisfait pas ces critères, le CNAME est ignoré. Le CNAME
604doit être unique, mais il est autorisé d'avoir plus d'un CNAME pointant
605vers la même cible.
606.TP
607.B --dns-rr=<nom>,<numéro-RR>,[<données hexadécimales>]
608Retourne un enregistrement DNS arbitraire. Le numéro correspond au type
609d'enregistrement (qui est toujours de la classe C_IN). La valeur de
610l'enregistrement est donnée dans les données hexadécimales, qui peuvent
611être de la forme 01:23:45, 01 23 45,+012345 ou n'importe quelle combinaison.
Simon Kelley73a08a22009-02-05 20:28:08 +0000612.TP
Simon Kelley824af852008-02-12 20:43:05 +0000613.B --interface-name=<nom>,<interface>
614Définit un entregistrement DNS associant le nom avec l'adresse primaire sur
615l'interface donnée en argument. Cette option spécifie un enregistrement de type
616A pour le nom donné en argument de la même façon que s'il était défini par une
617ligne de /etc/hosts, sauf que l'adresse n'est pas constante mais dépendante de
618l'interface définie. Si l'interface est inactive, non existante ou non
619configurée, une réponse vide est fournie. Un enregistrement inverse (PTR) est
620également créé par cette option, associant l'adresse de l'interface avec le nom.
621Plus d'un nom peut être associé à une interface donnée en répétant cette option
622plusieurs fois; dans ce cas, l'enregistrement inverse pointe vers le nom fourni
623dans la première instance de cette option.
624.TP
Simon Kelley28866e92011-02-14 20:19:14 +0000625.B --add-mac
626Ajoute l'adresse MAC du requêteur aux requêtes DNS transmises aux serveurs
627amonts. Cela peut être utilisé dans un but de filtrage DNS par les serveurs
628amonts. L'adresse MAC peut uniquement être ajoutée si le requêteur est sur le
629même sous-réseau que le serveur dnsmasq. Veuillez noter que le mécanisme
630utilisé pour effectuer cela (une option EDNS0) n'est pas encore standardisée,
631aussi cette fonctionalité doit être considérée comme expérimentale. Notez
632également qu'exposer les adresses MAC de la sorte peut avoir des implications
633en termes de sécurité et de vie privée.
634.TP
Simon Kelley824af852008-02-12 20:43:05 +0000635.B \-c, --cache-size=<taille>
636Définit la taille du cache de Dnsmasq. La valeur par défaut est de 150 noms.
637Définir une valeur de zéro désactive le cache.
638.TP
639.B \-N, --no-negcache
640Désactive le "cache négatif". Le "cache négatif" permet à Dnsmasq de se souvenir
641des réponses de type "no such domain" fournies par les serveurs DNS en amont et
642de fournir les réponses sans avoir à re-transmettre les requêtes aux serveurs
643amont.
644.TP
645.B \-0, --dns-forward-max=<nombre de requêtes>
646Définit le nombre maximum de requêtes DNS simultanées. La valeur par défaut est
647150, ce qui devrait être suffisant dans la majorité des configurations. La seule
648situation identifiée dans laquelle cette valeur nécessite d'être augmentée est
649lorsqu'un serveur web a la résolution de nom activée pour l'enregistrement de
650son journal des requêtes, ce qui peut générer un nombre important de requêtes
651simultanées.
652.TP
Simon Kelley28866e92011-02-14 20:19:14 +0000653.B --proxy-dnssec
654Un resolveur sur une machine cliente peut effectuer la validation DNSSEC de
655deux façons : il peut effectuer lui-même les opérations de chiffrements sur
656la réponse reçue, ou il peut laisser le serveur récursif amont faire la
657validation et positionner un drapeau dans la réponse au cas où celle-ci est
658correcte. Dnsmasq n'est pas un validateur DNSSEC, aussi il ne peut effectuer
659la validation comme un serveur de nom récursif, cependant il peut retransmettre
660les résultats de validation de ses serveurs amonts. Cette option permet
661l'activation de cette fonctionalité. Vous ne devriez utiliser cela que si vous
662faites confiance aux serveurs amonts
663.I ainsi que le réseau entre vous et eux.
664Si vous utilisez le premier mode DNSSEC, la validation par le resolveur des
665clients, cette option n'est pas requise. Dnsmasq retourne toujours toutes les
666données nécessaires par un client pour effectuer la validation lui-même.
667.TP
Simon Kelley834f36f2013-04-17 13:52:49 +0100668.B --auth-zone=<domaine>[,<sous-réseau>[,<sous-réseau>.....]]
669Définie une zone DNS pour laquelle dnsmasq agit en temps que serveur faisant
670autorité. Les enregistrements DNS définis localement et correspondant à ce
671domaine seront fournis, à ceci près que les enregistrements A et AAAA doivent
672se situer dans l'un des sous-réseaux précisés si ceux-ci sont définis, ou dans
673un réseau correspondant à une plage DHCP. Le ou les sous-réseaux sont également
674utilisé pour définir les domaines in-addr.arpa et ipv6.arpa servant à
675l'interrogation DNS inverse. Dans le cas d'IPv4, la longueur du masque de
676réseau doit être de 8, 16 ou 24.
677.TP
678.B --auth-soa=<numéro de série>[,<mainteneur de zone (hostmaster)>[,<rafraichissement>[,<nombre de réessais>[,<expiration>]]]]
679Spécifie les champs de l'enregistrement de type SOA (Start Of Authority)
680associé à une zone pour laquelle le serveur fait autorité. A noter que cela est
681optionnel, les valeurs par défaut devant convenir à la majorité des cas.
682.TP
683.B --auth-sec-servers=<domaine>[,<domaine>[,<domaine>...]]
684Spécifie un ou plusieurs serveur de nom secondaires pour une zone pour
685laquelle dnsmasq fait autorité. Ces serveurs doivent-être configurés pour
686récupérer auprès de dnsmasq les informations liées à la zone au travers d'un
687transfert de zone, et répondre aux requêtes pour toutes les zones pour
688lesquelles dnsmasq fait autorité.
689.TP
690.B --auth-peer=<adresse IP>[,<adresse IP>[,<adresse IP>...]]
691Spécifie la ou les adresses de serveurs secondaires autorisés à initier des
692requêtes de transfert de zone (AXFR) pour les zones pour lesquelles
693dnsmasq fait autorité. Si cette option n'est pas fournie, les requêtes AXFR
694seront acceptées pour tous les serveurs secondaires.
695.TP
Simon Kelley7de060b2011-08-26 17:24:52 +0100696.B --conntrack
697Lis le marquage de suivi de connexion Linux associé aux requêtes DNS entrantes
698et positionne la même marque au trafic amont utilisé pour répondre à ces
699requétes. Cela permet au trafic généré par Dnsmasq d'étre associé aux requêtes
700l'ayant déclenché, ce qui est pratique pour la gestion de la bande passante
701(accounting) et le filtrage (firewall). Dnsmasq doit pour cela être compilé
702avec le support conntrack, le noyau doit également inclure conntrack et être
703configuré pour cela. Cette option ne peut pas être combinée avec
Simon Kelleye46164e2012-04-16 16:39:38 +0100704--query-port.
Simon Kelley7de060b2011-08-26 17:24:52 +0100705.TP
Simon Kelleyc4c04882012-08-06 20:09:15 +0100706.B \-F, --dhcp-range=[tag:<label>[,tag:<label>],][set:<label>],]<adresse de début>[,<adresse de fin>][,<mode>][,<masque de réseau>[,<broadcast>]][,<durée de bail>]
Simon Kelley71ee7ee2012-03-03 18:06:49 +0000707.TP
Simon Kelley834f36f2013-04-17 13:52:49 +0100708.B \-F, --dhcp-range=[tag:<label>[,tag:<label>],][set:<label>],]<addresse IPv6 de début>[,<adresse IPv6 de fin>|constructor:<interface>][,<mode>][,<longueur de préfixe>][,<durée de bail>]
709
Simon Kelley824af852008-02-12 20:43:05 +0000710Active le serveur DHCP. Les adresses seront données dans la plage comprise entre
711<adresse de début> et <adresse de fin> et à partir des adresses définies
712statiquement dans l'option
713.B dhcp-host.
714Si une durée de bail est donnée, alors les baux seront donnés pour cette
715durée. La durée de bail est donnée en secondes, en minutes (exemple : 45m),
716en heures (exemple : 1h) ou être la chaine de caractère "infinite" pour une
Simon Kelley7622fc02009-06-04 20:32:05 +0100717durée indéterminée. Si aucune valeur n'est donnée, une durée de bail par défaut
718de une heure est appliquée. La valeur minimum pour un bail DHCP est de 2
719minutes.
Simon Kelleye46164e2012-04-16 16:39:38 +0100720
721Pour les plages IPv6, la durée de bail peut-être égale au mot-clef "deprecated"
722(obsolète); Cela positionne la durée de vie préférée envoyée dans les baux DHCP
723ou les annonces routeurs à zéro, ce qui incite les clients à utiliser d'autres
724adresses autant que possible, pour toute nouvelle connexion, en préalable à
725la renumérotation.
726
Simon Kelley1a6bca82008-07-11 11:11:42 +0100727Cette option peut être répétée, avec différentes adresses,
Simon Kelley824af852008-02-12 20:43:05 +0000728pour activer le service DHCP sur plus d'un réseau. Pour des réseaux directement
729connectés (c'est-à-dire des réseaux dans lesquels la machine sur laquelle tourne
Simon Kelley7de060b2011-08-26 17:24:52 +0100730Dnsmasq possède une interface), le masque de réseau est optionnel : Dnsmasq la
731déterminera à partir de la configuration des interfaces.
732
733Pour les réseaux pour lesquels le service DHCP se fait via un relais DHCP
734("relay agent"), Dnsmasq est incapable de déterminer le masque par lui-même,
735aussi il doit être spécifié, faute de quoi Dnsmasq essaiera de le deviner en
736fonction de la classe (A, B ou C) de l'adresse réseau. L'adresse de broadcast
737est toujours optionnelle.
Simon Kelley824af852008-02-12 20:43:05 +0000738
Simon Kelley7622fc02009-06-04 20:32:05 +0100739Il est toujours possible d'avoir plus d'une plage DHCP pour un même
740sous-réseau.
Simon Kelley71ee7ee2012-03-03 18:06:49 +0000741
742Pour IPv6, les paramètres sont légèrement différents : au lieu d'un masque de
743réseau et d'une adresse de broadcast, il existe une longueur de préfixe
744optionnelle. Si elle est omise, la valeur par défaut est 64. À la différence
745d'IPv4, la longueur de préfixe n'est pas automatiquement déduite de la
746configuration de l'interface. La taille minimale pour la longueur de préfixe
747est 64.
748
Simon Kelley834f36f2013-04-17 13:52:49 +0100749Pour IPv6 (et IPv6 uniquement), il est possible de définir les plages d'une
750autre façon. Dans ce cas, l'adresse de départ et l'adresse de fin optionnelle
751contiennent uniquement la partie réseau (par exemple ::1) et sont suivies par
752.B constructor:<interface>.
753Cela forme un modèle décrivant comment construire la plage, à partir des
754adresses assignées à l'interface. Par exemple
755
756.B --dhcp-range=::1,::400,constructor:eth0
757
758provoque la recherche d'adresses de la forme <réseau>::1 sur eth0 et crée une
759plage allant de <réseau>::1 à <réseau>:400. Si une interface est assignée à
760plus d'un réseau, les plages correspondantes seront automatiquement créées,
761rendues obsolètes puis supprimées lorsque l'adress est rendue obsolète puis
762supprimée. Le nom de l'interface peut être spécifié avec un caractère joker '*'
763final.
764
Simon Kelley8ef5ada2010-06-03 19:42:45 +0100765L'identifiant de label optionnel
766.B set:<label>
767fournie une étiquette alphanumérique qui identifie ce réseau, afin de permettre
768la fourniture d'options DHCP spécifiques à chaque réseau.
769Lorsque préfixé par 'tag:', la signification change, et au lieu de définir un
Simon Kelley824af852008-02-12 20:43:05 +0000770label, il définit le label pour laquelle la règle s'applique. Un seul label peut-
771être défini mais plusieurs labels peuvent coïncider.
772
Simon Kelleye46164e2012-04-16 16:39:38 +0100773Le mot clef optionnel <mode> peut être égal à
Simon Kelley824af852008-02-12 20:43:05 +0000774.B static
Simon Kelleye46164e2012-04-16 16:39:38 +0100775("statique") ce qui indique à Dnsmasq d'activer le service DHCP pour le réseau
Simon Kelley7622fc02009-06-04 20:32:05 +0100776spécifié, mais de ne pas activer l'allocation dynamique d'adresses IP : Seuls
777les hôtes possédant des adresses IP statiques fournies via
Simon Kelley824af852008-02-12 20:43:05 +0000778.B dhcp-host
Simon Kelley834f36f2013-04-17 13:52:49 +0100779ou présentes dans le fichier /etc/ethers seront alors servis par le DHCP. Il est
780possible d'activer un mode "fourre-tout" en définissant un réseau statique
781comportant uniquement des zéros, c'est à dire :
782.B --dhcp=range=::,static
783Cela permet de retourner des réponses à tous les paquets de type
784Information-request (requête d'information) en mode DHCPv6 sans état sur le
785sous-réseau configuré.
Simon Kelley7622fc02009-06-04 20:32:05 +0100786
Simon Kelleye46164e2012-04-16 16:39:38 +0100787Pour IPv4, le <mode> peut est égal à
Simon Kelley7622fc02009-06-04 20:32:05 +0100788.B proxy
789, auquel cas Dnsmasq fournira un service de DHCP proxy pour le sous-réseau
790spécifié. (voir
791.B pxe-prompt
792et
793.B pxe-service
Simon Kelleye46164e2012-04-16 16:39:38 +0100794pour plus de détails).
Simon Kelley71ee7ee2012-03-03 18:06:49 +0000795
Simon Kelleye46164e2012-04-16 16:39:38 +0100796Pour IPv6, le mode peut-être une combinaison des valeurs
797.B ra-only, slaac, ra-names, ra-stateless.
798
Simon Kelley71ee7ee2012-03-03 18:06:49 +0000799.B ra-only
Simon Kelleye46164e2012-04-16 16:39:38 +0100800indique à dnsmasq de n'effectuer que des annonces de routeur (Router
801Advertisement, RA) sur ce sous-réseau, et de ne pas faire de DHCP.
802
803.B slaac
804indique à dnsmasq d'effectuer des annonces de routeur sur ce sous-réseau
805et de positionner dans celles-ci le bit A, afin que les clients utilisent
806des adresses SLAAC. Lorsqu'utilisé conjointement avec une plage DHCP ou des
807affectations statiques d'adresses DHCP, les clients disposeront à la fois
808d'adresses DHCP assignées et d'adresses SLAAC.
809
810.B ra-stateless
811indique à dnsmasq d'effectuer des annonces de routeur avec les bits 0 et A
812positionnés, et de fournir un service DHCP sans état ("stateless"). Les clients
813utiliseront des adresses SLAAC, et utiliseront DHCP pour toutes les autres
814informations de configuration.
815
816.B ra-names
817active un mode qui fourni des noms DNS aux hôtes fonctionnant en double pile
818("dual stack") et configurés pour faire du SLAAC en IPv6. Dnsmasq utilise le
819bail IPv4 de l'hôte afin de dériver le nom, le segment de réseau et l'adresse
820MAC et assume que l'hôte disposera d'une adresse IPv6 calculée via l'algorithme
821SLAAC, sur le même segment de réseau. Un ping est envoyé à l'adresse, et si une
822réponse est obtenue, un enregistrement AAAA est rajouté dans le DNS pour cette
823adresse IPv6. Veuillez-noter que cela n'arrive que pour les réseaux directement
824connectés (et non ceux pour lesquels DHCP se fait via relai), et ne
825fonctionnera pas si un hôte utilise les "extensions de vie privée"
826("privacy extensions").
827.B ra-names
828peut-être combiné avec
829.B ra-stateless
830et
831.B slaac.
Simon Kelley8ef5ada2010-06-03 19:42:45 +0100832
Simon Kelley824af852008-02-12 20:43:05 +0000833.TP
Simon Kelley8ef5ada2010-06-03 19:42:45 +0100834.B \-G, --dhcp-host=[<adresse matérielle>][,id:<identifiant client>|*][,set:<label>][,<adresse IP>][,<nom d'hôte>][,<durée de bail>][,ignore]
Simon Kelley824af852008-02-12 20:43:05 +0000835Spécifie les paramètres DHCP relatifs à un hôte. Cela permet à une machine
836possédant une adresse matérielle spécifique de se voir toujours allouée les
837mêmes nom d'hôte, adresse IP et durée de bail. Un nom d'hôte spécifié comme
838ceci remplace le nom fourni par le client DHCP de la machine hôte. Il est
839également possible d'omettre l'adresse matérielle et d'inclure le nom d'hôte,
840auquel cas l'adresse IP et la durée de bail s'appliqueront à toute machine se
841réclamant de ce nom. Par exemple
842.B --dhcp-host=00:20:e0:3b:13:af,wap,infinite
843spécifie à Dnsmasq de fournir à la machine d'adresse matérielle
84400:20:e0:3b:13:af le nom, et un bail de durée indéterminée.
845
846.B --dhcp-host=lap,192.168.0.199
847spécifie à Dnsmasq d'allouer toujours à la machine portant le nom lap
Simon Kelley8ef5ada2010-06-03 19:42:45 +0100848l'adresse IP 192.168.0.199.
849
850Les adresses allouées de la sorte ne sont pas contraintes à une plage d'adresse
851spécifiée par une option --dhcp-range, mais elles se trouver dans le même
852sous-réseau qu'une plage dhcp-range valide. Pour les sous-réseaux qui n'ont pas
853besoin d'adresses dynamiquement allouées, utiliser le mot-clef "static" dans la
854déclaration de plage d'adresses dhcp-range.
855
856Il est possible
Simon Kelley824af852008-02-12 20:43:05 +0000857d'utiliser des identifiants clients plutôt que des adresses matérielles pour
858identifier les hôtes, en préfixant par ceux-ci par 'id:'. Ainsi,
859.B --dhcp-host=id:01:02:03:04,.....
860réfère à l'hôte d'identifiant 01:02:03:04. Il est également possible de
861spécifier l'identifiant client sous la forme d'une chaîne de caractères, comme
862ceci :
863.B --dhcp-host=id:identifiantclientsousformedechaine,.....
Simon Kelley73a08a22009-02-05 20:28:08 +0000864
Simon Kelley71ee7ee2012-03-03 18:06:49 +0000865Un seul
866.B dhcp-host
867peut contenir une adresse IPv4, une adresse IPv6, ou les deux en même temps.
868Les adresses IPv6 doivent-être mises entre crochets comme suit :
869.B --dhcp-host=laptop,[1234::56]
Simon Kelley834f36f2013-04-17 13:52:49 +0100870Les adresses IPv6 peuvent ne contenir que la partie identifiant de client :
871.B --dhcp-host=laptop,[::56]
872Dans ce cas, lorsque des plages dhcp sont définies automatiquement par le biais
873de constructeurs, la partie réseau correspondante est rajoutée à l'adresse.
Simon Kelley71ee7ee2012-03-03 18:06:49 +0000874A noter que pour le DHCP IPv6, l'adresse matérielle n'est en principe pas
875disponible, aussi un client doit-être identifié par un identifiant de client
876(appellé "DUID client") ou un nom d'hôte.
877
Simon Kelley824af852008-02-12 20:43:05 +0000878L'option spéciale id:* signifie : "ignorer tout identifiant client et n'utiliser
879que l'adresse matérielle". Cela est utile lorsqu'un client présente un
880identifiant client mais pas les autres.
881
882Si un nom apparaît dans /etc/hosts, l'adresse associée peut être allouée à un
883bail DHCP mais seulement si une option
884.B --dhcp-host
Simon Kelley8ef5ada2010-06-03 19:42:45 +0100885spécifiant le nom existe par ailleurs. Seul un nom d'hôte peut-être donné dans
886une option
887.B dhcp-host
888, mais les alias sont possibles au travers de l'utilisation des CNAMEs. (Voir
889.B --cname
890).
891Le mot clef "ignore" ("ignorer") indique
Simon Kelley824af852008-02-12 20:43:05 +0000892à Dnsmasq de ne jamais fournir de bail DHCP à une machine. La machine peut être
893spécifiée par son adresse matérielle, son identifiant client ou son nom d'hôte.
894Par exemple
895.B --dhcp-host=00:20:e0:3b:13:af,ignore
896Cela est utile lorsqu'un autre serveur DHCP sur le réseau doit être utilisé par
Simon Kelley73a08a22009-02-05 20:28:08 +0000897certaines machines.
898
Simon Kelley8ef5ada2010-06-03 19:42:45 +0100899Le paramètre set:<identifiant réseau> permet de définir un
Simon Kelley824af852008-02-12 20:43:05 +0000900identifiant de réseau lorsque l'option dhcp-host est utilisée. Cela peut servir
Simon Kelley8ef5ada2010-06-03 19:42:45 +0100901à sélectionner des options DHCP juste pour cet hôte. Plus d'un label peut être
902fourni dans une directive dhcp-host (et dans cette seule directive). Lorsqu'une
903machine coïncide avec une directive dhcp-host (ou une impliquée par
904/etc/ethers), alors le label réservé "known" ("connu") est associé. Cela permet à
Simon Kelley824af852008-02-12 20:43:05 +0000905Dnsmasq d'être configuré pour ignorer les requêtes issus de machines inconnue
906 par le biais de
Simon Kelley8ef5ada2010-06-03 19:42:45 +0100907.B --dhcp-ignore=tag:!known.
Simon Kelley824af852008-02-12 20:43:05 +0000908
909Les adresses ethernet (mais pas les identifiants clients) peuvent être définies
910avec des octets joker, ainsi par exemple
911.B --dhcp-host=00:20:e0:3b:13:*,ignore
912demande à Dnsmasq d'ignorer une gamme d'adresses matérielles. Il est à noter
913que "*" doit-être précédé d'un caractère d'échappement ou mis entre guillemets
914lorsque spécifié en option de ligne de commande, mais pas dans le fichier de
Simon Kelley73a08a22009-02-05 20:28:08 +0000915configuration.
916
917Les adresses matérielles coïncident en principe avec n'importe
Simon Kelley824af852008-02-12 20:43:05 +0000918quel type de réseau (ARP), mais il est possible de les limiter à un seul type
919ARP en les précédant du type ARP (en Hexadécimal) et de "-". Ainsi
920.B --dhcp-host=06-00:20:e0:3b:13:af,1.2.3.4
921coïncidera uniquement avec des adresses matérielles Token-Ring, puisque le type
922ARP pour une adresse Token-Ring est 6.
Simon Kelley73a08a22009-02-05 20:28:08 +0000923
Simon Kelley71ee7ee2012-03-03 18:06:49 +0000924Un cas spécial, pour IPv4, correspond à l'inclusion d'une ou plusieurs adresses
Simon Kelley73a08a22009-02-05 20:28:08 +0000925matérielles, c-à-d :
926.B --dhcp-host=11:22:33:44:55:66,12:34:56:78:90:12,192.168.0.2.
927Cela permet à une adresse IP d'être associé à plusieurs adresses
928matérielles, et donne à dnsmasq la permission d'abandonner un bail DHCP
929attribué à l'une de ces adresses lorsqu'une autre adresse dans la liste
930demande un bail. Ceci est une opération dangereuse qui ne fonctionnera
931de manière fiable que si une adresse matérielle est active à un moment
932donné et dnsmasq n'a aucun moyen de s'assurer de cela. Cela est utile,
933par exemple, pour allouer une adresse IP stable à un laptop qui
934aurait à la fois une connexion filaire et sans-fil.
Simon Kelley824af852008-02-12 20:43:05 +0000935.TP
Simon Kelley28866e92011-02-14 20:19:14 +0000936.B --dhcp-hostsfile=<chemin>
937Lis les informations d'hôtes DHCP dans le fichier spécifié. Si l'argument est
938un chemin vers un répertoire, lis tous les fichiers de ce répertoire. Le
939fichier contient des informations à raison d'un hôte par ligne. Le format
940d'une ligne est la même que le texte fourni à la droite sur caractère "=" dans
941l'option
Simon Kelley824af852008-02-12 20:43:05 +0000942.B --dhcp-host.
943L'avantage de stocker les informations sur les hôtes DHCP dans ce fichier est
944que celles-ci peuvent être modifiées sans recharger Dnsmasq; le fichier sera
945relu lorsque Dnsmasq reçoit un signal SIGHUP.
Simon Kelley1a6bca82008-07-11 11:11:42 +0100946.TP
Simon Kelley28866e92011-02-14 20:19:14 +0000947.B --dhcp-optsfile=<chemin>
948Lis les informations relatives aux options DHCP dans le fichier spécifié. Si
949l'argument est un chemin vers un répertoire, lis tous les fichiers de ce
950répertoire. L'intérêt d'utiliser cette option est le même que pour
951 --dhcp-hostsfile : le fichier spécifié sera rechargé à la réception par
952dnsmasq d'un signal SIGHUP. Notez qu'il est possible d'encoder l'information
953via
Simon Kelley1f15b812009-10-13 17:49:32 +0100954.B --dhcp-boot
955en utilisant les noms optionnels bootfile-name, server-ip-address et
956tftp-server. Ceci permet d'inclure ces options dans un fichier "dhcp-optsfile".DNSMASQ_SUPPLIED_HOSTNAME
Simon Kelley1a6bca82008-07-11 11:11:42 +0100957.TP
Simon Kelley824af852008-02-12 20:43:05 +0000958.B \-Z, --read-ethers
959Lis les informations d'hôtes DHCP dans le fichier /etc/ethers. Le format de
960/etc/ethers est une adresse matérielle suivie, soit par un nom d'hôte, soit par
961une adresse IP sous la forme de 4 chiffres séparés par des points. Lorsque lu
962par Dnsmasq, ces lignes ont exactement le même effet que l'option
963.B --dhcp-host
964contenant les mêmes informations. /etc/ethers est relu à la réception d'un
Simon Kelley71ee7ee2012-03-03 18:06:49 +0000965signal SIGHUP par Dnsmasq. Les adresses IPv6 ne sont PAS lues dans /etc/ethers.
Simon Kelley824af852008-02-12 20:43:05 +0000966.TP
Simon Kelley71ee7ee2012-03-03 18:06:49 +0000967.B \-O, --dhcp-option=[tag:<label>,[tag:<label>]][encap:<option>,][vi-encap:<entreprise>,][vendor:[<classe_vendeur>],][<option>|option:<nom d'option>|option6:<option>|option6:<nom d'option>],[<valeur>[,<valeur>]]
Simon Kelley824af852008-02-12 20:43:05 +0000968Spécifie des options différentes ou supplémentaires pour des clients DHCP. Par
969défaut, Dnsmasq envoie un ensemble standard d'options aux clients DHCP : le
970masque de réseau et l'adresse de broadcast sont les mêmes que pour l'hôte
971sur lequel tourne Dnsmasq, et le serveur DNS ainsi que la route par défaut
Simon Kelley71ee7ee2012-03-03 18:06:49 +0000972prennent comme valeur l'adresse de la machine sur laquelle tourne Dnsmasq.
973(Des règles équivalentes s'appliquent en IPv6). Si une option de nom de domaine
974a été définie, son contenu est transmis. Cette option de configuration permet
975de changer toutes ces valeurs par défaut, ou de spécifier d'autres options.
976L'option DHCP à transmettre peut être fournie sous forme d'un nombre décimal
977ou sous la forme "option:<nom d'option>". Les nombres correspondants aux options
978sont définis dans la RFC2132 et suivants. Les noms d'options connus par Dnsmasq
979peuvent être obtenus via "Dnsmasq --help dhcp". Par exemple, pour définir la
980route par défaut à 192.168.4.4, il est possible de faire
Simon Kelley824af852008-02-12 20:43:05 +0000981.B --dhcp-option=3,192.168.4.4
982ou
983.B --dhcp-option = option:router, 192.168.4.4
984ou encore, pour positionner l'adresse du serveur de temps à 192.168.0.4, on peut
985faire
986.B --dhcp-option = 42,192.168.0.4
987ou
988.B --dhcp-option = option:ntp-server, 192.168.0.4
989L'adresse 0.0.0.0 prends ici le sens "d'adresse de la machine sur laquelle
990tourne Dnsmasq". Les types de données autorisées sont des adresses IP sous la
991forme de 4 chiffres séparés par des points, un nombre décimal, une liste de
992caractères hexadécimaux séparés par des 2 points, ou une chaîne de caractères.
Simon Kelley8ef5ada2010-06-03 19:42:45 +0100993Si des labels optionnels sont fournis, alors cette option n'est envoyée
994qu'aux réseaux dont tous les labels coïncident avec ceux de la requête.
Simon Kelley824af852008-02-12 20:43:05 +0000995
996Un traitement spécial est effectué sur les chaînes de caractères fournies pour
997l'option 119, conformément à la RFC 3397. Les chaînes de caractères ou les
998adresses IP sous forme de 4 chiffres séparés par des points donnés en arguments
999de l'option 120 sont traités conforméments à la RFC 3361. Les adresses IP sous
1000forme de 4 chiffres séparés par des points suivies par une barre montante "/",
1001puis une taille de masque sont encodés conforméments à la RFC 3442.
1002
Simon Kelley71ee7ee2012-03-03 18:06:49 +00001003Les options IPv6 sont fournies en utilisant le mot-clef
1004.B option6:
1005suivi par le numéro d'option ou le nom d'option. L'espace de nommage des options
1006IPv6 est disjint de l'espace de nommage des options IPv4. Les adresses IPv6
1007en option doivent être entourées de crochets, comme par exemple :
1008.B --dhcp-option=option6:ntp-server,[1234::56]
1009
Simon Kelley824af852008-02-12 20:43:05 +00001010Attention : aucun test n'étant fait pour vérifier que des données d'un type
1011adéquat sont envoyées pour un numéro d'option donné, il est tout à fait possible
1012de persuader Dnsmasq de générer des paquets DHCP illégaux par une utilisation
1013incorrecte de cette option. Lorsque la valeur est un nombre décimal, Dnsmasq
1014doit déterminer la taille des données. Cela est fait en examinant le numéro de
1015l'option et/ou la valeur, mais peut-être évité en rajoutant un suffixe d'une
1016lettre comme suit :
1017b = un octet, s = 2 octets, i = 4 octets. Cela sert essentiellement pour des
1018options encapsulées de classes de vendeurs (voir plus bas), pour lesquelles
1019Dnsmasq ne peut déterminer la taille de la valeur. Les données d'options
1020consistant uniquement de points et de décimaux sont interprétées par Dnsmasq
1021comme des adresses IP, et envoyées comme telles. Pour forcer l'envoi sous forme
1022de chaîne de caractère, il est nécessaire d'utiliser des guillemets doubles. Par
1023exemple, l'utilisation de l'option 66 pour fournir une adresse IP sous la forme
1024d'une chaîne de caractères comme nom de serveur TFTP, il est nécessaire de faire
1025comme suit :
1026.B --dhcp-option=66,"1.2.3.4"
1027
Simon Kelley71ee7ee2012-03-03 18:06:49 +00001028Les options encapsulées de classes de vendeurs peuvent-être aussi spécifiées
1029(pour IPv4 seulement) en utilisant
Simon Kelley824af852008-02-12 20:43:05 +00001030.B --dhcp-option
1031: par exemple
1032.B --dhcp-option=vendor:PXEClient,1,0.0.0.0
1033envoie l'option encapsulée de classe de vendeur "mftp-address=0.0.0.0" à
1034n'importe quel client dont la classe de vendeur correspond à "PXEClient". La
1035correspondance pour les classes de vendeur s'effectue sur des sous-chaînes de
1036caractères (voir
1037.B --dhcp-vendorclass
1038pour plus de détails). Si une option de
1039classe de vendeur (numéro 60) est envoyée par Dnsmasq, alors cela est utilisé
1040pour sélectionner les options encapsulées, de préférence à toute option envoyée
1041par le client. Il est possible d'omettre complètement une classe de vendeur :
1042.B --dhcp-option=vendor:,1,0.0.0.0
1043Dans ce cas l'option encapsulée est toujours envoyée.
Simon Kelley73a08a22009-02-05 20:28:08 +00001044
Simon Kelley71ee7ee2012-03-03 18:06:49 +00001045En IPv4, les options peuvent-être encapsulées au sein d'autres options :
Simon Kelley73a08a22009-02-05 20:28:08 +00001046par exemple
1047.B --dhcp-option=encap:175, 190, "iscsi-client0"
1048enverra l'option 175, au sein de laquelle se trouve l'option 190.
1049Plusieurs options encapsulées avec le même numéro d'option seront correctement
1050combinées au sein d'une seule option encapsulée. Il n'est pas possible de
1051spécifier encap: et vendor: au sein d'une même option dhcp.
1052
Simon Kelley316e2732010-01-22 20:16:09 +00001053La dernière variante pour les options encapsulées est "l'option de Vendeur
1054identifiant le vendeur" ("Vendor-Identifying Vendor Options") telle que
1055décrite dans le RFC3925. Celles-ci sont spécifiées comme suit :
1056.B --dhcp-option=vi-encap:2, 10, "text"
1057Le numéro dans la section vi-encap: est le numéro IANA de l'entreprise servant
Simon Kelley71ee7ee2012-03-03 18:06:49 +00001058à identifier cette option. Cette forme d'encapsulation est également supportée
1059en IPv6.
Simon Kelley316e2732010-01-22 20:16:09 +00001060
Simon Kelley824af852008-02-12 20:43:05 +00001061L'adresse 0.0.0.0 n'est pas traitée de manière particulière lorsque fournie dans
Simon Kelley73a08a22009-02-05 20:28:08 +00001062une option encapsulée.
Simon Kelley824af852008-02-12 20:43:05 +00001063.TP
Simon Kelley8ef5ada2010-06-03 19:42:45 +01001064.B --dhcp-option-force=[tag:<label>,[tag:<label>]][encap:<option>,][vi-encap:<entreprise>,][vendor:[<classe_vendeur>],][<option>|option:<nom d'option>],[<valeur>[,<valeur>]]
Simon Kelley824af852008-02-12 20:43:05 +00001065Cela fonctionne exactement de la même façon que
1066.B --dhcp-option
1067sauf que cette option sera toujours envoyée, même si le client ne la demande pas
1068dans la liste de paramêtres requis. Cela est parfois nécessaire, par exemple lors
1069de la fourniture d'options à PXELinux.
1070.TP
Simon Kelley1a6bca82008-07-11 11:11:42 +01001071.B --dhcp-no-override
Simon Kelley71ee7ee2012-03-03 18:06:49 +00001072(IPv4 seulement) Désactive la réutilisation des champs DHCP nom de serveur et
1073nom de fichier comme espace supplémentaire pour les options. Si cela est
Simon Kelley1a6bca82008-07-11 11:11:42 +01001074possible, dnsmasq déplace les informations sur le serveur de démarrage
1075et le nom de fichier (fournis par 'dhcp-boot') en dehors des champs
1076dédiés à cet usage dans les options DHCP. Cet espace supplémentaire est
1077alors disponible dans le paquet DHCP pour d'autres options, mais peut, dans
1078quelques rares cas, perturber des clients vieux ou défectueux. Cette
1079option force le comportement à l'utilisation des valeurs "simples et sûres"
1080afin d'éviter des problèmes dans de tels cas.
1081.TP
Simon Kelley71ee7ee2012-03-03 18:06:49 +00001082.B \-U, --dhcp-vendorclass=set:<label>,[enterprise:<numéro IANA d'enterprise>,]<classe de vendeur>
1083
Simon Kelley8ef5ada2010-06-03 19:42:45 +01001084Associe une chaîne de classe de vendeur à un label. La plupart
Simon Kelley824af852008-02-12 20:43:05 +00001085des clients DHCP fournissent une "classe de vendeur" ("vendor class") qui
1086représente, d'une certaine façon, le type d'hôte. Cette option associe des
1087classes de vendeur à des labels, de telle sorte que des options DHCP peuvent-être
1088fournie de manière sélective aux différentes classes d'hôtes. Par exemple,
Simon Kelley8ef5ada2010-06-03 19:42:45 +01001089.B dhcp-vendorclass=set:printers,Hewlett-Packard JetDirect
1090ou
Simon Kelley824af852008-02-12 20:43:05 +00001091.B dhcp-vendorclass=printers,Hewlett-Packard JetDirect
1092permet de n'allouer des options qu'aux imprimantes HP de la manière suivante :
Simon Kelley8ef5ada2010-06-03 19:42:45 +01001093.B --dhcp-option=tag:printers,3,192.168.4.4
Simon Kelley824af852008-02-12 20:43:05 +00001094La chaîne de caractères de la classe de vendeur founie en argument est cherchée
1095en temps que sous-chaîne de caractères au sein de la classe de vendeur fournie
1096par le client, de façon à permettre la recherche d'un sous-ensemble de la chaîne
Simon Kelley8ef5ada2010-06-03 19:42:45 +01001097de caractères ("fuzzy matching"). Le préfixe set: est optionnel mais autorisé
1098afin de conserver une certaine homogénéité.
Simon Kelley71ee7ee2012-03-03 18:06:49 +00001099
1100Notez qu'en IPv6 (et seulement en IPv6), les noms de classes de vendeurs
1101sont dans un espace de nom associé au numéro attribué à l'entreprise par
1102l'IANA. Ce numéro est fourni par le biais du mot-clef enterprise: et seules
1103les classes de vendeurs associées au numéro spécifié seront cherchées.
Simon Kelley824af852008-02-12 20:43:05 +00001104.TP
Simon Kelley8ef5ada2010-06-03 19:42:45 +01001105.B \-j, --dhcp-userclass=set:<label>,<classe utilisateur>
1106Associe une chaîne de classe d'utilisateur à un label (effectue la
Simon Kelley824af852008-02-12 20:43:05 +00001107recherche sur des sous-chaînes, comme pour les classes de vendeur). La plupart
1108des clients permettent de configurer une "classe d'utilisateur". Cette option
1109associe une classe d'utilisateur à un label, de telle manière qu'il soit
1110possible de fournir des options DHCP spécifiques à différentes classes d'hôtes.
1111Il est possible, par exemple, d'utiliser ceci pour définir un serveur
1112d'impression différent pour les hôtes de la classe "comptes" et ceux de la
1113classe "ingénierie".
1114.TP
Simon Kelley8ef5ada2010-06-03 19:42:45 +01001115.B \-4, --dhcp-mac=set:<label>,<adresse MAC>
Simon Kelley71ee7ee2012-03-03 18:06:49 +00001116(IPv4 uniquement) Associe une adresse matérielle (MAC) à un label. L'adresse
Simon Kelley824af852008-02-12 20:43:05 +00001117matérielle peut inclure des jokers. Par exemple
Simon Kelley8ef5ada2010-06-03 19:42:45 +01001118.B --dhcp-mac=set:3com,01:34:23:*:*:*
Simon Kelley824af852008-02-12 20:43:05 +00001119permet de définir le label "3com" pour n'importe quel hôte dont l'adresse
1120matérielle coïncide avec les critères définis.
1121.TP
Simon Kelley8ef5ada2010-06-03 19:42:45 +01001122.B --dhcp-circuitid=set:<label>,<identifiant de circuit>, --dhcp-remoteid=set:<label>,<identifiant distant>
1123Associe des options de relais DHCP issus de la RFC3046 à des labels.
1124Cette information peut-être fournie par des relais DHCP. L'identifiant
Simon Kelley824af852008-02-12 20:43:05 +00001125de circuit ou l'identifiant distant est normalement fourni sous la forme d'une
1126chaîne de valeurs hexadécimales séparées par des ":", mais il est également
1127possible qu'elle le soit sous la forme d'une simple chaîne de caractères. Si
1128l'identifiant de circuit ou d'agent correspond exactement à celui fourni par le
Simon Kelley8ef5ada2010-06-03 19:42:45 +01001129relais DHCP, alors le label est apposé.
Simon Kelley71ee7ee2012-03-03 18:06:49 +00001130.B dhcp-remoteid
1131est supporté en IPv6 (mais non dhcp-circuitid).
Simon Kelley824af852008-02-12 20:43:05 +00001132.TP
Simon Kelley8ef5ada2010-06-03 19:42:45 +01001133.B --dhcp-subscrid=set:<label>,<identifiant d'abonné>
Simon Kelley71ee7ee2012-03-03 18:06:49 +00001134(IPv4 et IPv6) Associe des options de relais DHCP issues de la RFC3993 à des
1135labels.
Simon Kelley824af852008-02-12 20:43:05 +00001136.TP
Simon Kelley8ef5ada2010-06-03 19:42:45 +01001137.B --dhcp-proxy[=<adresse ip>]......
Simon Kelley71ee7ee2012-03-03 18:06:49 +00001138(IPv4 seulement) Un agent relai DHCP normal est uniquement utilisé pour faire
1139suivre les éléments initiaux de l'interaction avec le serveur DHCP. Une fois
1140que le client est configuré, il communique directement avec le serveur. Cela
1141n'est pas souhaitable si le relais rajoute des informations supplémentaires
1142aux paquets DHCP, telles que celles utilisées dans
Simon Kelley8ef5ada2010-06-03 19:42:45 +01001143.B dhcp-circuitid
1144et
1145.B dhcp-remoteid.
1146Une implémentation complète de relai peut utiliser l'option serverid-override
1147de la RFC 5107 afin de forcer le serveur DHCP à utiliser le relai en temps que
1148proxy complet, de sorte que tous les paquets passent par le relai. Cette option
1149permet d'obtenir le même résultat pour des relais ne supportant pas la RFC
11505107. Fournie seule, elle manipule la valeur de server-id pour toutes les
1151interactions via des relais. Si une liste d'adresses IP est donnée, seules les
1152interactions avec les relais dont l'adresse est dans la liste seront affectées.
1153.TP
1154.B --dhcp-match=set:<label>,<numéro d'option>|option:<nom d'option>|vi-encap:<entreprise>[,<valeur>]
1155Si aucune valeur n'est spécifiée, associe le label si le client
Simon Kelley73a08a22009-02-05 20:28:08 +00001156envoie une option DHCP avec le numéro ou le nom spécifié. Lorsqu'une valeur est
1157fournie, positionne le label seulement dans le cas où l'option est fournie et
1158correspond à la valeur. La valeur peut-être de la forme "01:ff:*:02", auquel
1159cas le début de l'option doit correspondre (en respectant les jokers). La
1160valeur peut aussi être de la même forme que dans
1161.B dhcp-option
1162, auquel cas l'option est traitée comme un tableau de valeur, et un des
1163éléments doit correspondre, ainsi
1164
Simon Kelley8ef5ada2010-06-03 19:42:45 +01001165--dhcp-match=set:efi-ia32,option:client-arch,6
Simon Kelley73a08a22009-02-05 20:28:08 +00001166
1167spécifie le label "efi-ia32" si le numéro 6 apparaît dnas la liste
1168d'architectures envoyé par le client au sein de l'option 93. (se réferer
1169au RFC 4578 pour plus de détails). Si la valeur est un chaine de caractères,
1170celle-ci est recherchée (correspondance en temps que sous-chaîne).
Simon Kelley316e2732010-01-22 20:16:09 +00001171
1172Pour la forme particulière vi-encap:<numéro d'entreprise>, la comparaison se
1173fait avec les classes de vendeur "identifiant de vendeur" ("vendor-identifying
1174vendor classes") pour l'entreprise dont le numéro est fourni en option.
1175Veuillez vous réferer à la RFC 3925 pour plus de détail.
Simon Kelley1a6bca82008-07-11 11:11:42 +01001176.TP
Simon Kelley8ef5ada2010-06-03 19:42:45 +01001177.B --tag-if=set:<label>[,set:<label>[,tag:<label>[,tag:<label>]]]
1178Effectue une opération booléenne sur les labels. Si tous les labels
1179apparaissant dans la liste tag:<label> sont positionnés, alors tous les
1180la de la liste "set:<labels>" sont positionnés (ou supprimés, dans le cas
1181où "tag:!<label>" utilisé).
1182Si aucun tag:<label> n'est spécifié, alors tous les labels fournis par
1183set:<label> sont positionnés.
1184N'importe quel nombre de set: ou tag: peuvent être fournis, et l'ordre est sans
1185importance.
1186Les lignes tag-if sont executées dans l'ordre, ce qui fait que si un label dans
1187tag:<label> est un label positionné par une rêgle
1188.B tag-if,
1189la ligne qui positionne le label doit précéder celle qui le teste.
Simon Kelley824af852008-02-12 20:43:05 +00001190.TP
Simon Kelley8ef5ada2010-06-03 19:42:45 +01001191.B \-J, --dhcp-ignore=tag:<label>[,tag:<label>]
1192Lorsque tous les labels fournis dans l'option sont présents, ignorer l'hôte et
1193ne pas donner de bail DHCP.
1194.TP
1195.B --dhcp-ignore-names[=tag:<label>[,tag:<label>]]
1196Lorsque tous les labels fournis dans l'option sont présents, ignorer le
Simon Kelley824af852008-02-12 20:43:05 +00001197nom de machine fourni par l'hôte. Il est à noter que, à la différence de
Simon Kelley8ef5ada2010-06-03 19:42:45 +01001198l'option "dhcp-ignore", il est permis de ne pas fournir de label.
Simon Kelley824af852008-02-12 20:43:05 +00001199Dans ce cas, les noms d'hôtes fournis par les clients DHCP seront toujours
1200ignorés, et les noms d'hôtes seront ajoutés au DNS en utilisant uniquement la
1201configuration dhcp-host de Dnsmasq, ainsi que le contenu des fichiers /etc/hosts
1202et /etc/ethers.
1203.TP
Simon Kelley8ef5ada2010-06-03 19:42:45 +01001204.B --dhcp-generate-names=tag:<label>[,tag:<label>]
Simon Kelley71ee7ee2012-03-03 18:06:49 +00001205(IPv4 seulement) Générer un nom pour les clients DHCP qui autrement n'en aurait
1206pas, en utilisant l'adresse MAC sous sa forme hexadécimale, séparée par des
1207tirets.
Simon Kelley8ef5ada2010-06-03 19:42:45 +01001208Noter que si un hôte fourni un nom, celui-ci sera utilisé de préférence au nom
1209autogénéré, à moins que
1210.B --dhcp-ignore-names
1211ne soit positionné.
1212.TP
1213.B --dhcp-broadcast=[tag:<label>[,tag:<label>]]
Simon Kelley71ee7ee2012-03-03 18:06:49 +00001214(IPv4 seulement) Lorsque tous les labels fournis dans l'option sont présents,
1215toujours utiliser le broadcast pour communiquer avec l'hôte lorsque celui-ci
1216n'est pas configuré. Il est possible de ne spécifier aucun label, auquel cas
1217cette option s'applique inconditionnellement. La plupart des clients DHCP
1218nécessitant une réponse par le biais d'un broadcast activent une option dans
1219leur requête, ce qui fait que cela se fait automatiquement, mais ce n'est pas
1220le cas de certains vieux clients BOOTP.
Simon Kelley1a6bca82008-07-11 11:11:42 +01001221.TP
Simon Kelley7de060b2011-08-26 17:24:52 +01001222.B \-M, --dhcp-boot=[tag:<label>,]<nom de fichier>,[<nom de serveur>[,<adresse de serveur>|<nom du serveur tftp>]]
Simon Kelley71ee7ee2012-03-03 18:06:49 +00001223(IPv4 seulement) Spécifie les options BOOTP devant être retournées par le
1224serveur DHCP. Le nom de serveur ainsi que l'adresse sont optionnels : s'ils
1225ne sont pas fournis, le nom est laissé vide et l'adresse fournie est celle de
1226la machine sur laquelle s'exécute Dnsmasq. Si Dnsmasq founit un service TFTP (voir
Simon Kelley824af852008-02-12 20:43:05 +00001227.B --enable-tftp
1228), alors seul un nom de fichier est requis ici pour permettre un démarrage par
1229le réseau.
Simon Kelley8ef5ada2010-06-03 19:42:45 +01001230Si d'éventuels labels sont fournis, ils doivent coïncider avec
1231ceux du client pour que cet élement de configuration lui soit envoyé.
Simon Kelley7de060b2011-08-26 17:24:52 +01001232Une adresse de serveur TFTP peut être spécifiée à la place de l'adresse IP,
1233sous la forme d'un nom de domaine qui sera cherché dans le fichier /etc/hosts.
1234Ce nom peut être associé dans /etc/hosts avec plusieurs adresses IP, auquel cas
1235celles-ci seront utilisées tour à tour (algorithme round-robin).
1236Cela peut-être utiliser pour équilibrer la charge tftp sur plusieurs serveurs.
1237.TP
1238.B --dhcp-sequential-ip
1239Dnsmasq est conçu pour choisir l'adresse IP des clients DHCP en utilisant
1240un hachage de l'adresse MAC du client. Cela permet en général à l'adresse
1241IP du client de rester stable au fil du temps, même lorsque le client laisse
1242expirer son bail DHCP de temps en temps. Dans ce mode de fonctionnement par
1243défaut, les adresses IP sont distribuées de façon pseudo-aléatoire dans la
1244totalité de la plage d'adresses utilisable. Il existe des circonstances (par
1245exemples pour du déploiement de serveur) où il est plus pratique d'allouer les
1246adresses IP de manière séquentielle, en commençant par la plus petite adresse
1247disponible, et c'est ce mode de fonctionnement qui est permis par cette option.
1248Veuillez noter que dans ce mode séquentiel, les clients qui laissent expirer
1249leur bail ont beaucoup plus de chance de voir leur adresse IP changer, aussi
1250cette option ne devrait pas être utilisée dans un cas général.
Simon Kelley7622fc02009-06-04 20:32:05 +01001251.TP
Simon Kelley71ee7ee2012-03-03 18:06:49 +00001252.B --pxe-service=[tag:<label>,]<CSA>,<entrée de menu>[,<nom de fichier>|<type de service de démarrage>][,<adresse de serveur>|<nom de serveur>]
Simon Kelley7622fc02009-06-04 20:32:05 +01001253La plupart des ROMS de démarrage PXE ne permettent au système PXE que la simple
1254obtention d'une adresse IP, le téléchargement du fichier spécifié dans
1255.B dhcp-boot
1256et son exécution. Cependant, le système PXE est capable de fonctions bien plus
1257complexes pour peu que le serveur DHCP soit adapté.
1258
1259Ceci spécifie l'option de démarrage qui apparaitra dans un menu de démarrage
1260PXE. <CSA> est le type du système client. Seuls des types de services valides
1261apparaitront dans un menu. Les types connus sont x86PC, PC98, IA64_EFI, Alpha,
1262Arc_x86, Intel_Lean_Client, IA32_EFI, BC_EFI, Xscale_EFI et X86-64_EFI;
1263D'autres types peuvent-être spécifiés sous la forme d'une valeur entière. Le
1264paramètre après le texte correspondant à l'entrée dans le menu peut être un nom
1265de fichier, auquel cas Dnsmasq agit comme un serveur de démarrage et indique au
1266client PXE qu'il faut télécharger ce fichier via TFTP, soit depuis ce serveur
1267(l'option
1268.B enable-tftp
1269doit être spécifiée pour que cela marche), soit depuis un autre serveur TFTP
Simon Kelley71ee7ee2012-03-03 18:06:49 +00001270si une adresse ou un nom de serveur est fournie.
Simon Kelley7622fc02009-06-04 20:32:05 +01001271Veuillez noter que le suffixe de "couche" (en principe ".0") est fourni par PXE
1272et ne doit pas être rajouté au nom de fichier. Si une valeur numérique entière
1273est fournir pour le type de démarrage, en remplacement du nom de fichier, le
1274client PXE devra chercher un service de démarrage de ce type sur le réseau.
Simon Kelley316e2732010-01-22 20:16:09 +00001275Cette recherche peut être faite via broadcast ou directement auprès d'un
Simon Kelley71ee7ee2012-03-03 18:06:49 +00001276serveur si son adresse IP ou son nom sont fournis dans l'option.
Simon Kelley316e2732010-01-22 20:16:09 +00001277Si aucun nom de fichier n'est donné ni aucune valeur de type de service de
1278démarrage n'est fournie (ou qu'une valeur de 0 est donnée pour le type de
1279service), alors l'entrée de menu provoque l'interruption du démarrage par
Simon Kelley71ee7ee2012-03-03 18:06:49 +00001280le réseau et la poursuite du démarrage sur un média local. L'adresse de serveur
1281peut être donnée sous la forme de nom de domaine qui est recherché dans
1282/etc/hosts. Ce nom peut-être associé à plusieurs adresses IP, qui dans ce cas
1283sont utilisées à tour de rôle (en "round-robin").
Simon Kelley7622fc02009-06-04 20:32:05 +01001284.TP
Simon Kelley8ef5ada2010-06-03 19:42:45 +01001285.B --pxe-prompt=[tag:<label>,]<invite>[,<délai>]
Simon Kelley7622fc02009-06-04 20:32:05 +01001286Cette option permet d'afficher une invite à la suite du démarrage PXE. Si un
1287délai est fourni, alors la première entrée du menu de démarrage sera
1288automatiquement exécutée après ce délai. Si le délai vaut 0, alors la première
1289entrée disponible sera exécutée immédiatement. Si
1290.B pxe-prompt
1291est omis, le système attendra un choix de l'utilisateur s'il existe plusieurs
1292entrées dans le menu, ou démarrera immédiatement dans le cas où il n'y a qu'une
1293seule entrée. Voir
1294.B pxe-service
1295pour plus de détails sur les entrées de menu.
1296
1297Dnsmasq peut servir de "proxy-DHCP" PXE, dans le cas où un autre serveur DHCP
1298sur le réseau est responsable de l'allocation des adresses IP, auquel cas
1299Dnsmasq se contente de fournir les informations données dans les options
1300.B pxe-prompt
1301et
1302.B pxe-service
1303pour permettre le démarrage par le réseau. Ce mode est activé en utilisant le
1304mot-clef
1305.B proxy
1306dans
1307.B dhcp-range.
1308.TP
Simon Kelley824af852008-02-12 20:43:05 +00001309.B \-X, --dhcp-lease-max=<nombre>
Simon Kelley8ef5ada2010-06-03 19:42:45 +01001310Limite Dnsmasq à un maximum de <nombre> baux DHCP. Le défaut est de 1000. Cette
Simon Kelley824af852008-02-12 20:43:05 +00001311limite permet d'éviter des attaques de déni de service ("DoS") par des hôtes
1312créant des milliers de baux et utilisant beaucoup de mémoire dans le processus
1313Dnsmasq.
1314.TP
1315.B \-K, --dhcp-authoritative
Simon Kelley834f36f2013-04-17 13:52:49 +01001316Doit être spécifié lorsque dnsmasq est réellement le seul serveur DHCP
1317sur le réseau. Pour DHCPv4, cela change le comportement par défaut qui est
Simon Kelley71ee7ee2012-03-03 18:06:49 +00001318celui d'un strict respect des RFC, afin que les requêtes DHCP pour des baux
1319inconnus par des hôtes inconnus ne soient pas ignorées. Cela permet à de
1320nouveaux hôtes d'obtenir des baux sans tenir compte de fastidieuses
1321temporisations ("timeout"). Cela permet également à Dnsmasq de reconstruire
1322sa base de données contenant les baux sans que les clients n'aient besoin de
1323redemander un bail, si celle-ci est perdue.
Simon Kelley834f36f2013-04-17 13:52:49 +01001324Dans le cas de DHCPv6, cela positionne la priorité des réponses à 255 (le
1325maximum) au lieu de 0 (le minimum).
Simon Kelley824af852008-02-12 20:43:05 +00001326.TP
Simon Kelley1a6bca82008-07-11 11:11:42 +01001327.B --dhcp-alternate-port[=<port serveur>[,<port client>]]
Simon Kelley71ee7ee2012-03-03 18:06:49 +00001328(IPv4 seulement) Change les ports utilisés par défaut pour le DHCP. Si cette
1329option est donnée seule sans argument, alors change les ports utilisés pour le
1330DHCP de 67 et 68 respectivement à 1067 et 1068. Si un seul argument est donné, ce
Simon Kelley1a6bca82008-07-11 11:11:42 +01001331numéro est utilisé pour le port serveur et ce numéro plus 1 est utilisé pour le
1332port client. Enfin, en fournissant deux numéros de ports, il est possible de
1333spécifier arbitrairement 2 ports à la fois pour le serveur et pour le client DHCP.
1334.TP
Simon Kelley73a08a22009-02-05 20:28:08 +00001335.B \-3, --bootp-dynamic[=<identifiant de réseau>[,<identifiant de réseau>]]
Simon Kelley71ee7ee2012-03-03 18:06:49 +00001336(IPv4 seulement) Permet l'allocation dynamique d'adresses IP à des clients BOOTP.
1337Utiliser cette option avec précaution, une adresse allouée à un client BOOTP
1338étant perpétuelle, et de fait n'est plus disponibles pour d'autres hôtes. Si
1339aucun argument n'est donné, alors cette option permet une allocation dynamique
1340dans tous les cas. Si des arguments sont spécifiés, alors l'allocation ne se
1341fait que lorsque tous les identifiants coïncident. Il est possible de répeter
1342cette option avec plusieurs jeux d'arguments.
Simon Kelley824af852008-02-12 20:43:05 +00001343.TP
1344.B \-5, --no-ping
Simon Kelley71ee7ee2012-03-03 18:06:49 +00001345(IPv4 seulement) Par défaut, le serveur DHCP tente de s'assurer qu'une adresse
1346n'est pas utilisée avant de l'allouer à un hôte. Cela est fait en envoyant une
1347requête ICMP de type "echo request" (aussi connue sous le nom de "ping") à
1348l'adresse en question. Si le serveur obtient une réponse, alors l'adresse doit
1349déjà être utilisée et une autre est essayée. Cette option permet de supprimer
1350cette vérification. A utiliser avec précaution.
Simon Kelley824af852008-02-12 20:43:05 +00001351.TP
1352.B --log-dhcp
1353Traces additionnelles pour le service DHCP : enregistre toutes les options
Simon Kelley8ef5ada2010-06-03 19:42:45 +01001354envoyées aux clients DHCP et les labels utilisés pour la
Simon Kelley824af852008-02-12 20:43:05 +00001355détermination de celles-ci.
1356.TP
1357.B \-l, --dhcp-leasefile=<chemin de fichier>
1358Utilise le fichier dont le chemin est fourni pour stocker les informations de
Simon Kelley73a08a22009-02-05 20:28:08 +00001359baux DHCP.
Simon Kelleye46164e2012-04-16 16:39:38 +01001360.TP
1361.B --dhcp-duid=<ID d'entreprise>,<uid>
1362(IPv6 seulement) Spécifie le numéro d'UID de serveur persistant que le serveur
1363DHCPv6 doit utiliser. Cette option n'est normalement pas requise, Dnsmasq
1364créant un DUID automatiquement lorsque cela est nécessaire. Lorsque cette
1365option est positionnée, elle fournit à Dnsmasq les données nécessaires à la
1366création d'un DUID de type DUID-EN. Veuillez noter qu'une fois créé, le DUID
1367est stocké dans la base des baux, aussi changer entre un DUID créé
1368automatiquement et un DUID-EN et vice-versa impose de réinitialiser la base de
1369baux. Le numéro d'ID d'entreprise est assigné par l'IANA, et l'uid est une
1370chaine hexadécimale unique à chaque serveur.
1371.TP
Simon Kelley824af852008-02-12 20:43:05 +00001372.B \-6 --dhcp-script=<chemin de fichier>
Simon Kelleye46164e2012-04-16 16:39:38 +01001373Lorsqu'un bail DHCP est créé, qu'un ancien est supprimé, ou qu'un transfert
1374TFTP est terminé, le fichier dont le
Simon Kelley8ef5ada2010-06-03 19:42:45 +01001375chemin est spécifié est exécuté. Le <chemin de fichier> doit être un chemin
1376absolu, aucune recherche n'est effectuée via la variable d'environnement PATH.
1377Les arguments fournis à celui-ci sont soit
Simon Kelley824af852008-02-12 20:43:05 +00001378"add" ("ajouter"), "old" ("ancien") ou "del" ("supprimer"), suivi de l'adresse
Simon Kelley71ee7ee2012-03-03 18:06:49 +00001379MAC de l'hôte (ou le DUID pour IPv6) puis l'adresse IP et le nom d'hôte si
1380celui-ci est connu."add" signifie qu'un bail a été créé, "del" signifie qu'il a
1381été supprimé, "old" notifie que le bail existait au lancement de Dnsmasq, ou un
1382changement d'adresse MAC ou de nom d'hôte pour un bail existant (ou, dans le cas
1383où leasefile-ro est spécifié, un changement de durée de bail ou d'identifiant
Simon Kelley73a08a22009-02-05 20:28:08 +00001384d'hôte). Si l'adresse Mac est d'un type de réseau autre qu'ethernet, il est
1385nécessaire de la préceder du type de réseau, par exemple "06-01:23:45:67:89:ab"
1386pour du token ring. Le processus est exécuté en temps que super-utilisateur
1387(si Dnsmasq a été lancé en temps que "root"), même si Dnsmasq est configuré
1388pour changer son UID pour celle d'un utilisateur non-privilégié.
Simon Kelley8ef5ada2010-06-03 19:42:45 +01001389
1390L'environnement est hérité de celui de l'invocation du processus Dnsmasq,
1391auquel se rajoute quelques unes ou toutes les variables décrites ci-dessous :
1392
Simon Kelley71ee7ee2012-03-03 18:06:49 +00001393Pour IPv4 et IPv6 :
Simon Kelley8ef5ada2010-06-03 19:42:45 +01001394
1395DNSMASQ_DOMAIN si le nom de domaine pleinement qualifié de l'hôte est connu, la
Simon Kelley28866e92011-02-14 20:19:14 +00001396part relative au domaine y est stockée. (Notez que le nom d'hôte transmis comme
1397argument au script n'est jamais pleinement qualifié).
Simon Kelley8ef5ada2010-06-03 19:42:45 +01001398
Simon Kelley71ee7ee2012-03-03 18:06:49 +00001399Si le client fournit un nom d'hôte, DNSMASQ_SUPPLIED_HOSTNAME.
1400
1401Si le client fournit des classes d'utilisateur, DNSMASQ_USER_CLASS0 à
1402DNSMASQ_USER_CLASSn.
Simon Kelley8ef5ada2010-06-03 19:42:45 +01001403
1404Si Dnsmasq a été compilé avec l'option HAVE_BROKEN_RTC ("horloge RTC
1405défectueuse"), alors la durée du bail (en secondes) est stockée dans la
1406variable DNSMASQ_LEASE_LENGTH, sinon la date d'expiration du bail est toujours
1407stocké dans la variable d'environnement DNSMASQ_LEASE_EXPIRES. Le nombre de
1408secondes avant expiration est toujours stocké dans DNSMASQ_TIME_REMAINING.
1409
1410Si un bail était associé à un nom d'hôte et
Simon Kelley1f15b812009-10-13 17:49:32 +01001411que celui-ci est supprimé, un évênement de type "old" est généré avec le
1412nouveau statut du bail, c-à-d sans nom d'hôte, et le nom initial est fourni
Simon Kelley8ef5ada2010-06-03 19:42:45 +01001413dans la variable d'environnement DNSMASQ_OLD_HOSTNAME.
1414
1415La variable DNSMASQ_INTERFACE contient le nom de l'interface sur laquelle la
1416requête est arrivée; ceci n'est pas renseigné dans le cas des actions "old"
1417ayant lieu après un redémarrage de dnsmasq.
1418
1419La variable DNSMASQ_RELAY_ADDRESS est renseignée si le client a utilisé un
1420relai DHCP pour contacter Dnsmasq, si l'adresse IP du relai est connue.
1421
1422DNSMASQ_TAGS contient tous les labels fournis pendant la transaction DHCP,
1423séparés par des espaces.
1424
Simon Kelleye46164e2012-04-16 16:39:38 +01001425DNSMASQ_LOG_DHCP est positionné si
1426.B --log-dhcp
1427est activé.
1428
Simon Kelley71ee7ee2012-03-03 18:06:49 +00001429Pour IPv4 seulement :
1430
1431DNSMASQ_CLIENT_ID, si l'hôte a fourni un identifiant de client.
1432
Simon Kelley834f36f2013-04-17 13:52:49 +01001433DNSMASQ_CIRCUIT_ID, DNSMASQ_SUBSCRIBER_ID, DNSMASQ_REMOTE_ID si un relai DHCP a
1434rajouté l'une de ces options.
1435
Simon Kelley71ee7ee2012-03-03 18:06:49 +00001436Si le client fournit une information de classe de vendeur, DNSMASQ_VENDOR_CLASS.
1437
1438Pour IPv6 seulement :
1439
1440Si le client fournit une classe de vendeur (vendor-class), positionne
1441DNSMASQ_VENDOR_CLASS_ID avec comme contenu le numéro IANA de l'entreprise pour
1442la classe, et DNSMASQ_VENDOR_CLASS0..DNSMASQ_VENDOR_CLASSn pour les données.
1443
1444DNSMASQ_SERVER_DUID contient le DUID du serveur : cette valeur est la même
1445pour chaque appel au script.
1446
1447DNSMASQ_IAID contenant l'IAID pour le bail. Si le bail est une allocation
1448temporaire, cela est préfixé par le caractère 'T'.
1449
1450A noter que le nom d'hôte fourni, la classe de vendeur ou les données de classe
1451d'utilisateur sont uniquement fournies pour les actions "add" ou l'action "old"
1452lorsqu'un hôte reprend un bail existant, puisque ces informations ne sont pas
1453conservées dans la base de baux de dnsmasq.
1454
Simon Kelley824af852008-02-12 20:43:05 +00001455Tous les descripteurs de fichiers sont fermés, sauf stdin, stdout et stderr qui
1456sont ouverts sur /dev/null (sauf en mode déverminage).
Simon Kelley8ef5ada2010-06-03 19:42:45 +01001457
1458Le script n'est pas lancé de manière concurrente : au plus une instance du
1459script est executée à la fois (dnsmasq attends qu'une instance de script se
1460termine avant de lancer la suivante). Les changements dans la base des baux
1461nécessitant le lancement du script sont placé en attente dans une queue jusqu'à
1462terminaison d'une instance du script en cours. Si cette mise en queue fait que
1463plusieurs changements d'états apparaissent pour un bail donné avant que le
1464script puisse être lancé, alors les états les plus anciens sont supprimés et
1465lorsque le script sera finalement lancé, ce sera avec l'état courant du bail.
1466
Simon Kelley824af852008-02-12 20:43:05 +00001467Au démarrage de Dnsmasq, le script sera invoqué pour chacun des baux existants
Simon Kelley8ef5ada2010-06-03 19:42:45 +01001468dans le fichier des baux. Le script sera lancé avec l'action "del" pour les
1469baux expirés, et "old" pour les autres. Lorsque Dnsmasq reçoit un signal HUP,
1470le script sera invoqué avec une action "old" pour tous les baux existants.
Simon Kelleye46164e2012-04-16 16:39:38 +01001471
1472Il existe deux autres actions pouvant apparaître comme argument au script :
1473"init" et "tftp". D'autres sont susceptibles d'être rajoutées dans le futur,
1474aussi les scripts devraient-être écrits de sorte à ignorer les actions
1475inconnues. "init" est décrite ci-dessous dans
1476.B --leasefile-ro.
1477L'action "tftp" est invoquée lorsqu'un transfert de fichier TFTP s'est
1478terminé. Ses arguments sont la taille du fichier en octets, l'adresse à
1479laquelle le fichier a été envoyé, ainsi que le chemin complet du fichier.
1480
Simon Kelley71ee7ee2012-03-03 18:06:49 +00001481.TP
1482.B --dhcp-luascript=<chemin>
1483Spécifie un script écrit en Lua, devant être exécuté lorsque des baux sont
1484créés, détruits ou modifiés. Pour utiliser cette option, dnsmasq doit être
1485compilé avec avec le support de Lua. L'interpréteur Lua est initialisé une
1486seule fois, lorsque dnsmasq démarre, ce qui fait que les variables globales
1487persistent entre les évênements liés aux baux. Le code Lua doit définir une
1488fonction
1489.B lease
1490et peut fournir des fonctions
1491.B init
1492et
1493.B shutdown
1494qui sont appellées, sans arguments, lorsque dnsmasq démarre ou s'arrête.
Simon Kelleye46164e2012-04-16 16:39:38 +01001495Il peut également fournir une fonction
1496.B tftp.
Simon Kelley71ee7ee2012-03-03 18:06:49 +00001497
Simon Kelleye46164e2012-04-16 16:39:38 +01001498La fonction
Simon Kelley71ee7ee2012-03-03 18:06:49 +00001499.B lease
1500reçoit les informations détaillées dans
1501.B --dhcp-script.
1502Il reçoit deux arguments. Le premier spécifie l'action, qui est une chaîne de
1503caractères contenant les valeurs "add" (ajout), "old" (réactivation d'un bail
1504existant) ou "del" (suppression). Le deuxième est une table contenant des
1505paires de valeurs de labels. Les labels correspondent pour l'essentiel aux
1506valeurs d'environnement détaillées ci-dessus, ainsi le label "domain" (domaine)
1507contient les mêmes données que la variable d'environnement DNSMASQ_DOMAIN. Il
1508existe quelques labels supplémentaires contenant les données fournies comme
1509arguments à
1510.B --dhcp-script.
1511Ces labels sont
1512.B mac_address, ip_address
1513(pour respectivement l'adresse MAC et l'adresse IP)
1514et
1515.B hostname
1516(le nom d'hôte) dans le cas d'IPv4, et
1517.B client_duid, ip_address
1518(valeur DUID du client et adresse IP respectivement)
1519ainsi que
1520.B hostname
1521(le nom d'hôte) dans le cas d'IPv6.
Simon Kelleye46164e2012-04-16 16:39:38 +01001522
1523La fonction
1524.B tftp
1525est appelée de la même façon que la fonction "lease", et la table contient les
1526labels
1527.B destination_address,
1528.B file_name
1529et
1530.B file_size
1531(respectivement "adresse de destination", "nom de fichier" et "taille de fichier").
Simon Kelley71ee7ee2012-03-03 18:06:49 +00001532.TP
Simon Kelley1a6bca82008-07-11 11:11:42 +01001533.B --dhcp-scriptuser
Simon Kelley71ee7ee2012-03-03 18:06:49 +00001534Spécifie l'utilisateur sous lequel le script shell lease-change ou le script
1535doivent être exécutés. La valeur par défaut correspond à l'utilisateur root
1536mais peut-être changée par le biais de cette option.
Simon Kelley1a6bca82008-07-11 11:11:42 +01001537.TP
Simon Kelley824af852008-02-12 20:43:05 +00001538.B \-9, --leasefile-ro
1539Supprimer complètement l'usage du fichier servant de base de donnée pour les
1540baux DHCP. Le fichier ne sera ni créé, ni lu, ni écrit. Change la façon dont le
1541script de changement d'état de bail est lancé (si celui-ci est fourni par le
1542biais de l'option
1543.B --dhcp-script
1544), de sorte que la base de données de baux puisse
1545être complètement gérée par le script sur un stockage externe. En addition aux
1546actions décrites dans
1547.B --dhcp-script,
1548le script de changement d'état de bail est appellé une fois, au lancement de
1549Dnsmasq, avec pour seul argument "init". Lorsqu'appellé de la sorte, le script
1550doit fournir l'état de la base de baux, dans le format de fichier de baux de
1551Dnsmasq, sur sa sortie standard (stdout) et retourner un code de retour de 0.
1552Positionner cette option provoque également une invocation du script de
1553changement d'état de bail à chaque changement de l'identifiant de client, de
1554longueur de bail ou de date d'expiration.
1555.TP
1556.B --bridge-interface=<interface>,<alias>[,<alias>]
1557Traiter les requêtes DHCP arrivant sur n'importe laquelle des interfaces <alias>
1558comme si elles arrivaient de l'interface <interface>. Cette option est
Simon Kelley7622fc02009-06-04 20:32:05 +01001559nécessaire lors de l'utilisation de pont ethernet "ancien mode" sur plate-forme
1560BSD, puisque dans ce cas les paquets arrivent sur des interfaces "tap" n'ont
1561pas d'adresse IP.
Simon Kelley824af852008-02-12 20:43:05 +00001562.TP
Simon Kelley28866e92011-02-14 20:19:14 +00001563.B \-s, --domain=<domaine>[,<gamme d'adresses>[,local]]
Simon Kelley73a08a22009-02-05 20:28:08 +00001564Spécifie le domaine du serveur DHCP. Le domaine peut être donné de manière
1565inconditionnelle (sans spécifier de gamme d'adresses IP) ou pour des gammes
1566d'adresses IP limitées. Cela a deux effets; tout d'abord, le
Simon Kelley824af852008-02-12 20:43:05 +00001567serveur DHCP retourne le domaine à tous les hôtes le demandant, deuxièmement,
1568cela spécifie le domaine valide pour les hôtes DHCP configurés. Le but de cela
1569est de contraindre les noms d'hôte afin qu'aucun hôte sur le LAN ne puisse
1570fournir via DHCP un nom tel que par exemple "microsoft.com" et capturer du
1571trafic de manière illégitime. Si aucun nom de domaine n'est spécifié, alors
1572les noms d'hôtes avec un nom de domaine (c-à-d un point dans le nom) seront
1573interdits et enregistrés dans le journal (logs). Si un suffixe est fourni, alors
1574les noms d'hôtes possédant un domaine sont autorisés, pour peu que le nom de
1575domaine coïncide avec le nom fourni. De plus, si un suffixe est fourni, alors
1576les noms d'hôtes ne possédant pas de nom de domain se voient rajouter le
1577suffixe fourni dans l'option
1578.B --domain.
1579Ainsi, sur mon réseau, je peux configurer
1580.B --domain=thekelleys.org.uk
1581et avoir une machine dont le nom DHCP serait "laptop". L'adresse IP de cette
1582machine sera disponible à la fois pour "laptop" et "laptop.thekelleys.org.uk".
1583Si la valeur fournie pour <domaine> est "#", alors le nom de domaine est
1584positionné à la première valeur de la directive "search" du fichier
Simon Kelley28866e92011-02-14 20:19:14 +00001585/etc/resolv.conf (ou équivalent).
1586
1587La gamme d'adresses peut être de la forme
Simon Kelley73a08a22009-02-05 20:28:08 +00001588<adresse ip>,<adresse ip> ou <adresse ip>/<masque de réseau> voire une simple
1589<adresse ip>. Voir
1590.B --dhcp-fqdn
1591qui peut changer le comportement de dnsmasq relatif aux domaines.
Simon Kelley28866e92011-02-14 20:19:14 +00001592
1593Si la gamme d'adresse est fournie sous la forme
1594<adresse ip>/<taille de réseau>, alors le drapeau "local" peut-être rajouté
1595qui a pour effect d'ajouter --local-declarations aux requêtes DNS directes et
1596inverses. C-à-d
1597.B --domain=thekelleys.org.uk,192.168.0.0/24,local
Simon Kelleye46164e2012-04-16 16:39:38 +01001598est identique à
Simon Kelley28866e92011-02-14 20:19:14 +00001599.B --domain=thekelleys.org.uk,192.168.0.0/24
1600--local=/thekelleys.org.uk/ --local=/0.168.192.in-addr.arpa/
1601La taille de réseau doit-être de 8, 16 ou 24 pour être valide.
Simon Kelley73a08a22009-02-05 20:28:08 +00001602.TP
1603.B --dhcp-fqdn
1604Dans le mode par défaut, dnsmasq insère les noms non-qualifiés des clients
1605DHCP dans le DNS. Pour cette raison, les noms doivent être uniques, même si
1606deux clients ayant le même nom sont dans deux domaines différents. Si un
1607deuxième client DHCP apparaît ayant le même nom qu'un client déjà existant,
1608ce nom est transféré au nouveau client. Si
1609.B --dhcp-fqdn
1610est spécifié, ce comportement change : les noms non qualifiés ne sont plus
1611rajoutés dans le DNS, seuls les noms qualifiés le sont. Deux clients DHCP
1612avec le même nom peuvent tous les deux garder le nom, pour peu que la partie
1613relative au domaine soit différente (c-à-d que les noms pleinements qualifiés
1614diffèrent). Pour d'assurer que tous les noms ont une partie domaine, il doit-y
1615avoir au moins un
1616.B --domain
1617sans gamme d'adresses de spécifié lorsque l'option
1618.B --dhcp-fqdn
1619est configurée.
Simon Kelley824af852008-02-12 20:43:05 +00001620.TP
Simon Kelley71ee7ee2012-03-03 18:06:49 +00001621.B --dhcp-client-update
1622Normalement, lorsque dnsmasq fournit un bail DHCP, il positionne un label
1623dans l'option FQDN pour indiquer au client qu'il ne doit pas tenter de faire
1624une mise à jour DDNS avec son nom et son adresse IP. Ceci parce que la paire
1625Nom-IP est rajoutée automatiquement dans la partie DNS de dnsmasq. Cette option
1626inhibe ce comportement ce qui est utile, par exemple, pour permettre aux clients
1627Windows de la mise à jour de serveurs Active Directory. Voir la RFC 4702 pour
1628plus de détails.
1629.TP
1630.B --enable-ra
1631Active la fonctionalité d'annonces routeurs IPv6 ("IPv6 Router Advertisement").
1632DHCPv6 ne gère pas la configuration complète du réseau de la même façon que
1633DHCPv4. La découverte de routeurs et la découverte (éventuelle) de préfixes pour
1634la création autonome d'adresse sont gérées par un protocole différent.
1635Lorsque DHCP est utilisé, seul un sous-ensemble de tout ceci est nécessaire et
1636dnsmasq est à même de le gérer, en utilisant la configuration DHCP présente pour
1637fournir la majorité des données. Lorsque les annonces routeurs (RA pour "Router
1638Advertisement") sont activées, dnsmasq va annoncer un préfixe pour chaque
1639dhcp-range et, par défaut, fournir comme valeur de routeur et de DNS récursif
1640la valeur d'adresse link-local appropriée parmi celles de la machine sur
1641laquelle tourne dnsmasq.
Simon Kelleye46164e2012-04-16 16:39:38 +01001642Par défaut, les bits "managed address" sont positionnés, et le bit "use SLAAC"
1643("utiliser SLAAC") est réinitialisé. Cela peut-être changé pour des
1644sous-réseaux donnés par le biais du mot clef de mode décris dans
1645.B --dhcp-range.
1646Les paramètres DNS du RFC6106 sont inclus dans les annonces. Par défaut,
1647l'adresse link-local appropriée parmi celles de la machine sur laquelle tourne
1648dnsmasq est spécifiée comme DNS récursif. Si elles sont fournies, les
1649options dns-server et domain-search sont utilisées respectivement pour RDNSS et
1650DNSSL.
Simon Kelley71ee7ee2012-03-03 18:06:49 +00001651.TP
Simon Kelleyc4c04882012-08-06 20:09:15 +01001652.B --enable-tftp
Simon Kelley824af852008-02-12 20:43:05 +00001653Active la fonction serveur TFTP. Celui-ci est de manière délibérée limité aux
Simon Kelley1a6bca82008-07-11 11:11:42 +01001654fonctions nécessaires au démarrage par le réseau ("net-boot") d'un client. Seul
1655un accès en lecture est possible; les extensions tsize et blksize sont supportées
Simon Kelleyc4c04882012-08-06 20:09:15 +01001656(tsize est seulement supporté en mode octet).
Simon Kelley824af852008-02-12 20:43:05 +00001657.TP
Simon Kelley8ef5ada2010-06-03 19:42:45 +01001658.B --tftp-root=<répertoire>[,<interface>]
Simon Kelley824af852008-02-12 20:43:05 +00001659Les fichiers à fournir dans les transferts TFTP seront cherchés en prenant le
1660répertoire fourni comme racine. Lorsque cela est fourni, les chemins TFTP
1661incluant ".." sont rejetés, afin d'éviter que les clients ne puissent sortir de
1662la racine spécifiée. Les chemins absolus (commençant par "/") sont autorisés,
Simon Kelley8ef5ada2010-06-03 19:42:45 +01001663mais ils doivent être à la racine TFTP fournie. Si l'option interface est
1664spécifiée, le répertoire n'est utilisé que pour les requêtes TFTP reçues sur
1665cette interface.
Simon Kelley824af852008-02-12 20:43:05 +00001666.TP
1667.B --tftp-unique-root
1668Ajouter l'adresse IP du client TFTP en temps qu'élément de chemin, à la suite
1669de la racine tftp (adresse sous forme de 4 chiffres séparés par des points).
1670Uniquement valable si une racine TFTP est spécifiée et si le répertoire
1671correspond existe. Ainsi, si la valeur pour tftp-root est "/tftp" et que le
1672client d'adresse IP 1.2.3.4 requiert le fichier "monfichier", alors le chemin
1673effective résultant sera "/tftp/1.2.3.4/monfichier" si /tftp/1.2.3.4 existe, ou
1674"/tftp/monfichier" dans le cas contraire.
1675.TP
1676.B --tftp-secure
1677Active le mode TFTP sécurisé : sans cela, tout fichier lisible
1678par Dnsmasq est disponible via TFTP (les règles de contrôle d'accès unix
1679habituelles s'appliquent). Lorsque l'option
1680.B --tftp-secure
1681est spécifiée, seuls les fichiers possédés par l'utilisateur sous lequel tourne
1682le processus Dnsmasq sont accessibles. Si Dnsmasq est exécuté en temps que
1683super-utilisateur ("root"), des règles différentes s'appliquent :
1684.B --tftp-secure
1685n'a aucun effet, mais seuls les fichiers ayant un droit de lecture pour tout le
1686monde sont accessibles. Il n'est pas recommandé d'exécuter Dnsmasq sous
1687l'utilisateur "root" lorsque le service TFTP est activé, et il est formellement
1688déconseillé de le faire sans fournir l'option
1689.B --tftp-root.
1690Sans cela, en effet, l'accès de tous les fichiers du serveur pour lequel le
1691droit de lecture pour tout le monde est positionné ("world-readable") devient
1692possible par n'importe quel hôte sur le réseau.
1693.TP
Simon Kelleyc4c04882012-08-06 20:09:15 +01001694.B --tftp-lowercase
1695Converti les noms de fichiers des requêtes TFTP en minuscules. Cela est utile
1696pour les requêtes effectuées depuis les machines Windows, dont les systèmes
1697de fichiers sont insensibles à la casse et pour lesquels la détermination
1698de la casse est parfois un peu aléatoire. A noter que le serveur tftp de
1699dnsmasq converti systématiquement les "\\" en "/" dans les noms de fichiers.
1700.TP
Simon Kelley824af852008-02-12 20:43:05 +00001701.B --tftp-max=<connexions>
1702Définit le nombre maximum de connexions TFTP simultanées autorisées. La valeur
1703par défaut est de 50. Lorsqu'un grand nombre de connexions TFTP est spécifié,
1704il se peut que la limite de nombre de descripteurs de fichiers par processus
1705soit atteinte. Dnsmasq nécessite quelques descripteurs de fichiers, ainsi qu'un
1706descripteur de fichier pour chaque connexion TFTP simultanée et pour chacun des
1707fichiers devant être fournis. De fait, servir le même fichier à n clients ne
1708nécessitera qu'environ n + 10 descripteurs de fichiers, alors que fournir des
1709fichiers tous différents à n clients utilisera environ (2*n) + 10 descripteurs.
Simon Kelley1a6bca82008-07-11 11:11:42 +01001710Si elle est donnée, l'option
1711.B --tftp-port-range
1712peut affecter le nombre maximum de connexions concurrentes.
Simon Kelley824af852008-02-12 20:43:05 +00001713.TP
1714.B --tftp-no-blocksize
1715Empêche le serveur TFTP de négocier l'option "blocksize" (taille de bloc) avec
1716les clients. Certains clients buggés spécifient cette option mais se comportent
1717ensuite de manière incorrecte si celle-ci est accordée.
1718.TP
1719.B --tftp-port-range=<début>,<fin>
Simon Kelley1a6bca82008-07-11 11:11:42 +01001720Un serveur TFTP écoute sur le port prédéfini 69 ("well-known port") pour
1721l'initiation de la connexion, mais utilise également un port dynamiquement
1722alloué pour chaque connexion. Normalement, ces ports sont alloués par
1723le système d'exploitation, mais cette option permet de spécifier une gamme
1724de ports à utiliser pour les transferts TFTP. Cela peut-être utile si
1725TFTP doit traverser un dispositif garde-barrière ("firewall"). La valeur
1726de début pour la plage de port ne peut-être inférieure à 1025 sauf si
1727dnsmasq tourne en temps que super-utilisateur ("root"). Le nombre de
1728connexions TFTP concurrentes est limitée par la taille de la gamme de
1729ports ainsi spécifiée.
1730.TP
1731.B --tftp-port-range=<début>,<fin>
Simon Kelley824af852008-02-12 20:43:05 +00001732Un serveur TFTP écoute sur un numéro de port bien connu (69) pour l'initiation
1733de la connexion, et alloue dynamiquement un port pour chaque connexion. Ces
1734numéros de ports sont en principe alloués par le système d'exploitation, mais
1735cette option permet de spécifier une gamme de ports à utiliser pour les
1736transferts TFTP. Cela peut-être utile lorsque ceux-ci doivent traverser un
1737dispositif garde-barrière ("firewall"). Le début de la plage ne peut-être
1738inférieur à 1024 à moins que Dnsmasq ne fonctionne en temps que
1739super-utilisateur ("root"). Le nombre maximal de connexions TFTP concurrentes
1740est limitée par la taille de la plage de ports ainsi définie.
1741.TP
1742.B \-C, --conf-file=<fichier>
1743Spécifie un fichier de configuration différent. L'option "conf-file" est
1744également autorisée dans des fichiers de configuration, ce qui permet
Simon Kelley28866e92011-02-14 20:19:14 +00001745l'inclusion de multiples fichiers de configuration. L'utilisation de "-" comme
1746nom de fichier permet la lecture par dnsmasq de sa configuration sur l'entrée standard
1747stdin.
Simon Kelley824af852008-02-12 20:43:05 +00001748.TP
Simon Kelley1f15b812009-10-13 17:49:32 +01001749.B \-7, --conf-dir=<répertoire>[,<extension de fichier>...]
Simon Kelley824af852008-02-12 20:43:05 +00001750Lis tous les fichiers du répertoire spécifié et les traite comme des fichiers de
Simon Kelley1f15b812009-10-13 17:49:32 +01001751configuration. Si des extensions sont données, tout fichier finissant par ces
1752extensions seront ignorés. Tout fichier dont le nom se termine en ~ ou commence
1753par ., ainsi que ceux commençant ou se terminant par # seront systématiquement
1754ignorés.
Simon Kelley824af852008-02-12 20:43:05 +00001755Cette option peut être donnée en ligne de commande ou dans un fichier de
1756configuration.
1757.SH FICHIER DE CONFIGURATION
1758Au démarrage, Dnsmasq lis
1759.I /etc/dnsmasq.conf,
1760si ce fichier existe. (Sur FreeBSD, ce fichier est
1761.I /usr/local/etc/dnsmasq.conf
1762) (voir cependant les options
1763.B \-C
1764et
1765.B \-7
1766). Le format de ce fichier consiste en une option par ligne, exactement comme
1767les options longues détaillées dans la section OPTIONS, mais sans être précédées
1768par "--". Les lignes commençant par # sont des commentaires et sont ignorées.
1769Pour les options qui ne peuvent-être spécifiées qu'une seule fois, celle du
1770fichier de configuration prends le pas sur celle fournie en ligne de commande.
1771Il est possible d'utiliser des guillemets afin d'éviter que les ",",":","." et
1772"#" ne soit interprêtés, et il est possible d'utiliser les séquences
Simon Kelley1a6bca82008-07-11 11:11:42 +01001773d'échappement suivantes : \\\\ \\" \\t \\e \\b \\r et \\n. Elles correspondent
Simon Kelley824af852008-02-12 20:43:05 +00001774respectivement à la barre oblique descendante ("anti-slash"), guillemets doubles,
Simon Kelley1a6bca82008-07-11 11:11:42 +01001775tabulation, caractère d'échappement ("escape"), suppression ("backspace"), retour ("return") et
Simon Kelley824af852008-02-12 20:43:05 +00001776nouvelle ligne ("newline").
1777.SH NOTES
1778A la réception d'un signal SIGHUP,
1779.B Dnsmasq
1780vide son cache et recharge les fichiers
1781.I /etc/hosts
1782et
1783.I /etc/ethers
1784ainsi que tout autre fichier spécifié par les options
1785.B --dhcp-hostsfile
1786,
1787.B --dhcp-optsfile
1788ou
1789.B --addn-hosts.
1790Le script de changement de bail est appellé pour chaque bail DHCP existant. Si
1791l'option
1792.B --no-poll
1793est positionnée, alors le fichier
1794.I /etc/resolv.conf
1795est également rechargé.
1796SIGHUP ne provoque PAS de rechargement du fichier de configuration.
1797.PP
1798A la réception d'un signal SIGUSR1,
1799.B Dnsmasq
1800écrit des statistiques dans les traces système. Les informations fournies sont :
1801la taille du cache, le nombre de noms ayant été supprimés du cache avant
1802expiration afin de faire de la place pour les nouveaux noms, ainsi que le nombre
Simon Kelley1a6bca82008-07-11 11:11:42 +01001803total d'entrées ayant été insérées dans le cache. Pour chaque serveur amont, il fournit
1804le nomnbre de requêtes transmises ainsi que le nombre de requêtes ayant résulté par une
1805erreur. Lorsque Dnsmasq a été lancé via
Simon Kelley824af852008-02-12 20:43:05 +00001806.B --no-daemon
1807ou lorsque la traçabilité maximale a été activée (
1808.B -q
1809), la totalité du contenu du
1810cache est de surcroît fournie.
1811.PP
1812A la réception d'un signal SIGUSR2 et lorsqu'il enregistre directement ses
1813traces dans un fichier (voir
1814.B --log-facility
1815), alors
1816.B Dnsmasq
1817ferme et re-rouvre le fichier de traces. Il faut noter que pendant cette
1818opération Dnsmasq ne s'exécute pas en temps que "root". Lorsqu'il créé un
1819fichier de traces pour la première fois, Dnsmasq change le propriétaire du
1820fichier afin de le faire appartenir à l'utilisateur non "root" sous lequel
1821Dnsmasq s'exécute. Le logiciel de rotation de fichiers de trace logrotate doit
1822être configuré pour créer un nouveau fichier avec un propriétaire identique au
1823fichier existant avant d'envoyer le signal SIGUSR2. Si une requête DNS TCP est
1824en cours, l'ancien fichier de traces reste ouvert dans le processus fils qui
1825traite la requête TCP et il peut y être écrit. Il existe cependant une limite
1826de 150 secondes après laquelle tous les processus traitant des requêtes TCP
1827expirent : pour cette raison, il est préférable de ne pas configurer la
1828compression des fichiers de traces venant juste de faire l'objet d'une rotation.
1829Dans le cas de l'utilisation du logiciel logrotate, les options requises sont
1830.B create
1831et
1832.B delaycompress.
Simon Kelley824af852008-02-12 20:43:05 +00001833
1834.PP
1835Dnsmasq est un logiciel de transmission de requêtes DNS : il n'est pas capable
1836d'effectuer une résolution de nom récursive en partant des serveurs DNS racine,
1837mais transmet de telles requêtes à un serveur DNS amont capable de telles
1838recherches récursives, ce qui est typiquement le cas d'un serveur DNS de FAI.
1839Par défaut, Dnsmasq lis
1840.I /etc/resolv.conf
1841pour découvrir les adresses IP des serveurs DNS amonts à utiliser, puisque cette
1842information est en général stockée à cet endroit. A moins que l'option
1843.B --no-poll
1844ne soit utilisée,
1845.B Dnsmasq
1846vérifie la date de modification du fichier
1847.I /etc/resolv.conf
1848(ou l'équivalent si
1849.B \--resolv-file
1850est utilisé), et le relis lorsqu'il change. Cela permet de définir les serveurs
1851DNS amont de manière dynamique lorsque PPP ou DHCP sont utilisés, puisque ces
1852protocoles fournissent cette information.
1853L'absence du fichier
1854.I /etc/resolv.conf
1855ne conduit pas à une erreur, puisqu'il peut très bien ne pas être créé avant
1856qu'une connexion PPP ne soit établie. Dans ce cas, Dnsmasq vérifie régulièrement
1857pour voir si un fichier
1858.I /etc/resolv.conf
1859est créé. Dnsmasq peut être configuré pour lire plus d'un fichier resolv.conf.
1860Cela est utile sur un ordinateur portable où PPP et DHCP peuvent-être utilisés :
1861Dnsmasq peut alors être configuré pour lire à la fois
1862.I /etc/ppp/resolv.conf
1863et
1864.I /etc/dhcpc/resolv.conf
1865et utilisera le contenu du fichier ayant changé en dernier, ce qui permet de
1866passer automatiquement de serveurs DNS à d'autres.
1867.PP
1868Les serveurs amonts peuvent aussi être spécifiés sur la ligne de commande ou
1869dans un fichier de configuration. Ces spécifications de serveurs peuvent
1870éventuellement se voir adjoindre d'un nom de domaine qui précise à Dnsmasq quel
1871serveur utiliser pour trouver les noms d'un domaine donné.
1872.PP
1873Pour configurer Dnsmasq afin qu'il se comporte comme un cache pour la machine
1874sur laquelle il tourne, mettre "nameserver 127.0.0.1" dans le fichier
1875.I /etc/resolv.conf
1876afin de forcer les processus locaux à envoyer leurs requêtes à Dnsmasq. Ensuite,
1877spécifier les serveurs DNS amont soit en les fournissant directement à Dnsmasq
1878via l'option
1879.B \--server
1880ou alors en mettant leurs adresses dans un autre fichier, par exemple
1881.I /etc/resolv.dnsmasq
1882et en lançant Dnsmasq avec l'option
1883.B \-r /etc/resolv.dnsmasq.
1884Cette deuxième technique permet la mise-à-jour dynamique des addresses de
1885serveurs DNS amont par le biais de PPP ou DHCP.
1886.PP
1887Les adresses dans /etc/hosts prennent le dessus sur celles fournies par le
1888serveur DNS amont, ainsi "macompagnie.com 1.2.3.4" dans /etc/hosts assure que
1889les requêtes pour "macompagnie.com" retourneront toujours 1.2.3.4, même si une
1890requête au serveur DNS amont retournerait une adresse différente. Il y a une
1891exception à ceci : si le DNS amont contient un CNAME qui pointe vers un nom
1892présent dans /etc/hosts, alors la recherche du CNAME via Dnsmasq fournira
1893l'adresse DNS amont. Pour contourner cela, il suffit de mettre l'entrée
1894correspondant au CNAME dans /etc/hosts.
Simon Kelley824af852008-02-12 20:43:05 +00001895.PP
Simon Kelley8ef5ada2010-06-03 19:42:45 +01001896le système de label fonctionne comme suit : pour chaque requête DHCP, dnsmasq
1897associe un ensemble de labels obtenus à partir des lignes de la configuration
1898incluant set:<label>, y compris un pour la plage d'adresse (
Simon Kelley824af852008-02-12 20:43:05 +00001899.B dhcp-range
Simon Kelley8ef5ada2010-06-03 19:42:45 +01001900) utilisée pour allouer l'adresse, un pour chaque entrée
Simon Kelley824af852008-02-12 20:43:05 +00001901.B dhcp-host
Simon Kelley8ef5ada2010-06-03 19:42:45 +01001902associée (auquel est rajouté le mot-clef "known" si une entrée dhcp-host
1903coïncide).
1904
1905Le label "bootp" est associé aux requêtes BOOTP, un label dont le nom est le
1906nom de l'interface sur laquelle la requête est arrivée.
1907
1908Pour les lignes de configuration comportant des éléments tag:<label>,
1909seules seront valides celles pour lesquels tous les labels correspondants
1910seront présents. C'est typiquement le cas des lignes dhcp-options.
1911Un
Simon Kelley824af852008-02-12 20:43:05 +00001912.B dhcp-option
Simon Kelley8ef5ada2010-06-03 19:42:45 +01001913possédant des labels sera utilisé de préférence à un
1914.B dhcp-option
1915sans label, pour peu que _tous_ les labels positionnés correspondent à l'ensemble
1916de labels décrit plus haut.
1917Le préfixe '!' sur un label est un indicateur de négation, ainsi
1918.B --dhcp=option=tag:!purple,3,1.2.3.4
1919n'envoie l'option que lorsque le label "purple" n'est pas dans la liste de
1920labels définis pour l'hôte considéré. (dans le cas de l'utilisation dans une
1921ligne de commande au lieu d'un fichier de configuration, ne pas oublier
1922d'échapper le caractère !, qui est un méta-caractère d'interpréteur de commande
1923shell).
Simon Kelley7de060b2011-08-26 17:24:52 +01001924
Simon Kelley7de060b2011-08-26 17:24:52 +01001925Lors de la sélection d'une option, une étiquette spécifiée par dhcp-range
1926passe après les autres étiquettes, ce qui permet de facilement remplacer des
1927option génériques pour des hôtes spécifiques, ainsi :
1928.B dhcp-range=set:interface1,......
1929.B dhcp-host=set:monhote,.....
1930.B dhcp-option=tag:interface1,option:nis-domain,"domaine1"
1931.B dhcp-option=tag:monhote,option:nis-domain,"domaine2"
1932va positionner l'option NIS-domain à domaine1 pour les hôtes dans la plage
1933d'adresse, sauf pour monhote pour lequel cette valeur sera domaine2.
1934
Simon Kelley824af852008-02-12 20:43:05 +00001935.PP
Simon Kelley8ef5ada2010-06-03 19:42:45 +01001936Veuillez noter que pour
1937.B dhcp-range
1938, les éléments tag:<label> et set:<label> sont tous les deux autorisés
1939pour sélectionner la plage à utiliser selon, par exemple, le dhcp-host,
1940et pour affecter l'option envoyée, sur la base de la plage sélectionnée.
1941
1942Ce système a évolué d'un système plus ancien et aux possibilités plus limitées,
1943et pour des raisons de compatibilité "net:" peut être utilisé à la place de
1944"tag:" et "set:" peut-être omis (à l'exception de
1945.B dhcp-host,
1946où "net:" peut-être utilisé à la place de "set:"). Pour les mêmes raisons, '#'
1947peut-être utilisé à la place de '!' pour indiquer la négation.
Simon Kelley824af852008-02-12 20:43:05 +00001948.PP
1949Le serveur DHCP intégré dans Dnsmasq fonctionne également en temps que serveur
1950BOOTP, pour peu que l'adresse MAC et l'adresse IP des clients soient fournies,
1951que ce soit par le biais de l'option
1952.B dhcp-host
1953ou dans le fichier
1954.I /etc/ethers
1955, et que l'option
1956.B dhcp-range
1957soit présente afin d'activer le serveur DHCP pour un réseau donné (L'option
1958.B --bootp-dynamic
1959supprime la nécessité des associations statiques). Le paramètre
Simon Kelley8ef5ada2010-06-03 19:42:45 +01001960"filename" (nom de fichier) de la requête BOOTP est utilisé comme label, ainsi
1961que le label "bootp", permettant un certain contrôle sur les options retournées
Simon Kelley824af852008-02-12 20:43:05 +00001962aux différentes classes d'hôtes.
1963
Simon Kelley834f36f2013-04-17 13:52:49 +01001964
1965.SH CONFIGURATION EN TEMPS QUE SERVEUR FAISANT AUTORITÉ
1966.PP
1967Configurer dnsmasq pour agir en temps que serveur DNS faisant autorité est
1968compliqué par le fait que cela implique la configuration de serveurs DNS
1969externes pour mettre en place la délégation. Seront présentés ci-dessous trois
1970scénarios de complexité croissante. Le pré-requis pour chacun de ces scénarios
1971est l'existence d'une adresse IP globalement disponible, d'un enregistrement de
1972type A ou AAAA pointant vers cette adresse, ainsi que d'un serveur DNS externe
1973capable d'effectuer la délégation de la zone en question. Pour la première
1974partie de ces explications, nous allons appeller serveur.exemple.com
1975l'enregistrement A (ou AAAA) de l'adresse globalement accessible, et
1976notre.zone.com la zone pour laquelle dnsmasq fait autorité.
1977
1978La configuration la plus simple consiste en deux lignes de configuration,
1979sous la forme :
1980.nf
1981.B auth-server=serveur.exemple.com,eth0
1982.B auth-zone=notre.zone.com,1.2.3.0/24
1983.fi
1984
1985ainsi que deux enregistrements dans le DNS externe :
1986
1987.nf
1988serveur.exemple.com A 192.0.43.10
1989notre.zone.com NS serveur.exemple.com
1990.fi
1991
1992eth0 est l'interface réseau externe sur laquelle dnsmasq écoute, dont l'adresse
1993IP (globalement accessible) est 192.0.43.10.
1994
1995A noter que l'adresse IP externe peut parfaitement être dynamique (par exemple
1996attribuée par un FAI via DHCP ou PPP). Dans ce cas, l'enregistrement de type A
1997doit être lié à cet enregistrement dynamique par l'une ou l'autre des techniques
1998habituelles de système DNS dynamique.
1999
2000Un exemple plus complexe mais en pratique plus utile correspond au cas où
2001l'adresse IP globalement accessible se trouve dans la zone pour laquelle
2002dnsmasq fait autorité, le plus souvent à la racine. Dans ce cas nous avons :
2003
2004.nf
2005.B auth-server=notre.zone.com,eth0
2006.B auth-zone=notre.zone.com,1.2.3.0/24
2007.fi
2008
2009.nf
2010notre.zone.com A 1.2.3.4
2011notre.zone.com NS our.zone.com
2012.fi
2013
2014L'enregistrement A pour notre.zone.com est dorénavant un enregistrement "colle"
2015qui résoud le problème de poule et d'oeuf consistant à trouver l'adresse IP
2016du serveur de nom pour notre.zone.com lorsque l'enregistrement se trouve dans
2017la zone en question. Il s'agit du seul rôle de cet enregistrement : comme dnsmasq
2018fait désormais autorité pour notre.zone.com, il doit également fournir cet
2019enregistrement. Si l'adresse externe est statique, cela peut-être réalisé par
2020le biais d'une entrée dans
2021.B /etc/hosts
2022ou via un
2023.B --host-record.
2024
2025.nf
2026.B auth-server=notre.zone.com,eth0
2027.B host-record=notre.zone.com,1.2.3.4
2028.B auth-zone=notre.zone.com,1.2.3.0/24
2029.fi
2030
2031Si l'adresse externe est dynamique, l'adresse associée à notre.zone.com doit
2032être dérivée de l'interface correspondante. Cela peut être fait en utilisant
2033.B interface-name
2034Sous la forme :
2035
2036.nf
2037.B auth-server=notre.zone.com,eth0
2038.B interface-name=notre.zone.com,eth0
2039.B auth-zone=notre.zone.com,1.2.3.0/24
2040.fi
2041
2042La configuration finale rajoute à cette base un serveur DNS secondaire. Il
2043s'agit d'un autre serveur DNS qui apprend les données DNS de la zone en
2044effectuant un transfert de zone, et qui joue le rôle de serveur de secours
2045au cas où le serveur principal devenait inaccessible. La configuration
2046de ce serveur secondaire sort du cadre de cette page de manuel. Les éléments
2047de configuration à rajouter dans dnsmasq sont les simples :
2048
2049.nf
2050.B auth-sec-servers=secondaire.monfai.com
2051.fi
2052
2053et
2054
2055.nf
2056notre.zone.com NS secondaire.monfai.com
2057.fi
2058
2059L'addition d'une option auth-sec-servers active les transferts de zone dans
2060dnsmasq, ce qui permet au serveur secondaire de venir collecter les données
2061DNS. Si vous souhaitez restreindre l'accès à ces données à des hôtes
2062spécifiques, vous pouvez le faire via :
2063
2064.nf
2065.B auth-peer=<adresse IP du serveur secondaire>
2066.fi
2067
2068Dnsmasq joue le rôle de serveur faisant autorité pour les domaines in-addr.arpa
2069et ipv6.arpa associés aux sous-réseaux définis dans la déclaration de zone
2070auth-zone, ce qui fait que les requêtes DNS inversées (de l'adresse vers
2071le nom) peuvent-simplement être configurées avec un enregistrement NS
2072adéquat. Par exemple, comme nous définissons plus haut les adresses
20731.2.3.0/24 :
2074.nf
2075 3.2.1.in-addr.arpa NS notre.zone.com
2076.fi
2077
2078Veuillez noter que pour l'instant, les zones inverses ne sont pas
2079disponibles dans les transferts de zone, donc il est inutile de configurer
2080de serveur secondaire pour la résolution inverse.
2081
2082.PP
2083Lorsque dnsmasq est configuré en temps que serveur faisant autorité,
2084les données suivantes sont utilisées pour peupler la zone considérée :
2085.PP
2086.B --mx-host, --srv-host, --dns-rr, --txt-record, --naptr-record
2087, pour autant que les noms des enregistrements se trouvent dans la zone en
2088question.
2089.PP
2090.B --cname
2091pour peu que le nom soit dans le domaine. Si la cible du CNAME n'est
2092pas pleinement qualifiée, alors elle est qualifiée avec le nom de la
2093zone pour laquelle le serveur fait autorité.
2094.PP
2095Les adresses IPv4 et IPv6 extraites de /etc/hosts (et
2096.B --addn-hosts
2097) ainsi que les options
2098.B --host-record
2099fournissant des adresses situées dans l'un des sous-réseaux spécifiés dans
2100.B --auth-zone.
2101.PP
2102Adresses spécifiées par
2103.B --interface-name.
2104Dans ce cas, l'adresse n'est pas limitée à l'un des sous-réseaux donné dans
2105.B --auth-zone.
2106
2107.PP
2108Les adresses de baux DHCP, si l'adresse est située dans l'un des sous-réseaux de
2109.B --auth-zone
2110OU dans une plage DHCP construite. Dans le mode par défaut, où le bail
2111DHCP a un nom non qualifié, et éventuellement pour un nom qualifié construit
2112via
2113.B --domain
2114, alors le nom dans la zone faisant autorité est construit à partir du nom
2115non qualifié et du nom de domaine de la zone. Cela peut on non être égal
2116celui fourni par
2117.B --domain.
2118Si l'option
2119.B --dhcp-fqdn
2120est fournie, alors les noms pleinemenet qualifiés associés aux baux DHCP
2121sont utilisés, dès lors qu'ils correspondent au nom de domaine associé
2122à la zone.
2123
2124
Simon Kelley824af852008-02-12 20:43:05 +00002125.SH CODES DE SORTIE
2126.PP
21270 - Dnsmasq s'est correctement lancé en tâche de fond, ou alors s'est
2128correctement terminé si le lancement en tâche de fond n'a pas été activé.
2129.PP
21301 - Un problème de configuration a été détecté.
2131.PP
21322 - Un problème est survenu avec un accès réseau (adresse déjà utilisée,
2133tentative d'utiliser un port privilégié sans les permissions nécessaires).
2134.PP
21353 - Un problème est survenu avec une opération sur un système de fichier
2136(fichier ou répertoire manquant, permissions).
2137.PP
21384 - Impossibilité d'allouer de la mémoire.
2139.PP
21405 - Autre problème.
2141.PP
214211 ou plus - un code de retour différent de 0 a été reçu lors de l'appel au
2143processus "init" du script des bails. Le code de retour de Dnsmasq correspond
2144au code de retour du script plus 10.
2145
2146.SH LIMITES
2147Les valeurs par défaut pour les limites de ressources de Dnsmasq sont en général
2148conservatrices et appropriées pour des utilisations embarquées sur des machines
2149de type routeur ayant des processeurs lents et une mémoire limitée. Sur du
2150matériel plus performant, il est possible d'augmenter les limites et de gérer
2151plus de clients. Les remarques suivantes s'appliquent à Dnsmasq version 2.37 et
2152ultérieur : les versions précédentes ne montaient pas en charge aussi bien.
2153
2154.PP
2155Dnsmasq est capable de gérer le DNS et DHCP pour au moins un millier de clients.
Simon Kelley8ef5ada2010-06-03 19:42:45 +01002156Pour cela, la durée des bail ne doit pas être très courte (moins d'une heure).
2157La valeur de
Simon Kelley824af852008-02-12 20:43:05 +00002158.B --dns-forward-max
2159peut-être augmentée : commencer par la rendre égale au nombre de clients et
2160l'augmenter si le DNS semble lent. Noter que la performance du DNS dépends
2161également de la performance des serveurs amonts. La taille du cache DNS peut-
2162être augmentée : la limite en dur est de 10000 entrées et la valeur par défaut
2163(150) est très basse. Envoyer un signal SIGUSR1 à Dnsmasq le fait émettre des
2164informations utiles pour paramétrer la taille de cache. Voir la section
2165.B NOTES
2166pour plus de détails.
2167.PP
2168Le serveur TFTP intégré est capable de plusieurs transferts de fichiers
2169simultanés : La limite absolue est liée au nombre maximal de descripteurs de
2170fichiers alloué à un processus et à la capacité de l'appel système select() à
2171gérer un grand nombre de HANDLE de fichier. Si la limite est fixée trop haut par
2172le biais de
2173.B --tftp-max
2174elle sera réduite et la limite actuelle sera enregistrée au démarrage. Il faut
2175noter que plus de transferts sont possible lorsque le même fichier est transmis
2176au lieu d'avoir un fichier différent pour chaque transfert.
2177
2178.PP
2179Il est possible d'utiliser Dnsmasq pour bloquer la publicité sur la toile
2180en associant des serveurs de publicité bien connus à l'adresse 127.0.0.1 ou
21810.0.0.0 par le biais du fichier
2182.B /etc/hosts
2183ou d'un fichier d'hôte additionnel. Cette liste peut-être très longue, Dnsmasq
2184ayant été testé avec succès avec un million de noms. Cette taille de fichier
2185nécessite un processeur à 1 Ghz et environ 60 Mo de RAM.
2186
Simon Kelley316e2732010-01-22 20:16:09 +00002187.SH INTERNATIONALISATION
2188Dnsmasq peut être compilé pour supporter l'internationalisation. Pour cela,
2189les cibles "all-i18n" et "install-i18n" doivent être données à make, en lieu
2190et place des cibles standards "all" et "install". Lorsque compilé avec le
2191support de l'internationalisation, dnsmasq supporte les noms de domaines
2192internationalisés ("internationalised domain names" ou IDN), et les messages de
2193traces ("logs") sont écrits dans la langue locale. Les noms de domaines dans
2194/etc/hosts, /etc/ethers et /etc/dnsmasq.conf contenant des caractères
2195non-ASCII seront transformés selon la représentation punycode interne
2196aux DNS. Veuillez noter que dnsmasq détermine la langue pour les messages
2197ainsi que le jeu de caractères susceptible d'être utilisé dans les fichiers
2198de configuration à partir de la variable d'environnement LANG. Ceci devrait
2199être configuré à la valeur par défaut du système par les scripts démarrant
2200dnsmasq. Lorsque les fichiers de configuration sont édités, veuillez faire
2201attention à le faire en utilisant la valeur de locale par défaut du système
2202et non une valeur spécifique à l'utilisateur, puisque dnsmasq n'a aucun
2203moyen de déterminer directement la valeur de jeu de caractère utilisé,
2204et assume de ce fait qu'il s'agit de la valeur par défaut du système.
2205
Simon Kelley824af852008-02-12 20:43:05 +00002206.SH FICHIERS
2207.IR /etc/dnsmasq.conf
2208
2209.IR /usr/local/etc/dnsmasq.conf
Simon Kelley28866e92011-02-14 20:19:14 +00002210.IR /var/run/dnsmasq/resolv.conf
2211.IR /etc/ppp/resolv.conf
2212.IR /etc/dhcpc/resolv.conf
Simon Kelley824af852008-02-12 20:43:05 +00002213
2214.IR /etc/resolv.conf
2215
2216.IR /etc/hosts
2217
2218.IR /etc/ethers
2219
2220.IR /var/lib/misc/dnsmasq.leases
2221
2222.IR /var/db/dnsmasq.leases
2223
2224.IR /var/run/dnsmasq.pid
2225.SH VOIR AUSSI
2226.BR hosts (5),
2227.BR resolver (5)
2228.SH AUTEUR
2229Cette page de manuel a été écrite par Simon Kelley <simon@thekelleys.org.uk>.
2230
2231La traduction dans un français bancal a été commise par Gildas Le Nadan
2232<3ntr0p13@gmail.com> : Toute révision/correction permettant de corriger
2233orthographe ou grammaire mais surtout les éventuelles fautes de sens sera la
2234bienvenue!