Dnsmasq - Un serveur DHCP et cache DNS poids-plume.
dnsmasq [OPTION]...
dnsmasq est un serveur à faible empreinte mémoire faisant
DNS, TFTP, PXE, annonces de routeurs et DHCP. Il offre à la fois les
services DNS et DHCP pour un réseau local (LAN).
Dnsmasq accepte les requêtes DNS et y répond soit en utilisant un
petit cache local, soit en effectuant une requête à un serveur
DNS récursif externe (par exemple celui de votre fournisseur
d'accès internet). Il charge le contenu du fichier /etc/hosts afin que
les noms locaux n'apparaissant pas dans les DNS globaux soient tout de
même résolus, et assure également la résolution de
nom pour les hôtes présents dans le service DHCP. Il peut aussi
agir en temps que serveur DNS faisant autorité pour un ou plusieurs
domaines, permettant à des noms locaux d'apparaitre dans le DNS global.
Le serveur DHCP de Dnsmasq supporte les définitions d'adresses statiques
et les réseaux multiples. Il fournit par défaut un jeu
raisonnable de paramètres DHCP, et peut être configuré
pour fournir n'importe quelle option DHCP. Il inclut un serveur TFTP
sécurisé en lecture seule permettant le démarrage via le
réseau/PXE de clients DHCP et supporte également le protocole
BOOTP. Le support PXE est complet, et comprend un mode proxy permettant de
fournir des informations PXE aux clients alors que l'allocation d'adresse via
DHCP est effectuée par un autre serveur.
Le serveur DHCPv6 de dnsmasq possède non seulement les mêmes
fonctionnalités que le serveur DHCPv4, mais aussi le support des
annonces de routeurs ainsi qu'une fonctionnalité permettant l'addition
de ressources AAAA pour des clients utilisant DHCPv4 et la configuration IPv6
sans état (stateless autoconfiguration). Il inclut le support
d'allocations d'adresses (à la fois en DHCPv6 et en annonces de
routeurs - RA) pour des sous-réseaux dynamiquement
délégués via une délégation de
préfixe DHCPv6.
Dnsmasq est développé pour de petits systèmes
embarqués. Il tend à avoir l'empreinte mémoire la plus
faible possible pour les fonctions supportées, et permet d'exclure les
fonctions inutiles du binaire compilé.
Notes : Il est possible d'utiliser des options sans leur donner de
paramètre. Dans ce cas, la fonction correspondante sera
désactivée. Par exemple
--pid-file= (sans
paramètre après le =) désactive l'écriture du
fichier PID. Sur BSD, à moins que le logiciel ne soit compilé
avec la bibliothèque GNU getopt, la forme longue des options ne
fonctionne pas en ligne de commande; elle est toujours supportée dans
le fichier de configuration.
- --test
- Vérifie la syntaxe du ou des fichiers de
configuration. Se termine avec le code de retour 0 si tout est OK, ou un
code différent de 0 dans le cas contraire. Ne démarre pas
Dnsmasq.
- -w, --help
- Affiche toutes les options de ligne de commande. --help
dhcp affiche les options de configuration connues pour DHCPv4, et
--help dhcp6 affiche les options de configuration connues pour
DHCPv6.
- -h, --no-hosts
- Ne pas charger les noms d'hôtes du fichier
/etc/hosts.
- -H, --addn-hosts=<fichier>
- Fichiers d'hôtes additionnels. Lire le fichier
spécifié en plus de /etc/hosts. Si -h est
spécifié, lire uniquement le fichier spécifié.
Cette option peut être répétée afin d'ajouter
d'autres fichiers. Si un répertoire est donné, lis les
fichiers contenus dans ce répertoire.
- -E, --expand-hosts
- Ajoute le nom de domaine aux noms simples (ne contenant pas
de point dans le nom) contenus dans le fichier /etc/hosts, de la
même façon que pour le service DHCP. Notez que cela ne
s'applique pas aux noms de domaine dans les CNAME, les enregistrements
PTR, TXT, etc...
- -T, --local-ttl=<durée>
- Lorsque Dnsmasq répond avec une information
provenant du fichier /etc/hosts ou avec un bail DHCP, il donne un temps de
vie (time-to-live) positionné à zéro, afin d'indiquer
à la machine faisant la requête que celle-ci ne doit pas
être mise dans un cache. Ceci est le comportement correct dans
presque toutes les situations. Cette option permet de spécifier la
valeur de time-to-live à retourner (en secondes). Cela permet de
réduire la charge sur le serveur, mais les clients risquent
d'utiliser des données périmées dans certains
cas.
- --neg-ttl=<durée>
- Les réponses négatives provenant des serveurs
amonts contiennent normalement une information de durée de vie
(time-to-live) dans les enregistrements SOA, information dont dnsmasq se
sert pour mettre la réponse en cache. Si la réponse du
serveur amont omet cette information, dnsmasq ne cache pas la
réponse. Cette option permet de donner une valeur de durée
de vie par défaut (en secondes) que dnsmasq utilise pour mettre les
réponses négatives dans son cache, même en l'absence
d'enregistrement SOA.
- --max-ttl=<durée>
- Définie la valeur de TTL maximum qui sera fournie
aux clients. La valeur maximum de TTL spécifiée sera fournie
aux clients en remplacement de la vraie valeur de TTL si cette
dernière est supérieure. La valeur réelle de TTL est
cependant conservée dans le cache afin d'éviter de saturer
les serveurs DNS en amont.
- --max-cache-ttl=<durée>
- Définie la valeur de TTL maximum pour les
entrées dans le cache
- --auth-ttl=<durée>
- Définie la valeur de TTL retournée pour les
réponses du serveur faisant autorité.
- -k, --keep-in-foreground
- Ne pas aller en tâche de fond au lancement, mais en
dehors de cela, fonctionner normalement. Ce mode est prévu pour les
cas où Dnsmasq est lancé par daemontools ou launchd.
- -d, --no-daemon
- Mode debug (déverminage) : ne pas aller en
tâche de fond, ne pas écrire de fichier pid, ne pas changer
d'identifiant utilisateur, générer un état complet du
cache lors de la réception d'un signal SIGUSR1, envoyer les logs
sur la sortie standard d'erreur ("stderr") de même que
dans le syslog, ne pas créer de processus fils pour traiter les
requêtes TCP. A noter que cette option est à user pour du
déverminage seulement : pour empêcher dnsmasq se fonctionner
en mode démon en production, utiliser -k.
- -q, --log-queries
- Enregistrer les résultats des requêtes DNS
traitées par Dnsmasq dans un fichier de traces ("logs").
Active la génération d'un état complet du cache lors
de la réception d'un signal SIGUSR1.
- -8, --log-facility=<facility>
- Définit la "facility" dans laquelle
Dnsmasq enverra ses entrées syslog, par défaut DAEMON ou
LOCAL0 si le mode debug est activé. Si la "facility"
contient au moins un caractère "/", alors Dnsmasq
considère qu'il s'agit d'un fichier et enverra les logs dans le
fichier correspondant à la place du syslog. Si la
"facility" est '-', alors dnsmasq envoie les logs sur la sortie
d'erreur standard stderr. (Les erreurs lors de la lecture de la
configuration vont toujours vers le syslog, mais tous les messages
postérieurs à un démarrage réussi seront
exclusivement envoyés vers le fichier de logs). Lorsque Dnsmasq est
configuré pour envoyer ses traces vers un fichier, la
réception d'un signal SIGUSR2 entraine la fermeture et
réouverture du fichier. Cela permet la rotation de fichiers de
traces sans nécessiter l'arrêt de Dnsmasq.
- --log-async[=<lignes>]
- Permet l'envoi de traces de manière asynchrone, et
de manière optionnelle, le nombre de lignes devant être
mises dans la file d'attente par Dnsmasq lorsque l'écriture vers le
syslog est lente. Dnsmasq peut envoyer ses logs de manière
asynchrone : cela lui permet de continuer à fonctionner sans
être bloqué par le syslog, et permet à syslog
d'utiliser Dnsmasq pour les résolutions DNS sans risque
d'interblocage. Si la file d'attente devient pleine, Dnsmasq loggera le
dépassement de file et le nombre de messages perdus. La longueur
par défaut de la file d'attente est de 5 et une valeur saine sera
comprise entre 5 et 25, avec une limite maximum imposée de
100.
- -x, --pid-file=<chemin>
- Spécifie un fichier dans lequel stocker le
numéro de processus (pid). La valeur par défaut est
/var/run/dnsmasq.pid.
- -u, --user=<nom d'utilisateur>
- Spécifie l'identité (nom d'utilisateur) prise
par Dnsmasq après le démarrage. Dnsmasq doit normalement
être démarré en temps que root
("super-utilisateur"), mais abandonne ses privilèges
après le démarrage en changeant d'identité.
Normalement cet utilisateur est l'utilisateur nobody
("personne"), mais il est possible d'en définir un autre
par le biais de ce paramètre.
- -g, --group=<nom de groupe>
- Spécifie le groupe sous lequel Dnsmasq
s'exécute. Par défaut, il s'agit du groupe "dip",
afin de faciliter l'accès au fichier /etc/ppp/resolv.conf qui n'est
en général pas en lecture par tout le monde.
- -v, --version
- Imprime le numéro de version.
- -p, --port=<port>
- Ecoute sur le port numéro <port> au lieu du
port DNS standard (53). Paramétrer cette valeur à
zéro désactive complètement la fonction DNS pour ne
laisser actif que le DHCP ou le TFTP.
- -P, --edns-packet-max=<taille>
- Spécifie la taille maximum de paquet UDP EDNS.0
supporté par le relai DNS. Le défaut est de 4096, qui est la
valeur recommandée dans la RFC5625.
- -Q, --query-port=<numéro de port>
- Envoie et écoute les requêtes DNS sortantes
depuis le port UDP spécifié par <numéro de
port>, et non sur un port aléatoire. NOTE : Cette option rends
dnsmasq moins sûr contre les attaques par usurpation DNS ("DNS
spoofing"), mais cela peut permettre d'utiliser moins de ressources
et d'être plus rapide. Donner une valeur de zéro à
cette option restaure le comportement par défaut présent
dans les versions de dnsmasq inférieures à 2.43 qui consiste
à n'allouer qu'un seul port alloué par le système
d'exploitation.
- --min-port=<port>
- Ne pas utiliser de port dont le numéro est
inférieur à la valeur donnée en paramètre pour
les requêtes DNS sortantes. Dnsmasq choisis un port source
aléatoire pour les requêtes sortantes : lorsque cette option
est fournie, les ports utilisés seront toujours au dessus de la
valeur spécifiée. Utile pour des systèmes
derrière des dispositifs garde-barrières
("firewalls").
- -i, --interface=<nom d'interface>
- N'écouter que sur l'interface réseau
spécifiée. Dnsmasq ajoute automatiquement l'interface locale
("loopback") à la liste des interfaces lorsque l'option
--interface est utilisée. Si aucune option
--interface ou --listen-address n'est donnée, Dnsmasq
écoutera sur toutes les interfaces disponibles sauf celle(s)
spécifiée(s) par l'option --except-interface. Les
alias d'interfaces IP (par exemple "eth1:0") ne peuvent
être utilisés ni avec --interface ni
--except-interface. Utiliser l'option --listen-address
à la place. Un simple joker, consistant en un '*' final, peut
être utilisé dans les options --interface et
--except-interface
- -I, --except-interface=<interface name>
- Ne pas écouter sur l'interface
spécifiée. Notez que l'ordre dans lesquelles les options
--listen-address , --interface et --except-interface
sont fournies n'importe pas, et que l'option --except-interface
l'emporte toujours sur les autres.
- --auth-server=<domaine>,<interface>|<adresse
IP>
- Active le mode DNS faisant autorité pour les
requêtes arrivant sur cette interface ou sur cette adresse. Noter
que l'interface ou l'adresse n'ont pas besoin d'être
mentionnées ni dans --interface ni dans
--listen-address En effet, --auth-server va passer outre
ceux-ci et fournir un service DNS différent sur l'interface
spécifiée. La valeur de <domaine> est l'enregistrement
de type "colle" ("glue record"). Il doit correspondre
dans le service DNS global avec un enregistrement de type A et/ou AAAA
pointant sur l'adresse sur laquelle dnsmasq écoute pour le mode DNS
faisant autorité.
- -2, --no-dhcp-interface=<nom d'interface>
- Ne pas fournir de service DHCP sur l'interface
spécifiée, mais fournir tout de même le service
DNS.
- -a, --listen-address=<adresse IP>
- Ecouter sur la ou les adresse(s) IP
spécifiée(s). Les options --interface et
--listen-address peuvent être spécifiées
simultanément, auquel cas un jeu d'interfaces et d'adresses seront
utilisées. Notez que si aucune option --interface n'est
donnée alors qu'une option --listen-address l'est, Dnsmasq
n'écoutera pas automatiquement sur l'interface locale
("loopback"). Pour activer l'écoute sur l'interface
locale, il est alors nécessaire de fournir explicitement son
adresse IP, 127.0.0.1 via l'option --listen-address.
- -z, --bind-interfaces
- Sur les systèmes qui le supportent, Dnsmasq
s'associe avec l'interface joker ("wildcard"), même
lorsqu'il ne doit écouter que sur certaines interfaces. Par la
suite, il rejette les requêtes auxquelles il ne doit pas
répondre. Cette situation présente l'avantage de fonctionner
même lorsque les interfaces vont et viennent ou changent
d'adresses. L'option --bind-interfaces force Dnsmasq à ne
réellement s'associer qu'avec les interfaces sur lesquelles il doit
écouter. L'un des seuls cas où cette option est utile est
celui où un autre serveur de nom (ou une autre instance de Dnsmasq)
tourne sur la même machine. Utiliser cette option permet
également d'avoir plusieurs instances de Dnsmasq fournissant un
service DHCP sur la même machine.
- --bind-dynamic
- Autorise un mode réseau intermédiaire entre
--bind-interfaces et le mode par défaut. Dnsmasq s'associe
à une seule interface, ce qui permet plusieurs instances de
dnsmasq, mais si une interface ou adresse apparaissent, il se mettra
automatiquement à écouter sur celles-ci (les règles
de contrôle d'accès s'appliquent). De fait, les interfaces
créées dynamiquement fonctionnent de la même
façon que dans le comportement par défaut. Ce fonctionnement
nécessite des APIs réseau non standard et n'est disponible
que sous Linux. Sur les autres plateformes, le fonctionnement est celui du
mode --bind-interfaces.
- -y, --localise-queries
- Retourne des réponses aux requêtes DNS
dépendantes de l'interface sur laquelle la requête a
été reçue, à partir du fichier /etc/hosts. Si
un nom dans /etc/hosts a plus d'une adresse associée avec lui, et
qu'une des adresses au moins est dans le même sous-réseau
que l'interface sur laquelle la requête a été
reçue, alors ne retourne que la(les) adresse(s) du
sous-réseau considéré. Cela permet d'avoir dans
/etc/hosts un serveur avec de multiples adresses, une pour chacune de ses
interfaces, et de fournir aux hôtes l'adresse correcte
(basée sur le réseau auquel ils sont attachés). Cette
possibilité est actuellement limitée à IPv4.
- -b, --bogus-priv
- Fausse résolution inverse pour les réseaux
privés. Toutes les requêtes DNS inverses pour des adresses
IP privées (192.168.x.x, etc...) qui ne sont pas trouvées
dans /etc/hosts ou dans le fichier de baux DHCP se voient
retournées une réponse "pas de tel domaine"
("no such domain") au lieu d'être transmises aux serveurs
de nom amont ("upstream server").
- -V, --alias=[<ancienne IP>]|[<IP de
début>-<IP de fin>],<nouvelle
IP>[,<masque>]
- Modifie les adresses IPv4 retournées par les
serveurs de nom amont; <ancienne IP> est remplacée par
<nouvelle IP>. Si le <masque> optionnel est fourni, alors
toute adresse correspondant à l'adresse <ancienne
IP>/<masque> sera réécrite. Ainsi par exemple
--alias=1.2.3.0,6.7.8.0,255.255.255.0 modifiera 1.2.3.56 en
6.7.8.56 et 1.2.3.67 en 6.7.8.67. Cette fonctionnalité correspond
à ce que les routeurs Cisco PIX appellent "bidouillage
DNS" ("DNS doctoring"). Si l'ancienne IP est donnée
sous la forme d'une gamme d'adresses, alors seules les adresses dans cette
gamme seront réécrites, et non le sous-réseau dans
son ensemble. Ainsi,
--alias=192.168.0.10-192.168.0.40,10.0.0.0,255.255.255.0 fait
correspondre 192.168.0.10->192.168.0.40 à
10.0.0.10->10.0.0.40
- -B, --bogus-nxdomain=<adresse IP>
- Transforme les réponses contenant l'adresse IP
fournie en réponses "pas de tel domaine" ("no such
domain"). Ceci a pour but de neutraliser la modification sournoise
mise en place par Verisign en septembre 2003, lorsqu'ils ont
commencé à retourner l'adresse d'un serveur web publicitaire
en réponse aux requêtes pour les noms de domaines non
enregistrés, au lieu de la réponse correcte
"NXDOMAIN". Cette option demande à Dnsmasq de retourner
la réponse correcte lorsqu'il constate ce comportement. L'adresse
retournée par Verisign en septembre 2003 est 64.94.110.11.
- -f, --filterwin2k
- Les dernières versions de windows font des
requêtes DNS périodiques auxquelles non seulement les
serveurs DNS publics ne peuvent donner de réponse, mais qui, de
surcroît, peuvent poser des problèmes en déclenchant
des connexions intempestives pour des liens réseaux avec des
connexions "à la demande". Fournir cette option active le
filtrage des requêtes de ce type. Les requêtes
bloquées sont les requêtes pour les entrées de type
SOA ou SRV, ainsi que les requêtes de type ANY avec des noms
possédant des caractères sous-lignés (requêtes
pour des serveurs LDAP).
- -r, --resolv-file=<fichier>
- Lis les adresses des serveurs de nom amont dans le fichier
de nom <fichier>, au lieu du fichier /etc/resolv.conf. Pour le
format de ce fichier, voir dans le manuel pour resolv.conf(5) les
entrées correspondant aux serveurs de noms (nameserver). Dnsmasq
peut lire plusieurs fichiers de type resolv.conf, le premier fichier
spécifié remplace le fichier par défaut, le contenu
des suivants est rajouté dans la liste des fichiers à
consulter. Seul le fichier ayant la dernière date de modification
sera chargé en mémoire.
- -R, --no-resolv
- Ne pas lire le contenu du fichier /etc/resolv.conf.
N'obtenir l'adresse des serveurs de nom amont que depuis la ligne de
commande ou le fichier de configuration de Dnsmasq.
- -1, --enable-dbus[=<nom de service>]
- Autoriser la mise à jour de la configuration de
Dnsmasq par le biais d'appel de méthodes DBus. Il est possible par
ce biais de mettre à jour l'adresse de serveurs DNS amont (et les
domaines correspondants) et de vider le cache. Cette option
nécessite que Dnsmasq soit compilé avec le support DBus. Si
un nom de service est fourni, dnsmasq fourni un service à ce nom,
plutôt qu'avec la valeur par défaut :
uk.org.thekelleys.dnsmasq
- -o, --strict-order
- Par défaut, Dnsmasq envoie les requêtes
à n'importe lequel des serveurs amonts dont il a connaissance tout
en essayant de favoriser les serveurs qu'il sait fonctionner. Cette option
force Dnsmasq à essayer d'interroger, pour chaque requête,
les serveurs DNS dans leur ordre d'apparition dans le fichier
/etc/resolv.conf.
- --all-servers
- Par défaut, lorsque dnsmasq a plus d'un serveur
amont disponible, il n'envoie les requêtes qu'à un seul
serveur. Spécifier cette option force dnsmasq à effectuer
ses requêtes à tous les serveurs disponibles. Le
résultat renvoyé au client sera celui fournit par le premier
serveur ayant répondu.
- --stop-dns-rebind
- Rejette (et enregistre dans le journal d'activité)
les adresses dans la gamme d'adresses IP privée (au sens RFC1918)
qui pourraient être renvoyées par les serveurs amonts suite
à une résolution de nom. Cela bloque les attaques cherchant
à détourner de leur usage les logiciels de navigation web
('browser') en s'en servant pour découvrir les machines
situées sur le réseau local.
- --rebind-localhost-ok
- Exclue 127.0.0/8 des vérifications de
réassociation DNS. Cette gamme d'adresses est retournée par
les serveurs Realtime Blackhole (RBL, utilisés dans la lutte contre
le spam), la bloquer peut entraîner des dysfonctionnements de ces
services.
- --rebind-domain-ok=[<domaine>]|[[/<domaine>/[<domaine>/]
- Ne pas détecter ni bloquer les actions de type
dns-rebind pour ces domaines. Cette option peut prendre comme valeur soit
un nom de domaine soit plusieurs noms de domaine entourés par des
'/', selon une syntaxe similaire à l'option --server, c-à-d
: --rebind-domain-ok=/domaine1/domaine2/domaine3/
- -n, --no-poll
- Ne pas vérifier régulièrement si le
fichier /etc/resolv.conf a été modifié.
- --clear-on-reload
- Lorsque le fichier /etc/resolv.conf est relu, ou si les
serveurs amonts sont configurés via DBus, vider le cache DNS. Cela
est utile si les nouveaux serveurs sont susceptibles d'avoir des
données différentes de celles stockées dans le
cache.
- -D, --domain-needed
- Indique à Dnsmasq de ne jamais transmettre en amont
de requêtes A ou AAAA pour des noms simples, c'est à dire ne
comprenant ni points ni nom de domaine. Si un nom n'est pas dans
/etc/hosts ou dans la liste des baux DHCP, alors une réponse de
type "non trouvé" est renvoyée.
- -S, --local,
--server=[/[<domaine>]/[domaine/]][<Adresse
IP>[#<port>][@<Adresse IP
source>|<interface>[#<port>]]]
- Spécifie directement l'adresse IP d'un serveur de
nom amont. Cette option ne supprime pas la lecture du fichier
/etc/resolv.conf : utiliser pour cela l'option -R . Si un ou
plusieurs nom(s) de domaine(s) optionnel(s) sont fournis, ce serveur sera
uniquement utilisé uniquement pour ce(s) domaine(s), et toute
requête concernant ce(s) domaine(s) sera adressée uniquement
à ce serveur. Cette option est destinée aux serveurs de nom
privés : si vous avez un serveur de nom sur votre réseau
ayant pour adresse IP 192.168.1.1 et effectuant la résolution des
noms de la forme xxx.internal.thekelleys.org.uk, alors -S
/internal.thekelleys.org.uk/192.168.1.1 enverra toutes les
requêtes pour les machines internes vers ce serveur de nom, alors
que toutes les autres requêtes seront adressées aux serveurs
indiqués dans le fichier /etc/resolv.conf. Une spécification
de nom de domaine vide, // possède le sens particulier de
"pour les noms non qualifiés uniquement",
c'est-à-dire les noms ne possédant pas de points. Un port
non standard peut être rajouté à la suite des
adresses IP en utilisant le caractère #. Plus d'une option
-S est autorisée, en répétant les domaines et
adresses IP comme requis.
Le domaine le plus spécifique l'emporte sur le domaine le moins
spécifique, ainsi : --server=/google.com/1.2.3.4
--server=/www.google.com/2.3.4.5 enverra les requêtes pour
*.google.com à 1.2.3.4, à l'exception des requêtes
*www.google.com, qui seront envoyées à 2.3.4.5.
L'adresse spéciale '#' signifie "utiliser les serveurs
standards", ainsi --server=/google.com/1.2.3.4
--server=/www.google.com/# enverra les requêtes pour
*.google.com à 1.2.3.4, à l'exception des requêtes
pour *www.google.com qui seront envoyées comme d'habitude
(c-à-d aux serveurs définis par défaut).
Il est également permis de donner une option -S avec un nom de
domaine mais sans adresse IP; Cela informe Dnsmasq que le domaine est
local et qu'il doit répondre aux requêtes le concernant
depuis les entrées contenues dans le fichier /etc/hosts ou les baux
DHCP, et ne doit en aucun cas transmettre les requêtes aux serveurs
amonts. local est synonyme de server ("serveur")
afin de rendre plus claire l'utilisation de cette option pour cet usage
particulier.
Les adresses IPv6 peuvent inclure un identifiant de zone sous la forme
%interface tel que par exemple fe80::202:a412:4512:7bbf%eth0.
La chaîne de caractères optionnelle suivant le
caractère @ permet de définir la source que Dnsmasq doit
utiliser pour les réponses à ce serveur de nom. Il doit
s'agir d'une des adresses IP appartenant à la machine sur laquelle
tourne Dnsmasq ou sinon la ligne sera ignorée et une erreur sera
consignée dans le journal des événements, ou alors
d'un nom d'interface. Si un nom d'interface est donné, alors les
requêtes vers le serveur de nom seront envoyées depuis cette
interface; si une adresse IP est donnée, alors l'adresse source de
la requête sera l'adresse en question. L'option query-port est
ignorée pour tous les serveurs ayant une adresse source
spécifiée, mais il est possible de la donner directement
dans la spécification de l'adresse source. Forcer les
requêtes à être émises depuis une interface
spécifique n'est pas possible sur toutes les plateformes
supportées par dnsmasq.
- -A, --address=/<domaine>/[domaine/]<adresse
IP>
- Spécifie une adresse IP à retourner pour
toute requête pour les domaines fournis en option. Les
requêtes pour ce(s) domaine(s) ne sont jamais transmises aux
serveurs amonts et reçoivent comme réponse l'adresse IP
spécifiée qui peut être une adresse IPv4 ou IPv6.
Pour donner à la fois une adresse IPv4 et une adresse IPv6 pour un
domaine, utiliser plusieurs options -A. Il faut noter que le
contenu du fichier /etc/hosts et de celui des baux DHCP supplante ceci
pour des noms individuels. Une utilisation courante de cette option est de
rediriger la totalité du domaine doubleclick.net vers un serveur
web local afin d'éviter les bannières publicitaires. La
spécification de domaine fonctionne de la même façon
que --server, avec la caractéristique supplémentaire
que /#/ coïncide avec tout domaine. Ainsi,
--address=/#/1.2.3.4 retournera 1.2.3.4 pour toute requête
n'ayant de réponse ni dans /etc/hosts, ni dans les baux DHCP, et
n'étant pas transmise à un serveur spécifique par le
biais d'une directive --server.
- --ipset=/<domaine>/[domaine/]<ipset>[,<ipset>]
- Obtient les adresses IP des domaines
spécifiés et les place dans les groupes d'IP netfilter
(ipset) indiqués. Domaines et sous-domaines sont résolus de
la même façon que pour --address. Ces groupes d'IP doivent
déjà exister. Voir ipset(8) pour plus de
détails.
- -m, --mx-host=<nom de l'hôte>[[,<nom du
MX>],<préférence>]
- Spécifie un enregistrement de type MX pour <nom
de l'hôte> retournant le nom donné dans <nom du MX>
(s'il est présent), ou sinon le nom spécifié dans
l'option --mx-target si elle est présente. Sinon retourne le
nom de la machine sur laquelle Dnsmasq tourne. La valeur par défaut
(spécifiée dans l'option --mx-target ) est utile dans
un réseau local pour rediriger les courriers électroniques
vers un serveur central. La valeur de préférence est
optionnelle et vaut par défaut 1 si elle n'est pas
spécifiée. Plus d'une entrée MX peut être
fournie pour un hôte donné.
- -t, --mx-target=<nom d'hôte>
- Spécifie la réponse par défaut fournie
par Dnsmasq pour les requêtes sur des enregistrements de type MX.
Voir --mx-host. Si --mx-target est donné mais pas de
--mx-host, alors Dnsmasq retourne comme réponse un
enregistrement MX contenant le nom d'hôte spécifié
dans l'option --mx-target pour toute requête concernant le
MX de la machine sur laquelle tourne Dnsmasq.
- -e, --selfmx
- Définit, pour toutes les machines locales, un MX
correspondant à l'hôte considéré. Les machines
locales sont celles définies dans le fichier /etc/hosts ou dans un
bail DHCP.
- -L, --localmx
- Définit, pour toutes les machines locales, un
enregistrement MX pointant sur l'hôte spécifié par
mx-target (ou la machine sur laquelle Dnsmasq tourne). Les machines
locales sont celles définies dans le fichier /etc/hosts ou dans un
bail DHCP.
- -W
--srv-host=<_service>.<_protocole>.[<domaine>],[<cible>[,<port>[,<priorité>[,<poids>]]]]
- Spécifie un enregistrement DNS de type SRV. Voir la
RFC2782 pour plus de détails. Si le champs <domaine> n'est
pas fourni, prends par défaut la valeur fournie dans l'option
--domain. La valeur par défaut pour le domaine est vide et
le port par défaut est 1, alors que les poids et priorités
par défaut sont 0. Attention lorsque vous transposez des valeurs
issues d'une configuration BIND : les ports, poids et priorités
sont dans un ordre différents. Pour un service/domaine
donné, plus d'un enregistrement SRV est autorisé et tous les
enregistrements qui coïncident sont retournés dans la
réponse.
- --host-record=<nom>[,<nom>....][<adresse
IPv4>],[<adresse IPv6>]
- Ajoute des enregistrements A, AAAA et PTR dans le DNS. Ceci
permet d'ajouter un ou plusieurs noms dans le DNS et de les associer
à des enregistrements IPv4 (A) ou IPv6 (AAAA). Un nom peut
apparaître dans plus d'une entrée host-record et de
fait être associé à plus d'une adresse. Seule la
première entrée créée l'enregistrement PTR
associée au nom. Ceci correspond à la même
règle que celle utilisée lors de la lecture du fichier
hosts. Les options host-record sont considérées lues
avant le fichier hosts, ainsi un nom apparaissant dans une option
host-record et dans le fichier hosts n'aura pas d'enregistrement PTR
associé à l'entrée dans le fichier hosts. A l'inverse
du fichier hosts, les noms ne sont pas étendus, même lorsque
l'option expand-hosts est activée. Les noms longs et les
noms courts peuvent apparaitre dans la même entrée
host-record, c-à-d
--host-record=laptop,laptop.thekelleys.org,192.168.0.1,1234::100
- -Y,
--txt-record=<nom>[[,<texte>],<texte>]
- Définit un enregistrement DNS de type TXT. La valeur
de l'enregistrement TXT est un ensemble de chaînes de
caractères, donc un nombre variable de chaînes de
caractères peuvent être spécifiées,
séparées par des virgules. Utilisez des guillemets pour
mettre une virgule dans une chaîne de caractères. Notez que
la longueur maximale pour une chaîne est de 255 caractères,
les chaînes plus longues étant découpées en
morceaux de 255 caractères de longs.
- --ptr-record=<nom>[,<cible>]
- Définit un enregistrement DNS de type PTR.
- --naptr-record=<nom>,<ordre>,<préférence>,<drapeaux>,<service>,<expr.
régulière>[,<remplacement>]
- Retourne un enregistrement de type NAPTR, tel que
spécifié dans le RFC3403.
- --cname=<cname>,<cible>
- Retourne un enregistrement de type CNAME qui indique que
<cname> est en réalité <cible>. Il existe des
contraintes importantes sur la valeur cible; il doit s'agir d'un nom DNS
qui est connu de dnsmasq via /etc/hosts (ou un fichier hôtes
additionnel), via DHCP, via interface--name ou par un autre
--cname. Si une cible ne satisfait pas ces critères, le
CNAME est ignoré. Le CNAME doit être unique, mais il est
autorisé d'avoir plus d'un CNAME pointant vers la même
cible.
- --dns-rr=<nom>,<numéro-RR>,[<données
hexadécimales>]
- Retourne un enregistrement DNS arbitraire. Le numéro
correspond au type d'enregistrement (qui est toujours de la classe C_IN).
La valeur de l'enregistrement est donnée dans les données
hexadécimales, qui peuvent être de la forme 01:23:45, 01 23
45,+012345 ou n'importe quelle combinaison.
- --interface-name=<nom>,<interface>
- Définit un enregistrement DNS associant le nom avec
l'adresse primaire sur l'interface donnée en argument. Cette option
spécifie un enregistrement de type A pour le nom donné en
argument de la même façon que s'il était
défini par une ligne de /etc/hosts, sauf que l'adresse n'est pas
constante mais dépendante de l'interface définie. Si
l'interface est inactive, non existante ou non configurée, une
réponse vide est fournie. Un enregistrement inverse (PTR) est
également créé par cette option, associant l'adresse
de l'interface avec le nom. Plus d'un nom peut être associé
à une interface donnée en répétant cette
option plusieurs fois; dans ce cas, l'enregistrement inverse pointe vers
le nom fourni dans la première instance de cette option.
- --synth-domain=<domaine>,<plage
d'adresses>[,<préfixe>]
- Créé des enregistrements A/AAAA ou PTR pour
une plage d'adresses. Les enregistrements utilisent l'adresse ainsi que
les points (ou les deux points dans le cas d'IPv6) remplacés par
des tirets.
Un exemple devrait rendre cela plus clair : La configuration
--synth-domain=thekelleys.org.uk,192.168.0.0/24,internal- permet de
retourner internal-192-168-0-56.thekelleys.org.uk lors d'une
requête sur l'adresse 192.168.0.56 et vice-versa pour la
requête inverse. La même logique s'applique pour IPv6, avec
la particularité suivante : les adresses IPv6 pouvant commencer par
'::', mais les noms DNS ne pouvant pas commencer par '-', si aucun
préfixe n'est donné, un zéro est ajouté en
début de nom. Ainsi, ::1 devient 0--1.
La plage d'adresses peut être de la forme <adresse
IP>,<adresse IP> ou <adresse IP>/<masque
réseau>
- --add-mac
- Ajoute l'adresse MAC du requêteur aux
requêtes DNS transmises aux serveurs amonts. Cela peut être
utilisé dans un but de filtrage DNS par les serveurs amonts.
L'adresse MAC peut uniquement être ajoutée si le
requêteur est sur le même sous-réseau que le serveur
dnsmasq. Veuillez noter que le mécanisme utilisé pour
effectuer cela (une option EDNS0) n'est pas encore standardisée,
aussi cette fonctionnalité doit être
considérée comme expérimentale. Notez
également qu'exposer les adresses MAC de la sorte peut avoir des
implications en termes de sécurité et de vie privée.
L'avertissement donné pour --add-subnet s'applique également
ici.
- --add-subnet[[=<longueur de préfixe
IPv4>],<longueur de préfixe IPv6>]
- Rajoute l'adresse de sous-réseau du requêteur
aux requêtes DNS transmises aux serveurs amonts. La quantité
d'adresses transmises dépend du paramètre longueur du
préfixe : 32 (ou 128 dans le cas d'IPv6) transmet la
totalité de l'adresse, 0 n'en transmet aucun mais marque
néanmoins la requête ce qui fait qu'aucun serveur amont ne
rajoutera d'adresse client. La valeur par défaut est zéro et
pour IPv4 et pour IPv6. A noter que les serveurs amonts peuvent
être configurés pour retourner des valeurs
différentes en fonction de cette information mais que le cache de
dnsmasq n'en tient pas compte. Si une instance de dnsmasq est
configurée de telle manière que des valeurs
différentes pourraient être rencontrées, alors le
cache devrait être désactivé.
- -c, --cache-size=<taille>
- Définit la taille du cache de Dnsmasq. La valeur par
défaut est de 150 noms. Définir une valeur de zéro
désactive le cache. Remarque: la taille importante du cache a un
impact sur les performances.
- -N, --no-negcache
- Désactive le "cache négatif". Le
"cache négatif" permet à Dnsmasq de se souvenir
des réponses de type "no such domain" fournies par les
serveurs DNS en amont et de fournir les réponses sans avoir
à retransmettre les requêtes aux serveurs amont.
- -0, --dns-forward-max=<nombre de
requêtes>
- Définit le nombre maximum de requêtes DNS
simultanées. La valeur par défaut est 150, ce qui devrait
être suffisant dans la majorité des configurations. La seule
situation identifiée dans laquelle cette valeur nécessite
d'être augmentée est lorsqu'un serveur web a la
résolution de nom activée pour l'enregistrement de son
journal des requêtes, ce qui peut générer un nombre
important de requêtes simultanées.
- --proxy-dnssec
- Un résolveur sur une machine cliente peut effectuer
la validation DNSSEC de deux façons : il peut effectuer
lui-même les opérations de chiffrements sur la
réponse reçue, ou il peut laisser le serveur récursif
amont faire la validation et positionner un drapeau dans la réponse
au cas où celle-ci est correcte. Dnsmasq n'est pas un validateur
DNSSEC, aussi il ne peut effectuer la validation comme un serveur de nom
récursif, cependant il peut retransmettre les résultats de
validation de ses serveurs amonts. Cette option permet l'activation de
cette fonctionnalité. Vous ne devriez utiliser cela que si vous
faites confiance aux serveurs amonts ainsi que le réseau entre
vous et eux. Si vous utilisez le premier mode DNSSEC, la validation
par le résolveur des clients, cette option n'est pas requise.
Dnsmasq retourne toujours toutes les données nécessaires par
un client pour effectuer la validation lui-même.
- --auth-zone=<domaine>[,<sous-réseau>[/<longueur
de préfixe>][,<sous-réseau>[/<longueur de
préfixe>].....]]
- Définie une zone DNS pour laquelle dnsmasq agit en
temps que serveur faisant autorité. Les enregistrements DNS
définis localement et correspondant à ce domaine seront
fournis. Les enregistrements A et AAAA doivent se situer dans l'un des
sous-réseaux définis, ou dans un réseau correspondant
à une plage DHCP (ce comportement peut être
désactivé par constructor-noauth: ). Le ou les
sous-réseaux sont également utilisé(s) pour
définir les domaines in-addr.arpa et ip6.arpa servant à
l'interrogation DNS inverse. Si la longueur de préfixe n'est pas
spécifiée, elle sera par défaut de 24 pour IPv4 et 64
pour IPv6. Dans le cas d'IPv4, la longueur du masque de réseau
devrait être de 8, 16 ou 24, sauf si en cas de mise en place d'une
délégation de la zone in-addr.arpa conforme au RFC
2317.
- --auth-soa=<numéro de
série>[,<mainteneur de zone
(hostmaster)>[,<rafraichissement>[,<nombre de
réessais>[,<expiration>]]]]
- Spécifie les champs de l'enregistrement de type SOA
(Start Of Authority) associé à une zone pour laquelle le
serveur fait autorité. A noter que cela est optionnel, les valeurs
par défaut devant convenir à la majorité des
cas.
- --auth-sec-servers=<domaine>[,<domaine>[,<domaine>...]]
- Spécifie un ou plusieurs serveur de nom secondaires
pour une zone pour laquelle dnsmasq fait autorité. Ces serveurs
doivent être configurés pour récupérer
auprès de dnsmasq les informations liées à la zone au
travers d'un transfert de zone, et répondre aux requêtes
pour toutes les zones pour lesquelles dnsmasq fait autorité.
- --auth-peer=<adresse IP>[,<adresse
IP>[,<adresse IP>...]]
- Spécifie la ou les adresses de serveurs secondaires
autorisés à initier des requêtes de transfert de zone
(AXFR) pour les zones pour lesquelles dnsmasq fait autorité. Si
cette option n'est pas fournie, les requêtes AXFR seront
acceptées pour tous les serveurs secondaires.
- --conntrack
- Lis le marquage de suivi de connexion Linux associé
aux requêtes DNS entrantes et positionne la même marque au
trafic amont utilisé pour répondre à ces
requêtes. Cela permet au trafic généré par
Dnsmasq d'être associé aux requêtes l'ayant
déclenché, ce qui est pratique pour la gestion de la bande
passante (accounting) et le filtrage (firewall). Dnsmasq doit pour cela
être compilé avec le support conntrack, le noyau doit
également inclure conntrack et être configuré pour
cela. Cette option ne peut pas être combinée avec
--query-port.
- -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>]
- -F,
--dhcp-range=[tag:<label>[,tag:<label>],][set:<label>],]<adresse
IPv6 de début>[,<adresse IPv6 de
fin>|constructor:<interface>][,<mode>][,<longueur de
préfixe>][,<durée de bail>]
-
Active le serveur DHCP. Les adresses seront données dans la plage
comprise entre <adresse de début> et <adresse de fin>
et à partir des adresses définies statiquement dans l'option
dhcp-host. Si une durée de bail est donnée, alors les
baux seront donnés pour cette durée. La durée de bail
est donnée en secondes, en minutes (exemple : 45m), en heures
(exemple : 1h) ou être la chaine de caractère
"infinite" pour une durée indéterminée. Si
aucune valeur n'est donnée, une durée de bail par
défaut de une heure est appliquée. La valeur minimum pour un
bail DHCP est de 2 minutes.
Pour les plages IPv6, la durée de bail peut être égale
au mot-clef "deprecated" (obsolète); Cela positionne la
durée de vie préférée envoyée dans les
baux DHCP ou les annonces routeurs à zéro, ce qui incite les
clients à utiliser d'autres adresses autant que possible, pour
toute nouvelle connexion, en préalable à la
renumérotation.
Cette option peut être répétée, avec
différentes adresses, pour activer le service DHCP sur plus d'un
réseau. Pour des réseaux directement connectés
(c'est-à-dire des réseaux dans lesquels la machine sur
laquelle tourne Dnsmasq possède une interface), le masque de
réseau est optionnel : Dnsmasq la déterminera à
partir de la configuration des interfaces.
Pour les réseaux pour lesquels le service DHCP se fait via un relais
DHCP ("relay agent"), Dnsmasq est incapable de déterminer
le masque par lui-même, aussi il doit être
spécifié, faute de quoi Dnsmasq essaiera de le deviner en
fonction de la classe (A, B ou C) de l'adresse réseau. L'adresse de
broadcast est toujours optionnelle.
Il est toujours possible d'avoir plus d'une plage DHCP pour un même
sous-réseau.
Pour IPv6, les paramètres sont légèrement
différents : au lieu d'un masque de réseau et d'une adresse
de broadcast, il existe une longueur de préfixe optionnelle. Si
elle est omise, la valeur par défaut est 64. À la
différence d'IPv4, la longueur de préfixe n'est pas
automatiquement déduite de la configuration de l'interface. La
taille minimale pour la longueur de préfixe est 64.
Pour IPv6 (et IPv6 uniquement), il est possible de définir les plages
d'une autre façon. Dans ce cas, l'adresse de départ et
l'adresse de fin optionnelle contiennent uniquement la partie
réseau (par exemple ::1) et sont suivies par
constructor:<interface>. Cela forme un modèle
décrivant comment construire la plage, à partir des adresses
assignées à l'interface. Par exemple
--dhcp-range=::1,::400,constructor:eth0
provoque la recherche d'adresses de la forme <réseau>::1 sur
eth0 et crée une plage allant de <réseau>::1 à
<réseau>:400. Si une interface est assignée à
plus d'un réseau, les plages correspondantes seront automatiquement
créées, rendues obsolètes puis supprimées
lorsque l'adresse est rendue obsolète puis supprimée. Le nom
de l'interface peut être spécifié avec un
caractère joker '*' final.
provoque la recherche d'adresses sur eth0 et crée une plage allant de
<réseau>::1 à <réseau>:400. Si
l'interface est assignée à plus d'un réseau, les
plages correspondantes seront respectivement automatiquement
créées, rendues obsolètes et supprimées
lorsque l'adresse est rendue obsolète et supprimée. Le nom
de l'interface peut être spécifié avec un
caractère joker '*' final. Les adresses autoconfigurées,
privées ou obsolètes ne conviennent pas.
Si une plage dhcp-range est uniquement utilisée pour du DHCP
sans-état ("stateless") ou de l'autoconfiguration sans
état ("SLAAC"), alors l'adresse peut être
indiquée sous la forme '::'
--dhcp-range=::,constructor:eth0
Il existe une variante de la syntaxe constructor: qui consiste en
l'utilisation du mot-clef constructor-noauth. Voir
--auth-zone pour des explications à ce sujet.
L'identifiant de label optionnel set:<label> fournie une
étiquette alphanumérique qui identifie ce réseau,
afin de permettre la fourniture d'options DHCP spécifiques à
chaque réseau. Lorsque préfixé par 'tag:', la
signification change, et au lieu de définir un label, il
définit le label pour laquelle la règle s'applique. Un seul
label peut- être défini mais plusieurs labels peuvent
coïncider.
Le mot clef optionnel <mode> peut être égal à
static ("statique") ce qui indique à Dnsmasq
d'activer le service DHCP pour le réseau spécifié,
mais de ne pas activer l'allocation dynamique d'adresses IP : Seuls les
hôtes possédant des adresses IP statiques fournies via
dhcp-host ou présentes dans le fichier /etc/ethers seront
alors servis par le DHCP. Il est possible d'activer un mode
"fourre-tout" en définissant un réseau statique
comportant uniquement des zéros, c'est à dire :
--dhcp=range=::,static Cela permet de retourner des réponses
à tous les paquets de type Information-request (requête
d'information) en mode DHCPv6 sans état sur le sous-réseau
configuré.
Pour IPv4, le <mode> peut est égal à proxy ,
auquel cas Dnsmasq fournira un service de DHCP proxy pour le
sous-réseau spécifié. (voir pxe-prompt et
pxe-service pour plus de détails).
Pour IPv6, le mode peut être une combinaison des valeurs ra-only,
slaac, ra-names, ra-stateless, off-link.
ra-only indique à dnsmasq de n'effectuer que des annonces de
routeur (Router Advertisement, RA) sur ce sous-réseau, et de ne pas
faire de DHCP.
slaac indique à dnsmasq d'effectuer des annonces de routeur
sur ce sous-réseau et de positionner dans celles-ci le bit A, afin
que les clients utilisent des adresses SLAAC. Lorsqu'utilisé
conjointement avec une plage DHCP ou des affectations statiques d'adresses
DHCP, les clients disposeront à la fois d'adresses DHCP
assignées et d'adresses SLAAC.
ra-stateless indique à dnsmasq d'effectuer des annonces de
routeur avec les bits 0 et A positionnés, et de fournir un service
DHCP sans état ("stateless"). Les clients utiliseront des
adresses SLAAC, et utiliseront DHCP pour toutes les autres informations de
configuration.
ra-names active un mode qui fourni des noms DNS aux hôtes
fonctionnant en double pile ("dual stack") et configurés
pour faire du SLAAC en IPv6. Dnsmasq utilise le bail IPv4 de l'hôte
afin de dériver le nom, le segment de réseau et l'adresse
MAC et assume que l'hôte disposera d'une adresse IPv6
calculée via l'algorithme SLAAC, sur le même segment de
réseau. Un ping est envoyé à l'adresse, et si une
réponse est obtenue, un enregistrement AAAA est rajouté dans
le DNS pour cette adresse IPv6. Veuillez-noter que cela n'arrive que pour
les réseaux directement connectés (et non ceux pour lesquels
DHCP se fait via relai), et ne fonctionnera pas si un hôte utilise
les "extensions de vie privée" ("privacy
extensions"). ra-names peut être combiné avec
ra-stateless et slaac.
off-link indique à dnsmasq d'annoncer le préfixe sans
le bit L (sur lien).
- -G, --dhcp-host=[<adresse
matérielle>][,id:<identifiant
client>|*][,set:<label>][,<adresse IP>][,<nom
d'hôte>][,<durée de bail>][,ignore]
- Spécifie les paramètres DHCP relatifs
à un hôte. Cela permet à une machine possédant
une adresse matérielle spécifique de se voir toujours
allouée les mêmes nom d'hôte, adresse IP et
durée de bail. Un nom d'hôte spécifié comme
ceci remplace le nom fourni par le client DHCP de la machine hôte.
Il est également possible d'omettre l'adresse matérielle et
d'inclure le nom d'hôte, auquel cas l'adresse IP et la durée
de bail s'appliqueront à toute machine se réclamant de ce
nom. Par exemple --dhcp-host=00:20:e0:3b:13:af,wap,infinite
spécifie à Dnsmasq de fournir à la machine d'adresse
matérielle 00:20:e0:3b:13:af le nom, et un bail de durée
indéterminée.
--dhcp-host=lap,192.168.0.199 spécifie à Dnsmasq
d'allouer toujours à la machine portant le nom lap l'adresse IP
192.168.0.199.
Les adresses allouées de la sorte ne sont pas contraintes à
une plage d'adresse spécifiée par une option --dhcp-range,
mais elles se trouver dans le même sous-réseau qu'une plage
dhcp-range valide. Pour les sous-réseaux qui n'ont pas besoin
d'adresses dynamiquement allouées, utiliser le mot-clef
"static" dans la déclaration de plage d'adresses
dhcp-range.
Il est possible d'utiliser des identifiants clients (appelés
"DUID client" dans le monde IPv6) plutôt que des adresses
matérielles pour identifier les hôtes, en préfixant
ceux-ci par 'id:'. Ainsi, --dhcp-host=id:01:02:03:04,.....
réfère à l'hôte d'identifiant 01:02:03:04. Il
est également possible de spécifier l'identifiant client
sous la forme d'une chaîne de caractères, comme ceci :
--dhcp-host=id:identifiantclientsousformedechaine,.....
Un seul dhcp-host peut contenir une adresse IPv4, une adresse IPv6,
ou les deux en même temps. Les adresses IPv6 doivent être
mises entre crochets comme suit : --dhcp-host=laptop,[1234::56] Les
adresses IPv6 peuvent ne contenir que la partie identifiant de client :
--dhcp-host=laptop,[::56] Dans ce cas, lorsque des plages dhcp sont
définies automatiquement par le biais de constructeurs, la partie
réseau correspondante est rajoutée à l'adresse.
A noter que pour le DHCP IPv6, l'adresse matérielle n'est pas
toujours disponible, bien que ce soit toujours le cas pour des clients
directement connectés (sur le même domaine de broadcast) ou
pour des clients utilisant des relais DHCP qui supportent la RFC 6939.
En DHCPv4, l'option spéciale id:* signifie : "ignorer tout
identifiant client et n'utiliser que l'adresse matérielle".
Cela est utile lorsqu'un client présente un identifiant client mais
pas les autres.
Si un nom apparaît dans /etc/hosts, l'adresse associée peut
être allouée à un bail DHCP mais seulement si une
option --dhcp-host spécifiant le nom existe par ailleurs.
Seul un nom d'hôte peut être donné dans une option
dhcp-host , mais les alias sont possibles au travers de
l'utilisation des CNAMEs. (Voir --cname ). Le mot clef
"ignore" ("ignorer") indique à Dnsmasq de ne
jamais fournir de bail DHCP à une machine. La machine peut
être spécifiée par son adresse matérielle, son
identifiant client ou son nom d'hôte. Par exemple
--dhcp-host=00:20:e0:3b:13:af,ignore Cela est utile lorsqu'un autre
serveur DHCP sur le réseau doit être utilisé par
certaines machines.
Le paramètre set:<identifiant réseau> permet de
définir un identifiant de réseau lorsque l'option dhcp-host
est utilisée. Cela peut servir à sélectionner des
options DHCP juste pour cet hôte. Plus d'un label peut être
fourni dans une directive dhcp-host (et dans cette seule directive).
Lorsqu'une machine coïncide avec une directive dhcp-host (ou une
impliquée par /etc/ethers), alors le label réservé
"known" ("connu") est associé. Cela permet
à Dnsmasq d'être configuré pour ignorer les
requêtes issus de machines inconnue
par le biais de --dhcp-ignore=tag:!known.
Les adresses ethernet (mais pas les identifiants clients) peuvent
être définies avec des octets joker, ainsi par exemple
--dhcp-host=00:20:e0:3b:13:*,ignore demande à Dnsmasq
d'ignorer une gamme d'adresses matérielles. Il est à noter
que "*" doit être précédé d'un
caractère d'échappement ou mis entre guillemets lorsque
spécifié en option de ligne de commande, mais pas dans le
fichier de configuration.
Les adresses matérielles coïncident en principe avec n'importe
quel type de réseau (ARP), mais il est possible de les limiter
à un seul type ARP en les précédant du type ARP (en
Hexadécimal) et de "-". Ainsi
--dhcp-host=06-00:20:e0:3b:13:af,1.2.3.4 coïncidera
uniquement avec des adresses matérielles Token-Ring, puisque le
type ARP pour une adresse Token-Ring est 6.
Un cas spécial, pour IPv4, correspond à l'inclusion d'une ou
plusieurs adresses matérielles, c-à-d :
--dhcp-host=11:22:33:44:55:66,12:34:56:78:90:12,192.168.0.2. Cela
permet à une adresse IP d'être associé à
plusieurs adresses matérielles, et donne à dnsmasq la
permission d'abandonner un bail DHCP attribué à l'une de ces
adresses lorsqu'une autre adresse dans la liste demande un bail. Ceci est
une opération dangereuse qui ne fonctionnera de manière
fiable que si une adresse matérielle est active à un moment
donné et dnsmasq n'a aucun moyen de s'assurer de cela. Cela est
utile, par exemple, pour allouer une adresse IP stable à un laptop
qui aurait à la fois une connexion filaire et sans-fil.
- --dhcp-hostsfile=<chemin>
- Lis les informations d'hôtes DHCP dans le fichier
spécifié. Si l'argument est un chemin vers un
répertoire, lis tous les fichiers de ce répertoire. Le
fichier contient des informations à raison d'un hôte par
ligne. Le format d'une ligne est la même que le texte fourni
à la droite sur caractère "=" dans l'option
--dhcp-host. L'avantage de stocker les informations sur les
hôtes DHCP dans ce fichier est que celles-ci peuvent être
modifiées sans recharger Dnsmasq; le fichier sera relu lorsque
Dnsmasq reçoit un signal SIGHUP.
- --dhcp-optsfile=<chemin>
- Lis les informations relatives aux options DHCP dans le
fichier spécifié. Si l'argument est un chemin vers un
répertoire, lis tous les fichiers de ce répertoire.
L'intérêt d'utiliser cette option est le même que
pour
--dhcp-hostsfile : le fichier spécifié sera rechargé
à la réception par dnsmasq d'un signal SIGHUP. Notez qu'il
est possible d'encoder l'information via --dhcp-boot en utilisant
les noms optionnels bootfile-name, server-ip-address et tftp-server. Ceci
permet d'inclure ces options dans un fichier
"dhcp-optsfile".DNSMASQ_SUPPLIED_HOSTNAME
- -Z, --read-ethers
- Lis les informations d'hôtes DHCP dans le fichier
/etc/ethers. Le format de /etc/ethers est une adresse matérielle
suivie, soit par un nom d'hôte, soit par une adresse IP sous la
forme de 4 chiffres séparés par des points. Lorsque lu par
Dnsmasq, ces lignes ont exactement le même effet que l'option
--dhcp-host contenant les mêmes informations. /etc/ethers
est relu à la réception d'un signal SIGHUP par Dnsmasq. Les
adresses IPv6 ne sont PAS lues dans /etc/ethers.
- -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>]]
- Spécifie des options différentes ou
supplémentaires pour des clients DHCP. Par défaut, Dnsmasq
envoie un ensemble standard d'options aux clients DHCP : le masque de
réseau et l'adresse de broadcast sont les mêmes que pour
l'hôte sur lequel tourne Dnsmasq, et le serveur DNS ainsi que la
route par défaut prennent comme valeur l'adresse de la machine sur
laquelle tourne Dnsmasq. (Des règles équivalentes
s'appliquent en IPv6). Si une option de nom de domaine a été
définie, son contenu est transmis. Cette option de configuration
permet de changer toutes ces valeurs par défaut, ou de
spécifier d'autres options. L'option DHCP à transmettre peut
être fournie sous forme d'un nombre décimal ou sous la forme
"option:<nom d'option>". Les nombres correspondants aux
options sont définis dans la RFC2132 et suivants. Les noms
d'options connus par Dnsmasq peuvent être obtenus via "Dnsmasq
--help dhcp". Par exemple, pour définir la route par
défaut à 192.168.4.4, il est possible de faire
--dhcp-option=3,192.168.4.4 ou --dhcp-option = option:router,
192.168.4.4 ou encore, pour positionner l'adresse du serveur de temps
à 192.168.0.4, on peut faire --dhcp-option = 42,192.168.0.4
ou --dhcp-option = option:ntp-server, 192.168.0.4 L'adresse 0.0.0.0
prends ici le sens "d'adresse de la machine sur laquelle tourne
Dnsmasq". Les types de données autorisées sont des
adresses IP sous la forme de 4 chiffres séparés par des
points, un nombre décimal, une liste de caractères
hexadécimaux séparés par des 2 points, ou une
chaîne de caractères. Si des labels optionnels sont fournis,
alors cette option n'est envoyée qu'aux réseaux dont tous
les labels coïncident avec ceux de la requête.
Un traitement spécial est effectué sur les chaînes de
caractères fournies pour l'option 119, conformément à
la RFC 3397. Les chaînes de caractères ou les adresses IP
sous forme de 4 chiffres séparés par des points
donnés en arguments de l'option 120 sont traités
conformément à la RFC 3361. Les adresses IP sous forme de 4
chiffres séparés par des points suivies par une barre
montante "/", puis une taille de masque sont encodés
conformément à la RFC 3442.
Les options IPv6 sont fournies en utilisant le mot-clef option6:
suivi par le numéro d'option ou le nom d'option. L'espace de
nommage des options IPv6 est disjoint de l'espace de nommage des options
IPv4. Les adresses IPv6 en option doivent être entourées de
crochets, comme par exemple :
--dhcp-option=option6:ntp-server,[1234::56]
Attention : aucun test n'étant fait pour vérifier que des
données d'un type adéquat sont envoyées pour un
numéro d'option donné, il est tout à fait possible de
persuader Dnsmasq de générer des paquets DHCP
illégaux par une utilisation incorrecte de cette option. Lorsque la
valeur est un nombre décimal, Dnsmasq doit déterminer la
taille des données. Cela est fait en examinant le numéro de
l'option et/ou la valeur, mais peut être évité en
rajoutant un suffixe d'une lettre comme suit : b = un octet, s = 2 octets,
i = 4 octets. Cela sert essentiellement pour des options
encapsulées de classes de vendeurs (voir plus bas), pour lesquelles
Dnsmasq ne peut déterminer la taille de la valeur. Les
données d'options consistant uniquement de points et de
décimaux sont interprétées par Dnsmasq comme des
adresses IP, et envoyées comme telles. Pour forcer l'envoi sous
forme de chaîne de caractère, il est nécessaire
d'utiliser des guillemets doubles. Par exemple, l'utilisation de l'option
66 pour fournir une adresse IP sous la forme d'une chaîne de
caractères comme nom de serveur TFTP, il est nécessaire de
faire comme suit : --dhcp-option=66,"1.2.3.4"
Les options encapsulées de classes de vendeurs peuvent être
aussi spécifiées (pour IPv4 seulement) en utilisant
--dhcp-option : par exemple
--dhcp-option=vendor:PXEClient,1,0.0.0.0 envoie l'option
encapsulée de classe de vendeur "mftp-address=0.0.0.0"
à n'importe quel client dont la classe de vendeur correspond
à "PXEClient". La correspondance pour les classes de
vendeur s'effectue sur des sous-chaînes de caractères (voir
--dhcp-vendorclass pour plus de détails). Si une option de
classe de vendeur (numéro 60) est envoyée par Dnsmasq, alors
cela est utilisé pour sélectionner les options
encapsulées, de préférence à toute option
envoyée par le client. Il est possible d'omettre
complètement une classe de vendeur :
--dhcp-option=vendor:,1,0.0.0.0 Dans ce cas l'option
encapsulée est toujours envoyée.
En IPv4, les options peuvent être encapsulées au sein d'autres
options : par exemple --dhcp-option=encap:175, 190, iscsi-client0
enverra l'option 175, au sein de laquelle se trouve l'option 190.
Plusieurs options encapsulées avec le même numéro
d'option seront correctement combinées au sein d'une seule option
encapsulée. Il n'est pas possible de spécifier encap: et
vendor: au sein d'une même option dhcp.
La dernière variante pour les options encapsulées est
"l'option de Vendeur identifiant le vendeur"
("Vendor-Identifying Vendor Options") telle que décrite
dans le RFC3925. Celles-ci sont spécifiées comme suit :
--dhcp-option=vi-encap:2, 10, text Le numéro dans la section
vi-encap: est le numéro IANA de l'entreprise servant à
identifier cette option. Cette forme d'encapsulation est également
supportée en IPv6.
L'adresse 0.0.0.0 n'est pas traitée de manière
particulière lorsque fournie dans une option
encapsulée.
- --dhcp-option-force=[tag:<label>,[tag:<label>]][encap:<option>,][vi-encap:<entreprise>,][vendor:[<classe_vendeur>],][<option>|option:<nom
d'option>],[<valeur>[,<valeur>]]
- Cela fonctionne exactement de la même façon
que --dhcp-option sauf que cette option sera toujours
envoyée, même si le client ne la demande pas dans la liste
de paramètres requis. Cela est parfois nécessaire, par
exemple lors de la fourniture d'options à PXELinux.
- --dhcp-no-override
- (IPv4 seulement) Désactive la réutilisation
des champs DHCP nom de serveur et nom de fichier comme espace
supplémentaire pour les options. Si cela est possible, dnsmasq
déplace les informations sur le serveur de démarrage et le
nom de fichier (fournis par 'dhcp-boot') en dehors des champs
dédiés à cet usage dans les options DHCP. Cet espace
supplémentaire est alors disponible dans le paquet DHCP pour
d'autres options, mais peut, dans quelques rares cas, perturber des
clients vieux ou défectueux. Cette option force le comportement
à l'utilisation des valeurs "simples et sûres"
afin d'éviter des problèmes dans de tels cas.
- --dhcp-relay=<adresse locale>,<adresse de
serveur>[,<interface]
- Configure dnsmasq en temps que relais DHCP. L'adresse
locale est une adresse allouée à l'une interface de la
machine sur laquelle tourne dnsmasq. Toutes les requêtes DHCP
arrivant sur cette interface seront relayées au serveur DHCP
distant correspondant à l'adresse de serveur indiquée. Il
est possible de relayer depuis une unique adresse locale vers
différents serveurs distant en spécifiant plusieurs fois
l'option dhcp-relay avec la même adresse locale et
différentes adresses de serveur. L'adresse de serveur doit
être sous forme numérique. Dans le cas de DHCPv6, l'adresse
de serveur peut être l'adresse de multicast ff05::1:3 correspondant
à tous les serveurs DHCP. Dans ce cas, l'interface doit être
spécifiée et ne peut comporter de caractère joker.
Elle sera utilisée pour indiquer l'interface à partir de
laquelle le multicast pourra atteindre le serveur DHCP.
Le contrôle d'accès pour les clients DHCP suivent les
mêmes règles que pour les serveurs DHCP : voir --interface,
--except-interface, etc. Le nom d'interface optionel dans l'option
dhcp-relay comporte une autre fonction : il contrôle l'interface
sur laquelle la réponse du serveur sera acceptée. Cela sert
par exemple dans des configurations à 3 interfaces : une à
partir de laquelle les requêtes sont relayées, une seconde
permettant de se connecter à un serveur DHCP, et une
troisième reliée à un réseau
non-sécurisé tel qu'internet. Cela permet d'éviter
l'arrivée de requêtes usurpées via cette
troisième interface.
Il est permis de configurer dnsmasq pour fonctionner comme serveur DHCP sur
certaines interfaces et en temps que relais sur d'autres. Cependant,
même s'il est possible de configurer dnsmasq de telle
manière qu'il soit à la fois serveur et relais pour une
même interface, cela n'est pas supporté et la fonction de
relais prendra le dessus.
Le relais DHCPv4 et le relais DHCPv6 sont tous les deux supportés,
mais il n'est pas possible de relayer des requêtes DHCPv4 à
un serveur DHCPv6 et vice-versa.
- -U,
--dhcp-vendorclass=set:<label>,[enterprise:<numéro IANA
d'enterprise>,]<classe de vendeur>
-
Associe une chaîne de classe de vendeur à un label. La plupart
des clients DHCP fournissent une "classe de vendeur"
("vendor class") qui représente, d'une certaine
façon, le type d'hôte. Cette option associe des classes de
vendeur à des labels, de telle sorte que des options DHCP peuvent
être fournies de manière sélective aux
différentes classes d'hôtes. Par exemple,
dhcp-vendorclass=set:printers,Hewlett-Packard JetDirect ou
dhcp-vendorclass=printers,Hewlett-Packard JetDirect permet de
n'allouer des options qu'aux imprimantes HP de la manière suivante
: --dhcp-option=tag:printers,3,192.168.4.4 La chaîne de
caractères de la classe de vendeur fournie en argument est
cherchée en temps que sous-chaîne de caractères au
sein de la classe de vendeur fournie par le client, de façon
à permettre la recherche d'un sous-ensemble de la chaîne de
caractères ("fuzzy matching"). Le préfixe set: est
optionnel mais autorisé afin de conserver une certaine
homogénéité.
Notez qu'en IPv6 (et seulement en IPv6), les noms de classes de vendeurs
sont dans un espace de nom associé au numéro attribué
à l'entreprise par l'IANA. Ce numéro est fourni par le biais
du mot-clef enterprise: et seules les classes de vendeurs associées
au numéro spécifié seront cherchées.
- -j, --dhcp-userclass=set:<label>,<classe
utilisateur>
- Associe une chaîne de classe d'utilisateur à
un label (effectue la recherche sur des sous-chaînes, comme pour
les classes de vendeur). La plupart des clients permettent de configurer
une "classe d'utilisateur". Cette option associe une classe
d'utilisateur à un label, de telle manière qu'il soit
possible de fournir des options DHCP spécifiques à
différentes classes d'hôtes. Il est possible, par exemple,
d'utiliser ceci pour définir un serveur d'impression
différent pour les hôtes de la classe "comptes" et
ceux de la classe "ingénierie".
- -4, --dhcp-mac=set:<label>,<adresse
MAC>
- Associe une adresse matérielle (MAC) à un
label. L'adresse matérielle peut inclure des jokers. Par exemple
--dhcp-mac=set:3com,01:34:23:*:*:* permet de définir le
label "3com" pour n'importe quel hôte dont l'adresse
matérielle coïncide avec les critères
définis.
- --dhcp-circuitid=set:<label>,<identifiant de
circuit>, --dhcp-remoteid=set:<label>,<identifiant
distant>
- Associe des options de relais DHCP issus de la RFC3046
à des labels. Cette information peut être fournie par des
relais DHCP. L'identifiant de circuit ou l'identifiant distant est
normalement fourni sous la forme d'une chaîne de valeurs
hexadécimales séparées par des ":", mais il
est également possible qu'elle le soit sous la forme d'une simple
chaîne de caractères. Si l'identifiant de circuit ou d'agent
correspond exactement à celui fourni par le relais DHCP, alors le
label est apposé. dhcp-remoteid est supporté en IPv6
(mais non dhcp-circuitid).
- --dhcp-subscrid=set:<label>,<identifiant
d'abonné>
- (IPv4 et IPv6) Associe des options de relais DHCP issues de
la RFC3993 à des labels.
- --dhcp-proxy[=<adresse IP>]......
- (IPv4 seulement) Un agent relai DHCP normal est uniquement
utilisé pour faire suivre les éléments initiaux de
l'interaction avec le serveur DHCP. Une fois que le client est
configuré, il communique directement avec le serveur. Cela n'est
pas souhaitable si le relais rajoute des informations
supplémentaires aux paquets DHCP, telles que celles
utilisées dans dhcp-circuitid et dhcp-remoteid. Une
implémentation complète de relai peut utiliser l'option
serverid-override de la RFC 5107 afin de forcer le serveur DHCP à
utiliser le relai en temps que proxy complet, de sorte que tous les
paquets passent par le relai. Cette option permet d'obtenir le même
résultat pour des relais ne supportant pas la RFC 5107. Fournie
seule, elle manipule la valeur de server-id pour toutes les interactions
via des relais. Si une liste d'adresses IP est donnée, seules les
interactions avec les relais dont l'adresse est dans la liste seront
affectées.
- --dhcp-match=set:<label>,<numéro
d'option>|option:<nom
d'option>|vi-encap:<entreprise>[,<valeur>]
- Si aucune valeur n'est spécifiée, associe le
label si le client envoie une option DHCP avec le numéro ou le nom
spécifié. Lorsqu'une valeur est fournie, positionne le label
seulement dans le cas où l'option est fournie et correspond
à la valeur. La valeur peut être de la forme
"01:ff:*:02", auquel cas le début de l'option doit
correspondre (en respectant les jokers). La valeur peut aussi être
de la même forme que dans dhcp-option , auquel cas l'option
est traitée comme un tableau de valeur, et un des
éléments doit correspondre, ainsi
--dhcp-match=set:efi-ia32,option:client-arch,6
spécifie le label "efi-ia32" si le numéro 6
apparaît dnas la liste d'architectures envoyé par le client
au sein de l'option 93. (se référer au RFC 4578 pour plus de
détails). Si la valeur est un chaine de caractères, celle-ci
est recherchée (correspondance en temps que sous-chaîne).
Pour la forme particulière vi-encap:<numéro
d'entreprise>, la comparaison se fait avec les classes de vendeur
"identifiant de vendeur" ("vendor-identifying vendor
classes") pour l'entreprise dont le numéro est fourni en
option. Veuillez vous référer à la RFC 3925 pour plus
de détails.
- --tag-if=set:<label>[,set:<label>[,tag:<label>[,tag:<label>]]]
- Effectue une opération booléenne sur les
labels. Si tous les labels apparaissant dans la liste tag:<label>
sont positionnés, alors tous les la de la liste
"set:<labels>" sont positionnés (ou
supprimés, dans le cas où "tag:!<label>"
utilisé). Si aucun tag:<label> n'est spécifié,
alors tous les labels fournis par set:<label> sont
positionnés. N'importe quel nombre de set: ou tag: peuvent
être fournis, et l'ordre est sans importance. Les lignes tag-if
sont exécutées dans l'ordre, ce qui fait que si un label
dans tag:<label> est un label positionné par une rêgle
tag-if, la ligne qui positionne le label doit
précéder celle qui le teste.
- -J,
--dhcp-ignore=tag:<label>[,tag:<label>]
- Lorsque tous les labels fournis dans l'option sont
présents, ignorer l'hôte et ne pas donner de bail DHCP.
- --dhcp-ignore-names[=tag:<label>[,tag:<label>]]
- Lorsque tous les labels fournis dans l'option sont
présents, ignorer le nom de machine fourni par l'hôte. Il
est à noter que, à la différence de l'option
"dhcp-ignore", il est permis de ne pas fournir de label. Dans ce
cas, les noms d'hôtes fournis par les clients DHCP seront toujours
ignorés, et les noms d'hôtes seront ajoutés au DNS en
utilisant uniquement la configuration dhcp-host de Dnsmasq, ainsi que le
contenu des fichiers /etc/hosts et /etc/ethers.
- --dhcp-generate-names=tag:<label>[,tag:<label>]
- (IPv4 seulement) Générer un nom pour les
clients DHCP qui autrement n'en aurait pas, en utilisant l'adresse MAC
sous sa forme hexadécimale, séparée par des tirets.
Noter que si un hôte fourni un nom, celui-ci sera utilisé de
préférence au nom autogénéré, à
moins que --dhcp-ignore-names ne soit positionné.
- --dhcp-broadcast=[tag:<label>[,tag:<label>]]
- (IPv4 seulement) Lorsque tous les labels fournis dans
l'option sont présents, toujours utiliser le broadcast pour
communiquer avec l'hôte lorsque celui-ci n'est pas
configuré. Il est possible de ne spécifier aucun label,
auquel cas cette option s'applique inconditionnellement. La plupart des
clients DHCP nécessitant une réponse par le biais d'un
broadcast activent une option dans leur requête, ce qui fait que
cela se fait automatiquement, mais ce n'est pas le cas de certains vieux
clients BOOTP.
- -M, --dhcp-boot=[tag:<label>,]<nom de
fichier>,[<nom de serveur>[,<adresse de serveur>|<nom du
serveur tftp>]]
- (IPv4 seulement) Spécifie les options BOOTP devant
être retournées par le serveur DHCP. Le nom de serveur ainsi
que l'adresse sont optionnels : s'ils ne sont pas fournis, le nom est
laissé vide et l'adresse fournie est celle de la machine sur
laquelle s'exécute Dnsmasq. Si Dnsmasq fournit un service TFTP
(voir --enable-tftp ), alors seul un nom de fichier est requis ici
pour permettre un démarrage par le réseau. Si
d'éventuels labels sont fournis, ils doivent coïncider avec
ceux du client pour que cet élément de configuration lui
soit envoyé. Une adresse de serveur TFTP peut être
spécifiée à la place de l'adresse IP, sous la forme
d'un nom de domaine qui sera cherché dans le fichier /etc/hosts. Ce
nom peut être associé dans /etc/hosts avec plusieurs
adresses IP, auquel cas celles-ci seront utilisées tour à
tour (algorithme round-robin). Cela peut être utilisé pour
équilibrer la charge tftp sur plusieurs serveurs.
- --dhcp-sequential-ip
- Dnsmasq est conçu pour choisir l'adresse IP des
clients DHCP en utilisant un hachage de l'adresse MAC du client. Cela
permet en général à l'adresse IP du client de rester
stable au fil du temps, même lorsque le client laisse expirer son
bail DHCP de temps en temps. Dans ce mode de fonctionnement par
défaut, les adresses IP sont distribuées de façon
pseudo-aléatoire dans la totalité de la plage d'adresses
utilisable. Il existe des circonstances (par exemples pour du
déploiement de serveur) où il est plus pratique d'allouer
les adresses IP de manière séquentielle, en
commençant par la plus petite adresse disponible, et c'est ce mode
de fonctionnement qui est permis par cette option. Veuillez noter que dans
ce mode séquentiel, les clients qui laissent expirer leur bail ont
beaucoup plus de chance de voir leur adresse IP changer, aussi cette
option ne devrait pas être utilisée dans un cas
général.
- --dhcp-ignore-clid
- Dnsmasq lit l'option 'client identifier' (RFC 2131)
envoyée par les clients (si disponible) afin d'identifier les
clients. Cela permet de distribuer la même adresse IP à un
client utilisant plusieurs interfaces. Activer cette option
désactive la lecture du 'client identifier', afin de toujours
identifier un client en utilisant l'adresse MAC.
- --pxe-service=[tag:<label>,]<CSA>,<entrée
de menu>[,<nom de fichier>|<type de service de
démarrage>][,<adresse de serveur>|<nom de
serveur>]
- La plupart des ROMS de démarrage PXE ne permettent
au système PXE que la simple obtention d'une adresse IP, le
téléchargement du fichier spécifié dans
dhcp-boot et son exécution. Cependant, le système PXE
est capable de fonctions bien plus complexes pour peu que le serveur DHCP
soit adapté.
Ceci spécifie l'option de démarrage qui apparaitra dans un
menu de démarrage PXE. <CSA> est le type du système
client. Seuls des types de services valides apparaitront dans un menu. Les
types connus sont x86PC, PC98, IA64_EFI, Alpha, Arc_x86,
Intel_Lean_Client, IA32_EFI, BC_EFI, Xscale_EFI et X86-64_EFI; D'autres
types peuvent être spécifiés sous la forme d'une
valeur entière. Le paramètre après le texte
correspondant à l'entrée dans le menu peut être un
nom de fichier, auquel cas Dnsmasq agit comme un serveur de
démarrage et indique au client PXE qu'il faut
télécharger ce fichier via TFTP, soit depuis ce serveur
(l'option enable-tftp doit être spécifiée pour
que cela marche), soit depuis un autre serveur TFTP si une adresse ou un
nom de serveur est fournie. Veuillez noter que le suffixe de
"couche" (en principe ".0") est fourni par PXE et ne
doit pas être rajouté au nom de fichier. Si une valeur
numérique entière est fournir pour le type de
démarrage, en remplacement du nom de fichier, le client PXE devra
chercher un service de démarrage de ce type sur le réseau.
Cette recherche peut être faite via broadcast ou directement
auprès d'un serveur si son adresse IP ou son nom sont fournis dans
l'option. Si aucun nom de fichier n'est donné ni aucune valeur de
type de service de démarrage n'est fournie (ou qu'une valeur de 0
est donnée pour le type de service), alors l'entrée de menu
provoque l'interruption du démarrage par le réseau et la
poursuite du démarrage sur un média local. L'adresse de
serveur peut être donnée sous la forme de nom de domaine qui
est recherché dans /etc/hosts. Ce nom peut être
associé à plusieurs adresses IP, qui dans ce cas sont
utilisées à tour de rôle (en
"round-robin").
- --pxe-prompt=[tag:<label>,]<invite>[,<délai>]
- Cette option permet d'afficher une invite à la suite
du démarrage PXE. Si un délai est fourni, alors la
première entrée du menu de démarrage sera
automatiquement exécutée après ce délai. Si le
délai vaut 0, alors la première entrée disponible
sera exécutée immédiatement. Si pxe-prompt est
omis, le système attendra un choix de l'utilisateur s'il existe
plusieurs entrées dans le menu, ou démarrera
immédiatement dans le cas où il n'y a qu'une seule
entrée. Voir pxe-service pour plus de détails sur les
entrées de menu.
Dnsmasq peut servir de "proxy-DHCP" PXE, dans le cas où un
autre serveur DHCP sur le réseau est responsable de l'allocation
des adresses IP, auquel cas Dnsmasq se contente de fournir les
informations données dans les options pxe-prompt et
pxe-service pour permettre le démarrage par le
réseau. Ce mode est activé en utilisant le mot-clef
proxy dans dhcp-range.
- -X, --dhcp-lease-max=<nombre>
- Limite Dnsmasq à un maximum de <nombre> baux
DHCP. Le défaut est de 1000. Cette limite permet d'éviter
des attaques de déni de service ("DoS") par des
hôtes créant des milliers de baux et utilisant beaucoup de
mémoire dans le processus Dnsmasq.
- -K, --dhcp-authoritative
- Doit être spécifié lorsque dnsmasq est
réellement le seul serveur DHCP sur le réseau. Pour DHCPv4,
cela change le comportement par défaut qui est celui d'un strict
respect des RFC, afin que les requêtes DHCP pour des baux inconnus
par des hôtes inconnus ne soient pas ignorées. Cela permet
à de nouveaux hôtes d'obtenir des baux sans tenir compte de
fastidieuses temporisations ("timeout"). Cela permet
également à Dnsmasq de reconstruire sa base de
données contenant les baux sans que les clients n'aient besoin de
redemander un bail, si celle-ci est perdue. Dans le cas de DHCPv6, cela
positionne la priorité des réponses à 255 (le
maximum) au lieu de 0 (le minimum).
- --dhcp-alternate-port[=<port serveur>[,<port
client>]]
- (IPv4 seulement) Change les ports utilisés par
défaut pour le DHCP. Si cette option est donnée seule sans
argument, alors change les ports utilisés pour le DHCP de 67 et 68
respectivement à 1067 et 1068. Si un seul argument est
donné, ce numéro est utilisé pour le port serveur et
ce numéro plus 1 est utilisé pour le port client. Enfin, en
fournissant deux numéros de ports, il est possible de
spécifier arbitrairement 2 ports à la fois pour le serveur
et pour le client DHCP.
- -3, --bootp-dynamic[=<identifiant de
réseau>[,<identifiant de réseau>]]
- (IPv4 seulement) Permet l'allocation dynamique d'adresses
IP à des clients BOOTP. Utiliser cette option avec
précaution, une adresse allouée à un client BOOTP
étant perpétuelle, et de fait n'est plus disponibles pour
d'autres hôtes. Si aucun argument n'est donné, alors cette
option permet une allocation dynamique dans tous les cas. Si des arguments
sont spécifiés, alors l'allocation ne se fait que lorsque
tous les identifiants coïncident. Il est possible de
répéter cette option avec plusieurs jeux d'arguments.
- -5, --no-ping
- (IPv4 seulement) Par défaut, le serveur DHCP tente
de s'assurer qu'une adresse n'est pas utilisée avant de l'allouer
à un hôte. Cela est fait en envoyant une requête ICMP
de type "echo request" (aussi connue sous le nom de
"ping") à l'adresse en question. Si le serveur obtient
une réponse, alors l'adresse doit déjà être
utilisée et une autre est essayée. Cette option permet de
supprimer cette vérification. A utiliser avec
précaution.
- --log-dhcp
- Traces additionnelles pour le service DHCP : enregistre
toutes les options envoyées aux clients DHCP et les labels
utilisés pour la détermination de celles-ci.
- --quiet-dhcp, --quiet-dhcp6, --quiet-ra
- Supprime les logs des opérations de routine des
protocoles concernés. Les erreurs et les problèmes seront
toujours enregistrés. L'option --log-dhcp prends le pas sur
--quiet-dhcp et quiet-dhcp6.
- -l, --dhcp-leasefile=<chemin de fichier>
- Utilise le fichier dont le chemin est fourni pour stocker
les informations de baux DHCP.
- --dhcp-duid=<ID d'entreprise>,<uid>
- (IPv6 seulement) Spécifie le numéro d'UID de
serveur persistant que le serveur DHCPv6 doit utiliser. Cette option n'est
normalement pas requise, Dnsmasq créant un DUID automatiquement
lorsque cela est nécessaire. Lorsque cette option est
positionnée, elle fournit à Dnsmasq les données
nécessaires à la création d'un DUID de type DUID-EN.
Veuillez noter qu'une fois créé, le DUID est stocké
dans la base des baux, aussi changer entre un DUID créé
automatiquement et un DUID-EN et vice-versa impose de réinitialiser
la base de baux. Le numéro d'ID d'entreprise est assigné par
l'IANA, et l'uid est une chaine hexadécimale unique à chaque
serveur.
- -6 --dhcp-script=<chemin de fichier>
- Lorsqu'un bail DHCP est créé, qu'un ancien
est supprimé, ou qu'un transfert TFTP est terminé, le
fichier dont le chemin est spécifié est
exécuté. Le <chemin de fichier> doit être un
chemin absolu, aucune recherche n'est effectuée via la variable
d'environnement PATH. Les arguments fournis à celui-ci sont soit
"add" ("ajouter"), "old"
("ancien") ou "del" ("supprimer"), suivi de
l'adresse MAC de l'hôte (ou le DUID pour IPv6) puis l'adresse IP et
le nom d'hôte si celui-ci est connu."add" signifie qu'un
bail a été créé, "del" signifie
qu'il a été supprimé, "old" notifie que le
bail existait au lancement de Dnsmasq, ou un changement d'adresse MAC ou
de nom d'hôte pour un bail existant (ou, dans le cas où
leasefile-ro est spécifié, un changement de durée de
bail ou d'identifiant d'hôte). Si l'adresse Mac est d'un type de
réseau autre qu'ethernet, il est nécessaire de la
préceder du type de réseau, par exemple
"06-01:23:45:67:89:ab" pour du token ring. Le processus est
exécuté en temps que super-utilisateur (si Dnsmasq a
été lancé en temps que "root"), même
si Dnsmasq est configuré pour changer son UID pour celle d'un
utilisateur non-privilégié.
L'environnement est hérité de celui de l'invocation du
processus Dnsmasq, auquel se rajoute quelques unes ou toutes les variables
décrites ci-dessous :
Pour IPv4 et IPv6 :
DNSMASQ_DOMAIN si le nom de domaine pleinement qualifié de
l'hôte est connu, la part relative au domaine y est stockée.
(Notez que le nom d'hôte transmis comme argument au script n'est
jamais pleinement qualifié).
Si le client fournit un nom d'hôte, DNSMASQ_SUPPLIED_HOSTNAME.
Si le client fournit des classes d'utilisateur, DNSMASQ_USER_CLASS0 à
DNSMASQ_USER_CLASSn.
Si Dnsmasq a été compilé avec l'option HAVE_BROKEN_RTC
("horloge RTC défectueuse"), alors la durée du
bail (en secondes) est stockée dans la variable
DNSMASQ_LEASE_LENGTH, sinon la date d'expiration du bail est toujours
stocké dans la variable d'environnement DNSMASQ_LEASE_EXPIRES. Le
nombre de secondes avant expiration est toujours stocké dans
DNSMASQ_TIME_REMAINING.
Si un bail était associé à un nom d'hôte et que
celui-ci est supprimé, un évênement de type
"old" est généré avec le nouveau statut du
bail, c-à-d sans nom d'hôte, et le nom initial est fourni
dans la variable d'environnement DNSMASQ_OLD_HOSTNAME.
La variable DNSMASQ_INTERFACE contient le nom de l'interface sur laquelle la
requête est arrivée; ceci n'est pas renseigné dans le
cas des actions "old" ayant lieu après un
redémarrage de dnsmasq.
La variable DNSMASQ_RELAY_ADDRESS est renseignée si le client a
utilisé un relai DHCP pour contacter Dnsmasq, si l'adresse IP du
relai est connue.
DNSMASQ_TAGS contient tous les labels fournis pendant la transaction DHCP,
séparés par des espaces.
DNSMASQ_LOG_DHCP est positionné si --log-dhcp est
activé.
Pour IPv4 seulement :
DNSMASQ_CLIENT_ID, si l'hôte a fourni un identifiant de client.
DNSMASQ_CIRCUIT_ID, DNSMASQ_SUBSCRIBER_ID, DNSMASQ_REMOTE_ID si un relai
DHCP a rajouté l'une de ces options.
Si le client fournit une information de classe de vendeur,
DNSMASQ_VENDOR_CLASS.
Pour IPv6 seulement :
Si le client fournit une classe de vendeur (vendor-class), positionne
DNSMASQ_VENDOR_CLASS_ID avec comme contenu le numéro IANA de
l'entreprise pour la classe, et
DNSMASQ_VENDOR_CLASS0..DNSMASQ_VENDOR_CLASSn pour les données.
DNSMASQ_SERVER_DUID contient le DUID du serveur : cette valeur est la
même pour chaque appel au script.
DNSMASQ_IAID contenant l'IAID pour le bail. Si le bail est une allocation
temporaire, cela est préfixé par le caractère 'T'.
DNSMASQ_MAC contient l'adresse MAC du client, si celle-ci est connue.
A noter que le nom d'hôte fourni, la classe de vendeur ou les
données de classe d'utilisateur sont uniquement fournies pour les
actions "add" ou l'action "old" lorsqu'un hôte
reprend un bail existant, puisque ces informations ne sont pas
conservées dans la base de baux de dnsmasq.
Tous les descripteurs de fichiers sont fermés, sauf stdin, stdout et
stderr qui sont ouverts sur /dev/null (sauf en mode déverminage).
Le script n'est pas lancé de manière concurrente : au plus une
instance du script est exécutée à la fois (dnsmasq
attend qu'une instance de script se termine avant de lancer la suivante).
Les changements dans la base des baux nécessitant le lancement du
script sont placé en attente dans une queue jusqu'à
terminaison d'une instance du script en cours. Si cette mise en queue fait
que plusieurs changements d'états apparaissent pour un bail
donné avant que le script puisse être lancé, alors
les états les plus anciens sont supprimés et lorsque le
script sera finalement lancé, ce sera avec l'état courant du
bail.
Au démarrage de Dnsmasq, le script sera invoqué pour chacun
des baux existants dans le fichier des baux. Le script sera lancé
avec l'action "del" pour les baux expirés, et
"old" pour les autres. Lorsque Dnsmasq reçoit un signal
HUP, le script sera invoqué avec une action "old" pour
tous les baux existants.
Il existe deux autres actions pouvant apparaître comme argument au
script : "init" et "tftp". D'autres sont susceptibles
d'être rajoutées dans le futur, aussi les scripts devraient
être écrits de sorte à ignorer les actions inconnues.
"init" est décrite ci-dessous dans --leasefile-ro.
L'action "tftp" est invoquée lorsqu'un transfert de
fichier TFTP s'est terminé. Ses arguments sont la taille du fichier
en octets, l'adresse à laquelle le fichier a été
envoyé, ainsi que le chemin complet du fichier.
- --dhcp-luascript=<chemin>
- Spécifie un script écrit en Lua, devant
être exécuté lorsque des baux sont
créés, détruits ou modifiés. Pour utiliser
cette option, dnsmasq doit être compilé avec avec le support
de Lua. L'interpréteur Lua est initialisé une seule fois,
lorsque dnsmasq démarre, ce qui fait que les variables globales
persistent entre les événements liés aux baux. Le
code Lua doit définir une fonction lease et peut fournir des
fonctions init et shutdown qui sont appellées, sans
arguments, lorsque dnsmasq démarre ou s'arrête. Il peut
également fournir une fonction tftp.
La fonction lease reçoit les informations
détaillées dans --dhcp-script. Il reçoit deux
arguments. Le premier spécifie l'action, qui est une chaîne
de caractères contenant les valeurs "add" (ajout),
"old" (réactivation d'un bail existant) ou
"del" (suppression). Le deuxième est une table contenant
des paires de valeurs de labels. Les labels correspondent pour l'essentiel
aux valeurs d'environnement détaillées ci-dessus, ainsi le
label "domain" (domaine) contient les mêmes
données que la variable d'environnement DNSMASQ_DOMAIN. Il existe
quelques labels supplémentaires contenant les données
fournies comme arguments à --dhcp-script. Ces labels sont
mac_address, ip_address (pour respectivement l'adresse MAC et
l'adresse IP) et hostname (le nom d'hôte) dans le cas
d'IPv4, et client_duid, ip_address (valeur DUID du client et
adresse IP respectivement) ainsi que hostname (le nom
d'hôte) dans le cas d'IPv6.
La fonction tftp est appelée de la même façon
que la fonction "lease", et la table contient les labels
destination_address, file_name et file_size
(respectivement "adresse de destination", "nom de
fichier" et "taille de fichier").
- --dhcp-scriptuser
- Spécifie l'utilisateur sous lequel le script shell
lease-change ou le script doivent être exécutés. La
valeur par défaut correspond à l'utilisateur root mais peut
être changée par le biais de cette option.
- -9, --leasefile-ro
- Supprimer complètement l'usage du fichier servant de
base de donnée pour les baux DHCP. Le fichier ne sera ni
créé, ni lu, ni écrit. Change la façon dont le
script de changement d'état de bail est lancé (si celui-ci
est fourni par le biais de l'option --dhcp-script ), de sorte que
la base de données de baux puisse être complètement
gérée par le script sur un stockage externe. En addition aux
actions décrites dans --dhcp-script, le script de changement
d'état de bail est appelé une fois, au lancement de Dnsmasq,
avec pour seul argument "init". Lorsqu'appelé de la
sorte, le script doit fournir l'état de la base de baux, dans le
format de fichier de baux de Dnsmasq, sur sa sortie standard (stdout) et
retourner un code de retour de 0. Positionner cette option provoque
également une invocation du script de changement d'état de
bail à chaque changement de l'identifiant de client, de longueur de
bail ou de date d'expiration.
- --bridge-interface=<interface>,<alias>[,<alias>]
- Traiter les requêtes DHCP (v4 et v6) et IPv6 Router
Solicit arrivant sur n'importe laquelle des interfaces <alias> comme
si elles arrivaient de l'interface <interface>. Cette option permet
à dnsmasq de fournir les service DHCP et RA sur les interfaces
ethernet non adressés et non pontés; par exemple sur un
hôte de calcul d'OpenStack où chaque telle interface est une
interface TAP à une machine virtuelle, ou lors de l'utilisation de
pont ethernet "ancien mode" sur plate-forme BSD. Chaque
<alias> peut finir avec un simple '*' joker.
- -s, --domain=<domaine>[,<gamme
d'adresses>[,local]]
- Spécifie le domaine du serveur DHCP. Le domaine peut
être donné de manière inconditionnelle (sans
spécifier de gamme d'adresses IP) ou pour des gammes d'adresses IP
limitées. Cela a deux effets; tout d'abord, le serveur DHCP
retourne le domaine à tous les hôtes le demandant,
deuxièmement, cela spécifie le domaine valide pour les
hôtes DHCP configurés. Le but de cela est de contraindre les
noms d'hôte afin qu'aucun hôte sur le LAN ne puisse fournir
via DHCP un nom tel que par exemple "microsoft.com" et capturer
du trafic de manière illégitime. Si aucun nom de domaine
n'est spécifié, alors les noms d'hôtes avec un nom de
domaine (c-à-d un point dans le nom) seront interdits et
enregistrés dans le journal (logs). Si un suffixe est fourni, alors
les noms d'hôtes possédant un domaine sont autorisés,
pour peu que le nom de domaine coïncide avec le nom fourni. De
plus, si un suffixe est fourni, alors les noms d'hôtes ne
possédant pas de nom de domain se voient rajouter le suffixe fourni
dans l'option --domain. Ainsi, sur mon réseau, je peux
configurer --domain=thekelleys.org.uk et avoir une machine dont le
nom DHCP serait "laptop". L'adresse IP de cette machine sera
disponible à la fois pour "laptop" et
"laptop.thekelleys.org.uk". Si la valeur fournie pour
<domaine> est "#", alors le nom de domaine est
positionné à la première valeur de la directive
"search" du fichier /etc/resolv.conf (ou équivalent).
La gamme d'adresses peut être de la forme <adresse
IP>,<adresse IP> ou <adresse IP>/<masque de
réseau> voire une simple <adresse IP>. Voir
--dhcp-fqdn qui peut changer le comportement de dnsmasq relatif aux
domaines.
Si la gamme d'adresse est fournie sous la forme <adresse
IP>/<taille de réseau>, alors le drapeau "local"
peut être rajouté qui a pour effet d'ajouter
--local-declarations aux requêtes DNS directes et inverses.
C-à-d --domain=thekelleys.org.uk,192.168.0.0/24,local est
identique à --domain=thekelleys.org.uk,192.168.0.0/24
--local=/thekelleys.org.uk/ --local=/0.168.192.in-addr.arpa/ La taille de
réseau doit être de 8, 16 ou 24 pour être
valide.
- --dhcp-fqdn
- Dans le mode par défaut, dnsmasq insère les
noms non-qualifiés des clients DHCP dans le DNS. Pour cette raison,
les noms doivent être uniques, même si deux clients ayant le
même nom sont dans deux domaines différents. Si un
deuxième client DHCP apparaît ayant le même nom qu'un
client déjà existant, ce nom est transféré au
nouveau client. Si --dhcp-fqdn est spécifié, ce
comportement change : les noms non qualifiés ne sont plus
rajoutés dans le DNS, seuls les noms qualifiés le sont. Deux
clients DHCP avec le même nom peuvent tous les deux garder le nom,
pour peu que la partie relative au domaine soit différente
(c-à-d que les noms pleinement qualifiés diffèrent).
Pour s'assurer que tous les noms ont une partie domaine, il doit y avoir
au moins un --domain sans gamme d'adresses de
spécifié lorsque l'option --dhcp-fqdn est
configurée.
- --dhcp-client-update
- Normalement, lorsque dnsmasq fournit un bail DHCP, il
positionne un label dans l'option FQDN pour indiquer au client qu'il ne
doit pas tenter de faire une mise à jour DDNS avec son nom et son
adresse IP. Ceci parce que la paire Nom-IP est rajoutée
automatiquement dans la partie DNS de dnsmasq. Cette option inhibe ce
comportement ce qui est utile, par exemple, pour permettre aux clients
Windows de la mise à jour de serveurs Active Directory. Voir la RFC
4702 pour plus de détails.
- --enable-ra
- Active la fonctionnalité d'annonces routeurs IPv6
("IPv6 Router Advertisement"). DHCPv6 ne gère pas la
configuration complète du réseau de la même
façon que DHCPv4. La découverte de routeurs et la
découverte (éventuelle) de préfixes pour la
création autonome d'adresse sont gérées par un
protocole différent. Lorsque DHCP est utilisé, seul un
sous-ensemble de tout ceci est nécessaire et dnsmasq est à
même de le gérer, en utilisant la configuration DHCP
présente pour fournir la majorité des données.
Lorsque les annonces routeurs (RA pour "Router Advertisement")
sont activées, dnsmasq va annoncer un préfixe pour chaque
dhcp-range et, par défaut, fournir comme valeur de routeur et de
DNS récursif la valeur d'adresse link-local appropriée parmi
celles de la machine sur laquelle tourne dnsmasq. Par défaut, les
bits "managed address" sont positionnés, et le bit
"use SLAAC" ("utiliser SLAAC") est
réinitialisé. Cela peut être changé pour des
sous-réseaux donnés par le biais du mot clef de mode
décris dans --dhcp-range. Les paramètres DNS du
RFC6106 sont inclus dans les annonces. Par défaut, l'adresse
link-local appropriée parmi celles de la machine sur laquelle
tourne dnsmasq est spécifiée comme DNS récursif. Si
elles sont fournies, les options dns-server et domain-search sont
utilisées respectivement pour RDNSS et DNSSL.
- --ra-param=<interface>,[mtu:<valeur>|<interface>|off,][high,|low,]<intervalle
d'annonce routeur>[,<durée de vie route>]
- Configure pour une interface donnée des valeurs pour
les annonces routeurs différentes des valeurs par défaut. La
valeur par défaut du champ priorité pour le routeur peut
être changée de "medium" (moyen) à
"high" (haute) ou "low" (basse). Par exemple :
--ra-param=eth0,high,0. Un intervalle (en secondes) entre les
annonces routeur peut être fourni par : --ra-param=eth0,60.
La durée de vie de la route peut être changée ou mise
à zéro, auquel cas le routeur peut annoncer les
préfixes mais pas de route : --ra-param=eth0,0,0 (une valeur
de zéro pour l'intervalle signifie qu'il garde la valeur par
défaut). Ces quatre paramètres peuvent être
configurés en une fois :
--ra-param=eth0,mtu:1280,low,60,1200 La valeur pour l'interface
peut inclure un caractère joker.
- --enable-tftp[=<interface>[,<interface>]]
- Active la fonction serveur TFTP. Celui-ci est de
manière délibérée limité aux fonctions
nécessaires au démarrage par le réseau
("net-boot") d'un client. Seul un accès en lecture est
possible; les extensions tsize et blksize sont supportées (tsize
est seulement supportée en mode octet). Sans argument optionnel, le
service TFTP est fourni sur les mêmes interfaces que le service
DHCP. Si une liste d'interfaces est fournie, cela définit les
interfaces sur lesquelles le service TFTP sera activé.
- --tftp-root=<répertoire>[,<interface>]
- Les fichiers à fournir dans les transferts TFTP
seront cherchés en prenant le répertoire fourni comme
racine. Lorsque cela est fourni, les chemins TFTP incluant ".."
sont rejetés, afin d'éviter que les clients ne puissent
sortir de la racine spécifiée. Les chemins absolus
(commençant par "/") sont autorisés, mais ils
doivent être à la racine TFTP fournie. Si l'option interface
est spécifiée, le répertoire n'est utilisé que
pour les requêtes TFTP reçues sur cette interface.
- --tftp-unique-root
- Ajouter l'adresse IP du client TFTP en temps
qu'élément de chemin, à la suite de la racine tftp
(adresse sous forme de 4 chiffres séparés par des points).
Uniquement valable si une racine TFTP est spécifiée et si le
répertoire correspond existe. Ainsi, si la valeur pour tftp-root
est "/tftp" et que le client d'adresse IP 1.2.3.4 requiert le
fichier "monfichier", alors le chemin effective résultant
sera "/tftp/1.2.3.4/monfichier" si /tftp/1.2.3.4 existe, ou
"/tftp/monfichier" dans le cas contraire.
- --tftp-secure
- Active le mode TFTP sécurisé : sans cela,
tout fichier lisible par Dnsmasq est disponible via TFTP (les
règles de contrôle d'accès unix habituelles
s'appliquent). Lorsque l'option --tftp-secure est
spécifiée, seuls les fichiers possédés par
l'utilisateur sous lequel tourne le processus Dnsmasq sont accessibles. Si
Dnsmasq est exécuté en temps que super-utilisateur
("root"), des règles différentes s'appliquent :
--tftp-secure n'a aucun effet, mais seuls les fichiers ayant un
droit de lecture pour tout le monde sont accessibles. Il n'est pas
recommandé d'exécuter Dnsmasq sous l'utilisateur
"root" lorsque le service TFTP est activé, et il est
formellement déconseillé de le faire sans fournir l'option
--tftp-root. Sans cela, en effet, l'accès de tous les
fichiers du serveur pour lequel le droit de lecture pour tout le monde est
positionné ("world-readable") devient possible par
n'importe quel hôte sur le réseau.
- --tftp-lowercase
- Converti les noms de fichiers des requêtes TFTP en
minuscules. Cela est utile pour les requêtes effectuées
depuis les machines Windows, dont les systèmes de fichiers sont
insensibles à la casse et pour lesquels la détermination de
la casse est parfois un peu aléatoire. A noter que le serveur tftp
de dnsmasq converti systématiquement les "\" en
"/" dans les noms de fichiers.
- --tftp-max=<connexions>
- Définit le nombre maximum de connexions TFTP
simultanées autorisées. La valeur par défaut est de
50. Lorsqu'un grand nombre de connexions TFTP est spécifié,
il se peut que la limite de nombre de descripteurs de fichiers par
processus soit atteinte. Dnsmasq nécessite quelques descripteurs de
fichiers, ainsi qu'un descripteur de fichier pour chaque connexion TFTP
simultanée et pour chacun des fichiers devant être fournis.
De fait, servir le même fichier à n clients ne
nécessitera qu'environ n + 10 descripteurs de fichiers, alors que
fournir des fichiers tous différents à n clients utilisera
environ (2*n) + 10 descripteurs. Si elle est donnée, l'option
--tftp-port-range peut affecter le nombre maximum de connexions
concurrentes.
- --tftp-no-blocksize
- Empêche le serveur TFTP de négocier l'option
"blocksize" (taille de bloc) avec les clients. Certains clients
buggés spécifient cette option mais se comportent ensuite de
manière incorrecte si celle-ci est accordée.
- --tftp-port-range=<début>,<fin>
- Un serveur TFTP écoute sur le port
prédéfini 69 ("well-known port") pour l'initiation
de la connexion, mais utilise également un port dynamiquement
alloué pour chaque connexion. Normalement, ces ports sont
alloués par le système d'exploitation, mais cette option
permet de spécifier une gamme de ports à utiliser pour les
transferts TFTP. Cela peut être utile si TFTP doit traverser un
dispositif garde-barrière ("firewall"). La valeur de
début pour la plage de port ne peut être inférieure
à 1025 sauf si dnsmasq tourne en temps que super-utilisateur
("root"). Le nombre de connexions TFTP concurrentes est
limitée par la taille de la gamme de ports ainsi
spécifiée.
- --tftp-port-range=<début>,<fin>
- Un serveur TFTP écoute sur un numéro de port
bien connu (69) pour l'initiation de la connexion, et alloue dynamiquement
un port pour chaque connexion. Ces numéros de ports sont en
principe alloués par le système d'exploitation, mais cette
option permet de spécifier une gamme de ports à utiliser
pour les transferts TFTP. Cela peut être utile lorsque ceux-ci
doivent traverser un dispositif garde-barrière
("firewall"). Le début de la plage ne peut être
inférieur à 1024 à moins que Dnsmasq ne fonctionne en
temps que super-utilisateur ("root"). Le nombre maximal de
connexions TFTP concurrentes est limitée par la taille de la plage
de ports ainsi définie.
- -C, --conf-file=<fichier>
- Spécifie un fichier de configuration
différent. L'option "conf-file" est également
autorisée dans des fichiers de configuration, ce qui permet
l'inclusion de multiples fichiers de configuration. L'utilisation de
"-" comme nom de fichier permet la lecture par dnsmasq de sa
configuration sur l'entrée standard stdin.
- -7, --conf-dir=<répertoire>[,<extension
de fichier>...]
- Lis tous les fichiers du répertoire
spécifié et les traite comme des fichiers de configuration.
Si des extensions sont données, tout fichier finissant par ces
extensions seront ignorés. Tout fichier dont le nom se termine en ~
ou commence par ., ainsi que ceux commençant ou se terminant par #
seront systématiquement ignorés. Cette option peut
être donnée en ligne de commande ou dans un fichier de
configuration.
Au démarrage, Dnsmasq lis
/etc/dnsmasq.conf, si ce fichier existe.
(Sur FreeBSD, ce fichier est
/usr/local/etc/dnsmasq.conf ) (voir
cependant les options
-C et
-7 ). Le format de ce fichier
consiste en une option par ligne, exactement comme les options longues
détaillées dans la section OPTIONS, mais sans être
précédées par "--". Les lignes
commençant par # sont des commentaires et sont ignorées. Pour
les options qui ne peuvent-être spécifiées qu'une seule
fois, celle du fichier de configuration prends le pas sur celle fournie en
ligne de commande. Il est possible d'utiliser des guillemets afin
d'éviter que les ",",":","." et
"#" ne soient interprétés, et il est possible
d'utiliser les séquences d'échappement suivantes : \\ \" \t
\e \b \r et \n. Elles correspondent respectivement à la barre oblique
descendante ("anti-slash"), guillemets doubles, tabulation,
caractère d'échappement ("escape"), suppression
("backspace"), retour ("return") et nouvelle ligne
("newline").
A la réception d'un signal SIGHUP,
Dnsmasq vide son cache et
recharge les fichiers
/etc/hosts et
/etc/ethers ainsi que tout
autre fichier spécifié par les options
--dhcp-hostsfile ,
--dhcp-optsfile ou
--addn-hosts. Le script de changement de bail
est appellé pour chaque bail DHCP existant. Si l'option
--no-poll est positionnée, alors le fichier
/etc/resolv.conf est également rechargé. SIGHUP ne
provoque PAS de rechargement du fichier de configuration.
A la réception d'un signal SIGUSR1,
Dnsmasq écrit des
statistiques dans les traces système. Les informations fournies sont :
la taille du cache, le nombre de noms ayant été supprimés
du cache avant expiration afin de faire de la place pour les nouveaux noms,
ainsi que le nombre total d'entrées ayant été
insérées dans le cache. Pour chaque serveur amont, il fournit le
nomnbre de requêtes transmises ainsi que le nombre de requêtes
ayant résulté par une erreur. Lorsque Dnsmasq a
été lancé via
--no-daemon ou lorsque la
traçabilité maximale a été activée (
-q ), la totalité du contenu du cache est de surcroît
fournie.
A la réception d'un signal SIGUSR2 et lorsqu'il enregistre directement
ses traces dans un fichier (voir
--log-facility ), alors
Dnsmasq
ferme et rouvre le fichier de traces. Il faut noter que pendant cette
opération Dnsmasq ne s'exécute pas en tant que "root".
Lorsqu'il créé un fichier de traces pour la première
fois, Dnsmasq change le propriétaire du fichier afin de le faire
appartenir à l'utilisateur non "root" sous lequel Dnsmasq
s'exécute. Le logiciel de rotation de fichiers de trace logrotate doit
être configuré pour créer un nouveau fichier avec un
propriétaire identique au fichier existant avant d'envoyer le signal
SIGUSR2. Si une requête DNS TCP est en cours, l'ancien fichier de
traces reste ouvert dans le processus fils qui traite la requête TCP et
il peut y être écrit. Il existe cependant une limite de 150
secondes après laquelle tous les processus traitant des requêtes
TCP expirent : pour cette raison, il est préférable de ne pas
configurer la compression des fichiers de traces venant juste de faire l'objet
d'une rotation. Dans le cas de l'utilisation du logiciel logrotate, les
options requises sont
create et
delaycompress.
Dnsmasq est un logiciel de transmission de requêtes DNS : il n'est pas
capable d'effectuer une résolution de nom récursive en partant
des serveurs DNS racine, mais transmet de telles requêtes à un
serveur DNS amont capable de telles recherches récursives, ce qui est
typiquement le cas d'un serveur DNS de FAI. Par défaut, Dnsmasq lis
/etc/resolv.conf pour découvrir les adresses IP des serveurs DNS
amonts à utiliser, puisque cette information est en
général stockée à cet endroit. A moins que
l'option
--no-poll ne soit utilisée,
Dnsmasq
vérifie la date de modification du fichier
/etc/resolv.conf (ou
l'équivalent si
--resolv-file est utilisé), et le relis
lorsqu'il change. Cela permet de définir les serveurs DNS amont de
manière dynamique lorsque PPP ou DHCP sont utilisés, puisque ces
protocoles fournissent cette information. L'absence du fichier
/etc/resolv.conf ne conduit pas à une erreur, puisqu'il peut
très bien ne pas être créé avant qu'une connexion
PPP ne soit établie. Dans ce cas, Dnsmasq vérifie
régulièrement pour voir si un fichier
/etc/resolv.conf
est créé. Dnsmasq peut être configuré pour lire
plus d'un fichier resolv.conf. Cela est utile sur un ordinateur portable
où PPP et DHCP peuvent être utilisés : Dnsmasq peut alors
être configuré pour lire à la fois
/etc/ppp/resolv.conf et
/etc/dhcpc/resolv.conf et utilisera le
contenu du fichier ayant changé en dernier, ce qui permet de passer
automatiquement de serveurs DNS à d'autres.
Les serveurs amonts peuvent aussi être spécifiés sur la
ligne de commande ou dans un fichier de configuration. Ces
spécifications de serveurs peuvent éventuellement se voir
adjoindre d'un nom de domaine qui précise à Dnsmasq quel serveur
utiliser pour trouver les noms d'un domaine donné.
Pour configurer Dnsmasq afin qu'il se comporte comme un cache pour la machine
sur laquelle il tourne, mettre "nameserver 127.0.0.1" dans le
fichier
/etc/resolv.conf afin de forcer les processus locaux à
envoyer leurs requêtes à Dnsmasq. Ensuite, spécifier les
serveurs DNS amont soit en les fournissant directement à Dnsmasq via
l'option
--server ou alors en mettant leurs adresses dans un autre
fichier, par exemple
/etc/resolv.dnsmasq et en lançant Dnsmasq
avec l'option
-r /etc/resolv.dnsmasq. Cette deuxième technique
permet la mise-à-jour dynamique des adresses de serveurs DNS amont par
le biais de PPP ou DHCP.
Les adresses dans /etc/hosts prennent le dessus sur celles fournies par le
serveur DNS amont, ainsi "macompagnie.com 1.2.3.4" dans /etc/hosts
assure que les requêtes pour "macompagnie.com" retourneront
toujours 1.2.3.4, même si une requête au serveur DNS amont
retournerait une adresse différente. Il y a une exception à ceci
: si le DNS amont contient un CNAME qui pointe vers un nom présent dans
/etc/hosts, alors la recherche du CNAME via Dnsmasq fournira l'adresse DNS
amont. Pour contourner cela, il suffit de mettre l'entrée correspondant
au CNAME dans /etc/hosts.
le système de label fonctionne comme suit : pour chaque requête
DHCP, dnsmasq associe un ensemble de labels obtenus à partir des lignes
de la configuration incluant set:<label>, y compris un pour la plage
d'adresse (
dhcp-range ) utilisée pour allouer l'adresse, un
pour chaque entrée
dhcp-host associée (auquel est
rajouté le mot-clef "known" si une entrée dhcp-host
coïncide).
Le label "bootp" est associé aux requêtes BOOTP, un
label dont le nom est le nom de l'interface sur laquelle la requête est
arrivée.
Pour les lignes de configuration comportant des éléments
tag:<label>, seules seront valides celles pour lesquels tous les labels
correspondants seront présents. C'est typiquement le cas des lignes
dhcp-options. Un
dhcp-option possédant des labels sera
utilisé de préférence à un
dhcp-option sans
label, pour peu que _tous_ les labels positionnés correspondent
à l'ensemble de labels décrit plus haut. Le préfixe '!'
sur un label est un indicateur de négation, ainsi
--dhcp=option=tag:!purple,3,1.2.3.4 n'envoie l'option que lorsque le
label "purple" n'est pas dans la liste de labels définis pour
l'hôte considéré. (dans le cas de l'utilisation dans une
ligne de commande au lieu d'un fichier de configuration, ne pas oublier
d'échapper le caractère !, qui est un
méta-caractère d'interpréteur de commande shell).
Lors de la sélection d'une option, une étiquette
spécifiée par dhcp-range passe après les autres
étiquettes, ce qui permet de facilement remplacer des option
génériques pour des hôtes spécifiques, ainsi :
dhcp-range=set:interface1,...... dhcp-host=set:monhote,.....
dhcp-option=tag:interface1,option:nis-domain,"domaine1"
dhcp-option=tag:monhote,option:nis-domain,"domaine2" va
positionner l'option NIS-domain à domaine1 pour les hôtes dans
la plage d'adresse, sauf pour monhote pour lequel cette valeur sera domaine2.
Veuillez noter que pour
dhcp-range , les éléments
tag:<label> et set:<label> sont tous les deux autorisés
pour sélectionner la plage à utiliser selon, par exemple, le
dhcp-host, et pour affecter l'option envoyée, sur la base de la plage
sélectionnée.
Ce système a évolué d'un système plus ancien et aux
possibilités plus limitées, et pour des raisons de
compatibilité "net:" peut être utilisé à
la place de "tag:" et "set:" peut être omis
(à l'exception de
dhcp-host, où "net:" peut
être utilisé à la place de "set:"). Pour les
mêmes raisons, '#' peut être utilisé à la place de
'!' pour indiquer la négation.
Le serveur DHCP intégré dans Dnsmasq fonctionne également
en temps que serveur BOOTP, pour peu que l'adresse MAC et l'adresse IP des
clients soient fournies, que ce soit par le biais de l'option
dhcp-host
ou dans le fichier
/etc/ethers , et que l'option
dhcp-range soit
présente afin d'activer le serveur DHCP pour un réseau
donné (L'option
--bootp-dynamic supprime la
nécessité des associations statiques). Le paramètre
"filename" (nom de fichier) de la requête BOOTP est
utilisé comme label, ainsi que le label "bootp", permettant
un certain contrôle sur les options retournées aux
différentes classes d'hôtes.
Configurer dnsmasq pour agir en temps que serveur DNS faisant autorité
est compliqué par le fait que cela implique la configuration de
serveurs DNS externes pour mettre en place la délégation. Seront
présentés ci-dessous trois scénarios de complexité
croissante. Le pré-requis pour chacun de ces scénarios est
l'existence d'une adresse IP globalement disponible, d'un enregistrement de
type A ou AAAA pointant vers cette adresse, ainsi que d'un serveur DNS externe
capable d'effectuer la délégation de la zone en question. Pour
la première partie de ces explications, nous allons appeler
serveur.exemple.com l'enregistrement A (ou AAAA) de l'adresse globalement
accessible, et notre.zone.com la zone pour laquelle dnsmasq fait
autorité.
La configuration la plus simple consiste en deux lignes de configuration, sous
la forme :
auth-server=serveur.exemple.com,eth0
auth-zone=notre.zone.com,1.2.3.0/24
ainsi que deux enregistrements dans le DNS externe :
serveur.exemple.com A 192.0.43.10
notre.zone.com NS serveur.exemple.com
eth0 est l'interface réseau externe sur laquelle dnsmasq écoute,
dont l'adresse IP (globalement accessible) est 192.0.43.10.
A noter que l'adresse IP externe peut parfaitement être dynamique (par
exemple attribuée par un FAI via DHCP ou PPP). Dans ce cas,
l'enregistrement de type A doit être lié à cet
enregistrement dynamique par l'une ou l'autre des techniques habituelles de
système DNS dynamique.
Un exemple plus complexe mais en pratique plus utile correspond au cas où
l'adresse IP globalement accessible se trouve dans la zone pour laquelle
dnsmasq fait autorité, le plus souvent à la racine. Dans ce cas
nous avons :
auth-server=notre.zone.com,eth0
auth-zone=notre.zone.com,1.2.3.0/24
notre.zone.com A 1.2.3.4
notre.zone.com NS our.zone.com
L'enregistrement A pour notre.zone.com est dorénavant un enregistrement
"colle" qui résout le problème de poule et d'oeuf
consistant à trouver l'adresse IP du serveur de nom pour notre.zone.com
lorsque l'enregistrement se trouve dans la zone en question. Il s'agit du seul
rôle de cet enregistrement : comme dnsmasq fait désormais
autorité pour notre.zone.com, il doit également fournir cet
enregistrement. Si l'adresse externe est statique, cela peut être
réalisé par le biais d'une entrée dans
/etc/hosts
ou via un
--host-record.
auth-server=notre.zone.com,eth0
host-record=notre.zone.com,1.2.3.4
auth-zone=notre.zone.com,1.2.3.0/24
Si l'adresse externe est dynamique, l'adresse associée à
notre.zone.com doit être dérivée de l'interface
correspondante. Cela peut être fait en utilisant
interface-name
Sous la forme :
auth-server=notre.zone.com,eth0
interface-name=notre.zone.com,eth0
auth-zone=notre.zone.com,1.2.3.0/24
La configuration finale rajoute à cette base un serveur DNS secondaire.
Il s'agit d'un autre serveur DNS qui apprend les données DNS de la zone
en effectuant un transfert de zone, et qui joue le rôle de serveur de
secours au cas où le serveur principal devenait inaccessible. La
configuration de ce serveur secondaire sort du cadre de cette page de manuel.
Les éléments de configuration à rajouter dans dnsmasq
sont les simples :
auth-sec-servers=secondaire.monfai.com
et
notre.zone.com NS secondaire.monfai.com
L'addition d'une option auth-sec-servers active les transferts de zone dans
dnsmasq, ce qui permet au serveur secondaire de venir collecter les
données DNS. Si vous souhaitez restreindre l'accès à ces
données à des hôtes spécifiques, vous pouvez le
faire via :
auth-peer=<adresse IP du serveur secondaire>
Dnsmasq joue le rôle de serveur faisant autorité pour les domaines
in-addr.arpa et ip6.arpa associés aux sous-réseaux
définis dans la déclaration de zone auth-zone, ce qui fait que
les requêtes DNS inversées (de l'adresse vers le nom) peuvent
simplement être configurées avec un enregistrement NS
adéquat. Par exemple, comme nous définissons plus haut les
adresses 1.2.3.0/24 :
3.2.1.in-addr.arpa NS notre.zone.com
Veuillez noter que pour l'instant, les zones inverses ne sont pas disponibles
dans les transferts de zone, donc il est inutile de configurer de serveur
secondaire pour la résolution inverse.
Lorsque dnsmasq est configuré en temps que serveur faisant
autorité, les données suivantes sont utilisées pour
peupler la zone considérée :
--mx-host, --srv-host, --dns-rr, --txt-record, --naptr-record , pour
autant que les noms des enregistrements se trouvent dans la zone en question.
--cname pour peu que le nom soit dans le domaine. Si la cible du CNAME
n'est pas pleinement qualifiée, alors elle est qualifiée avec le
nom de la zone pour laquelle le serveur fait autorité.
Les adresses IPv4 et IPv6 extraites de /etc/hosts (et
--addn-hosts )
ainsi que les options
--host-record fournissant des adresses
situées dans l'un des sous-réseaux spécifiés dans
--auth-zone.
Adresses spécifiées par
--interface-name. Dans ce cas,
l'adresse n'est pas limitée à l'un des sous-réseaux
donné dans
--auth-zone.
Les adresses de baux DHCP, si l'adresse est située dans l'un des
sous-réseaux de
--auth-zone OU dans une plage DHCP construite.
Dans le mode par défaut, où le bail DHCP a un nom non
qualifié, et éventuellement pour un nom qualifié
construit via
--domain , alors le nom dans la zone faisant
autorité est construit à partir du nom non qualifié et du
nom de domaine de la zone. Cela peut on non être égal celui
fourni par
--domain. Si l'option
--dhcp-fqdn est fournie, alors
les noms pleinement qualifiés associés aux baux DHCP sont
utilisés, dès lors qu'ils correspondent au nom de domaine
associé à la zone.
0 - Dnsmasq s'est correctement lancé en tâche de fond, ou alors
s'est correctement terminé si le lancement en tâche de fond n'a
pas été activé.
1 - Un problème de configuration a été
détecté.
2 - Un problème est survenu avec un accès réseau (adresse
déjà utilisée, tentative d'utiliser un port
privilégié sans les permissions nécessaires).
3 - Un problème est survenu avec une opération sur un
système de fichier (fichier ou répertoire manquant,
permissions).
4 - Impossibilité d'allouer de la mémoire.
5 - Autre problème.
11 ou plus - un code de retour différent de 0 a été
reçu lors de l'appel au processus "init" du script des bails.
Le code de retour de Dnsmasq correspond au code de retour du script plus 10.
Les valeurs par défaut pour les limites de ressources de Dnsmasq sont en
général conservatrices et appropriées pour des
utilisations embarquées sur des machines de type routeur ayant des
processeurs lents et une mémoire limitée. Sur du matériel
plus performant, il est possible d'augmenter les limites et de gérer
plus de clients. Les remarques suivantes s'appliquent à Dnsmasq version
2.37 et ultérieur : les versions précédentes ne montaient
pas en charge aussi bien.
Dnsmasq est capable de gérer le DNS et DHCP pour au moins un millier de
clients. Pour cela, la durée des bail ne doit pas être
très courte (moins d'une heure). La valeur de
--dns-forward-max
peut être augmentée : commencer par la rendre égale au
nombre de clients et l'augmenter si le DNS semble lent. Noter que la
performance du DNS dépends également de la performance des
serveurs amonts. La taille du cache DNS peut- être augmentée :
la limite en dur est de 10000 entrées et la valeur par défaut
(150) est très basse. Envoyer un signal SIGUSR1 à Dnsmasq le
fait émettre des informations utiles pour paramétrer la taille
de cache. Voir la section
NOTES pour plus de détails.
Le serveur TFTP intégré est capable de plusieurs transferts de
fichiers simultanés : La limite absolue est liée au nombre
maximal de descripteurs de fichiers alloué à un processus et
à la capacité de l'appel système select() à
gérer un grand nombre de HANDLE de fichier. Si la limite est
fixée trop haut par le biais de
--tftp-max elle sera
réduite et la limite actuelle sera enregistrée au
démarrage. Il faut noter que plus de transferts sont possible lorsque
le même fichier est transmis au lieu d'avoir un fichier
différent pour chaque transfert.
Il est possible d'utiliser Dnsmasq pour bloquer la publicité sur la toile
en associant des serveurs de publicité bien connus à l'adresse
127.0.0.1 ou 0.0.0.0 par le biais du fichier
/etc/hosts ou d'un fichier
d'hôte additionnel. Cette liste peut être très longue,
Dnsmasq ayant été testé avec succès avec un
million de noms. Cette taille de fichier nécessite un processeur
à 1 Ghz et environ 60 Mo de RAM.
Dnsmasq peut être compilé pour supporter l'internationalisation.
Pour cela, les cibles "all-i18n" et "install-i18n" doivent
être données à make, en lieu et place des cibles
standards "all" et "install". Lorsque compilé avec
le support de l'internationalisation, dnsmasq supporte les noms de domaines
internationalisés ("internationalised domain names" ou IDN),
et les messages de traces ("logs") sont écrits dans la langue
locale. Les noms de domaines dans /etc/hosts, /etc/ethers et /etc/dnsmasq.conf
contenant des caractères non-ASCII seront transformés selon la
représentation punycode interne aux DNS. Veuillez noter que dnsmasq
détermine la langue pour les messages ainsi que le jeu de
caractères susceptible d'être utilisé dans les fichiers
de configuration à partir de la variable d'environnement LANG. Ceci
devrait être configuré à la valeur par défaut du
système par les scripts démarrant dnsmasq. Lorsque les fichiers
de configuration sont édités, veuillez faire attention à
le faire en utilisant la valeur de locale par défaut du système
et non une valeur spécifique à l'utilisateur, puisque dnsmasq
n'a aucun moyen de déterminer directement la valeur de jeu de
caractère utilisé, et assume de ce fait qu'il s'agit de la
valeur par défaut du système.
/etc/dnsmasq.conf
/usr/local/etc/dnsmasq.conf /var/run/dnsmasq/resolv.conf
/etc/ppp/resolv.conf /etc/dhcpc/resolv.conf
/etc/resolv.conf
/etc/hosts
/etc/ethers
/var/lib/misc/dnsmasq.leases
/var/db/dnsmasq.leases
/var/run/dnsmasq.pid
hosts(5),
resolver(5)
Cette page de manuel a été écrite par Simon Kelley
<
[email protected]>.
La traduction dans un français bancal a été commise par
Gildas Le Nadan <
[email protected]> : Toute révision/correction
permettant de corriger orthographe ou grammaire mais surtout les
éventuelles fautes de sens sera la bienvenue!