Dnsmasq acepta bsquedas DNS y las responde desde un pequeo cach local, o las reenva hacia un servidor DNS real recursivo. Carga el contenido de /etc/hosts, de tal forma que nombres de hosts locales los cuales no aparecen en el DNS mundial puedan ser resueltos. Tambin responde a bsquedas DNS para hosts configurados va DHCP.
El servidor DHCP dnsmasq incluye soporte para asignacin de direcciones estticas y redes mltiples. Automticamente enva un predeterminado sensible de opciones DHCP, y puede ser configurado para enviar cualquier opciones DHCP deseadas, incluyendo opciones encapsuladas por vendedores. Incluye un servidor seguro TFTP solo-lectura para permitir el inicio va red/PXE de hosts DHCP. Tamben incluye soporte para BOOTP.
Dnsmasq incluye soporte IPv6 para DNS, pero no para DHCP.
--test Leer archivo(s) de configuracin y revisar su sintaxis. Salir con cdigo 0 si todo est bien, o un cdigo no-cero en cualquier otro caso. No iniciar dnsmasq.
-h, --no-hosts No leer los nombres de hosts en /etc/hosts.
-H, --addn-hosts=<archivo> Archivo de hosts adicional. Leer el archivo especificado adicionalmente a /etc/hosts. Si se brinda -h, leer solo el archivo especificado. Esta opcin puede ser repetida para ms de un archivo de hosts adicional. Si un directorio es brindado, entonces leer todos los archivos contenidos en ese directorio.
-E, --expand-hosts Agregar el dominio a nombres sencillos (sin punto) en /etc/hosts de la misma manera que con nombres derivados de DHCP.
-T, --local-ttl=<tiempo> Al responder con informacin desde /etc/hosts o desde el archivo de arriendos DHCP, dnsmasq fija el tiempo de vida (TTL) a cero por predeterminado, significando que el remitente no debr cachear la informacin por s mismo. Esto es lo correcto a hacer en casi todas las situaciones. Esta opcin permite que se especifique cierto tiempo de vida (en segundos) para estas respuestas. Esto reduce la carga sobre el servidor al costo de que los clientes usaran datos aejos bajo algunas circunstancias.
--neg-ttl=<tiempo> Respuestas negativas desde servidores upstream normalmente contienen informacin time-to-live (tiempo de vida) en expedientes SOA que dnsmasq usa para hacer cach. Si las respuestas de servidores upstream omiten esta informacin, dnsmasq no mete la respuesta en el cach. Esta opcin brinda un valor predeterminado para el time-to-live que dnsmasq usa para meter respuestas en el cach an en la ausencia de un expediente SOA.
-k, --keep-in-foreground No ir hacia el fondo al iniciar, pero aparte de eso ejecutar como normal. La intencin de esto es para cuando dnsmasq es ejecutado bajo daemontools o launchd.
-d, --no-daemon Modo debug: no hacer un fork hacia el fondo, no crear un archivo PID, no cambiar el ID del usuario, generar un cache dump completo al recibir un SIGUSR1, bitacorear a stderr al igual que a syslog, no forkear procesos nuevos para manejar bsquedas TCP.
-q, --log-queries Bitacorear los resultados de bsquedas DNS manejadas por dnsmasq. Habilitar un dump de cach completo al recibir un SIGUSR1.
-8, --log-facility=<facilidad> Fijar la facilidad a la cual dnsmasq deber enviar mensajes syslog, esto es DAEMON por predeterminado, y LOCAL0 cuando el modo debug est en operacin. Si la facilidad brindada contiene por lo menos un carcter "/", se trata como un nombre de archivo, y dnsmasq bitacorear a dicho archivo, en vez de syslog. (Errores durante la lectura de la configuracin irn a syslog todava, pero todo output desde un inicio exitoso, y todo output mientras en ejecucin, ir a este archivo exclusivamente.) Al bitacorear a un archivo, dnsmasq cerrar y reabrir el archivo al recibir un SIGUSR2. Esto permite que el archivo de bitcora sea rotado sin detener a dnsmasq.
--log-async[=<lneas>] Habilitar bitacoro asincrnico y opcionalmente fijar el lmite de nmero de lneas que sern enviadas a la coleta por dnsmasq cuando syslog est lento. Dnsmasq puede bitacorear asincrnicamente: esto le permite continuar funcionando sin ser bloqueado por syslog, y permite a syslog usar dnsmasq para bsquedas DNS sin riesgo de tranque. Si la coleta de lneas de bitcora se llena, dnsmasq bitacorear el desbordamiento, y el nmero de mensajes perdidos. El tamao predeterminado de coleta es 5, un valor sano sera 5-25, y un lmite de 100 es impuesto.
-x, --pid-file=<path> Especificar un path alterno donde dnsmasq debe guardar su PID. Normalmente es /var/run/dnsmasq.pid.
-u, --user=<usuario> Especificar el userid al cual dnsmasq debe cambiarse despues de iniciar. Dnsmasq normalmente debe ser iniciado como root, pero soltar los privilegios root despues del inicio, cambiando a otro usuario. Normalmente este usuario es "nobody", pero eso se puede cambiar con esta opcin.
-g, --group=<grupo> Especificar el grupo como el cual dnsmasq correr. El predeterminado es "dip", si est disponible, para facilitar el acceso a /etc/ppp/resolv.conf el cul normlmente no es globalmente leble.
-v, --version Mostrar el nmero de versin.
-p, --port=<puerto> Escuchar en el puerto <puerto> en vez del puerto estndar DNS (53). Fijar esto a cero deshabilita completamente la funcin DNS, dejando solo DHCP y/o TFTP.
-P, --edns-packet-max=<tamao> Especificar el paquete UDP EDNS.0 ms grande que es soportado por el reenviador DNS. Por predeterminado es 1280, lo cual es el mximo recomendado en RFC2671 para ethernet.
-Q, --query-port=<puerto> Enviar bsquedas outbound desde, y escuchar por respuestas en, el puerto UDP <puerto> en vez de usar puertos aleatorios. Ntese que usar esta opcin hace que dnsmasq sea menos seguro contra ataques de spoofing DNS, pero puede ser ms rpido y usar menos recursos. Fijar esta opcin a zero hace que dnsmasq use un solo puerto, asignado por el sistema operativo (esto era el comportamiento predeterminado en versiones anteriores a 2.43).
--min-port=<puerto> No usar puertos menores a <puerto> como remitentes para bsquedas DNS outbound. Dnsmasq escoje puertos aleatorios como remitentes para bsquedas DNS outbound. Cuando esta opcin es brindada, los puertos usados siempre sern mayores que el especificado. Esto es til para sistemas detras de firewalls.
-i, --interface=<nombre de interface> Escuchar solo en las interfaces especificadas. Dnsmasq automticamente agrega la interface loopback a la lista de interfaces para usar cuando la opcin --interface es usada. Si ninguna opcin --interface o --listen-address es brindada, dnsmasq escucha en todas las interfaces disponibles excepto cualquiera fijada con opciones --except-interface Interfaces IP alias (por ejemplo, "eth1:0") no pueden ser utilizadas con --interface o --except-interface , usar --listen-address en vez.
-I, --except-interface=<nombre de interface> No escuchar en la interface especificada. Ntese que el orden de las opciones --listen-address --interface y --except-interface no importa y las opciones --except-interface siempre invalidan a las otras.
-2, --no-dhcp-interface=<nombre de interface> No proveer DHCP ni TFTP en la interface especificada, pero s proveer servicio DNS.
-a, --listen-address=<direccin IP> Escuchar en la(s) direccin(es) IP especificada(s). Las opciones --interface y --listen-address ambas pueden ser brindadas, y en tal caso el juego de ambas direcciones IP y interfaces es usada. Ntese que si ninguna opcin --interface es brindada, pero s se brinda la opcin --listen-address , entonces dnsmasq no escuchar automticamente en la interface loopback. Para obtener esto, su direccin IP, 127.0.0.1, debe ser explcitamente brindada como una opcin --listen-address
-z, --bind-interfaces En sistemas que inluyen el soporte, dnsmasq acopla la direccin de comodn, an cuando est escuchando solamente en algunas interfaces. Entonces descarta bsquedas a las cuales no debe responder. Esto tiene la ventaja de funcionar an cuando interfaces van y vienen y cambian direcciones. Esta opcin forza a dnsmasq a acoplarse realmente solo a las interfaces en las cuales est escuchando. Casi la nica vez que esto es til es cuando se est corriendo otro servidor DNS (o otra instancia de dnsmasq) en la misma mquina. Fijar esta opcin tambien habilita multiples instancias de dnsmasq, las cuales proveen servicio DHCP en la misma mquina.
-y, --localise-queries Retornar respuestas a bsquedas DNS desde /etc/hosts las cuales dependen de la interface donde entr la bsqueda. Si un nombre en /etc/hosts tiene mas de una direccin asociada con el, y por lo menos una de esas direcciones est en la misma subred de la interface donde fue enviada, entnces retornar solo las direcciones en esa subred. Esto permite a un servidor tener direcciones mltiples en /etc/hosts correspondientes a cada una de sus interfaces y cada host recibir la respuesta adecuada dependiendo de cual red tengan adjunta. Por el momento, esta facilidad est limitada a IPv4.
-b, --bogus-priv Bsquedas privadas reversas raras. Toda bsqueda reversa para rangos de IP privados (192.168.x.x, etc.) los cuales no se encuentren en /etc/hosts o en el archivo de arriendos DHCP es respondida con "dominio no existente" en vez de ser reenviada upstream.
-V, --alias=[<IP viejo>]|[<IP inicio>-<IP final>],<IP nuevo>[,<mscara>] Modificar direcciones IPv4 retornadas desde servidores DNS upstream; <IP viejo> es remplazado con <IP nuevo>. Si la mscara opcional es brindada, entonces cualquier direccin que coincida con el <IP viejo> enmascarado ser re-escrita. As que, por ejemplo, --alias=1.2.3.0,6.7.8.0,255.255.255.0 trazar 1.2.3.56 a 6.7.8.56 y 1.2.3.67 a 6.7.8.67. Esto es lo que ruteadores Cisco PIX llaman "DNS doctoring". Si la direccin vieja es brindada como un rango, entonces solo direcciones en ese rango, y no la subred entera, son re-escritas. De tal manera que --alias=192.168.0.10-192.168.0.40,10.0.0.0,255.255.255.0 relaciona 192.168.0.10->192.168.0.40 a 10.0.0.10->10.0.0.40
-B, --bogus-nxdomain=<direccin IP> Transformar respuestas que contienen la direccin IP brindada a respuestas tipo "Dominio no existe". La intencin de esto es actuar en contra de una movida desviada hecha por Verisign en septiembre del 2003, cuando comenzaron a retornar la direccin de un servidor de publicidad en respuesta a bsquedas por nombres no registrados, en vez de la correcta respuesta NXDOMAIN. Esta opcin le dice a dnsmasq que debe forjear la respuesta correcta cuando ve este comportamiento. Para septiembre 2003 la direccin IP siendo retornada por Verisign es 64.94.110.11
-f, --filterwin2k Algunas versiones de Windows hacen bsquedas DNS peridicas las cuales no reciben respuestas sensibles desde el DNS pblico y pueden causar problemas activando enlaces marcacin-en-demanda. Esta opcin filtra dichas bsquedas. Las bsquedas filtradas son para registros tipo SOA y SRV, al igual que tipo ANY donde el nombre pedido contiene _, para atrapar bsquedas LDAP.
-r, --resolv-file=<archivo> Leer las direcciones IP de servidores DNS upstream desde <archivo>, en vez de /etc/resolv.conf. Para el formato de este archivo, ver resolv.conf (5) Las nicas lneas relevantes a dnsmasq son las de servidores DNS. A dnsmasq se le puede decir que revise ms de un archivo resolv.conf, el primer archivo especificado remplaza al predeterminado, y los subsiguientes son agregados a la lista. Esto es solo permitido al hacer polling; el archivo con la actual fecha de modificacin ms nueva es el que ser usado.
-R, --no-resolv No leer /etc/resolv.conf. Obtener los servidores DNS upstream solo desde la lnea de comandos o desde el archivo de configuracin de dnsmasq.
-1, --enable-dbus Permitir que la configuracin de dnsmasq sea actualizada va llamadas de mtodo DBus. La configuracin que puede ser cambiada es servidores DNS upstream (y dominios correspondientes) y limpieza de cach. Esta opcin requiere que dnsmasq haya sido compilado con soporte para DBus.
-o, --strict-order Por predeterminado, dnsmasq enviar bsquedas a cualquiera de los servidores upstream que conoce, y trata de favorecer servidores los cuales sabe que estn activos. Fijar esta opcin forza a dnsmasq a probar cada bsqueda con cada servidor estrictamente en el orden que aparecen en /etc/resolv.conf
--all-servers Por predeterminado, cuando dnsmasq tiene ms de un servidor upstream disponible, enviar bsquedas a solo un servidor. Fijar esta opcin forza a dnsmasq a enviar todas las bsquedas a todos los servidores disponibles. La respuesta del servidor que responda primero ser devuelta al solicitante original.
--stop-dns-rebind Denegar (y bitacorear) direcciones de servidores upstream que estn dentro de rangos IP privados. Esto bloquea un ataque donde un navegador detrs de un firewall es usado para analizar mquinas en la red local.
-n, --no-poll No revisar periodicamente a /etc/resolv.conf en busca de cambios.
--clear-on-reload Cuando sea que /etc/resolv.conf es re-leida, liberar el cach DNS. Esto es til cuando servidores DNS nuevos puedan tener datos diferentes a los contenidos en el cach.
-D, --domain-needed Le dice a dnsmasq que no debe reenviar bsquedas para nombres sencillos, sin puntos o partes de dominios, a servidores upstream. Si el nombre no se conoce desde /etc/hosts o desde DHCP entonces una respuesta "no encontrado" es devuelta.
-S, --local, --server=[/[<dominio>]/[dominio/]][<direccin IP>[#<puerto>][@<IP de remitente>|<interface>[#<puerto>]] Especificar la direccin IP de servidores upstream directamente. Fijar esta opcin no suprime la lectura de /etc/resolv.conf, use -R para hacer eso. Si uno a ms dominios opcionales son brindados, ese servidor es usado solo para esos dominios y las bsquedas son hechas usando el servidor especificado solamente. La intencin de esto es para el uso con servidores DNS privados: si usted tiene un servidor DNS en su red el cual lidea con nombres de la forma xxx.internal.thekelleys.org.uk en 192.168.1.1 entonces brindar la opcin -S /internal.thekelleys.org.uk/192.168.1.1 enviar todas las bsquedas de mquinas internas a ese servidor DNS, todas las dems bsquedas sern enviadas a los servidores en /etc/resolv.conf. Una especificacin de dominio en blanco, // tiene el significado especial de "solo nombres no calificados", o sea nombres sin ningn punto en ellos. Un puerto no-estndar puede ser especificado como parte de la direccin IP usando el caracter #. Ms de una opcin -S es permitida, con partes de dominio o direccin IP repetidas como sea necesario. Tambin se permite una opcin -S la cual brinda un dominio pero ninguna direccin IP; esto le dice a dnsmasq que un dominio es local y puede responder a bsquedas desde /etc/hosts o DHCP pero nunca deber reenviar bsquedas en ese dominio a ningn servidor upstream. local es un sinnimo de server para hacer los archivos de configuracin mas claros en este caso. El string opcional despues del carcter @ le dice a dnsmasq como fijar el remitente de las bsquedas hacia este servidor DNS. Debe ser una direccin IP, la cual debe ser perteneciente a la mquina en la cual corre dnsmasq, de forma contraria esta lnea de servidor ser bitacoreada y despus ignorada, o un nombre de interface. Si un nombre de interface es brindado, entonces bsquedas hacia el servidor sern forzadas va esa interface; si una direccin IP es brindada, entonces la direccin de remitente de las bsquedas ser fijada a esa direccin. La etiqueta query-port es ignorada para cualquier servidores que tengan una direccin remitente especificada, pero el puerto puede ser especificado directamente como parte de la direccin remitente. Forzar bsquedas a una interface no est implementado en todas las plataformas soportadas por dnsmasq.
-A, --address=/<dominio>/[dominio/]<direccin IP> Especificar una direccin IP para retornar por cualquier host en los dominios brindados. Bsquedas en estos dominios nunca son reenviadas, y siempre son respondidas con la direccin IP especificada, la cual puede ser IPv4 o IPv6. Para brindar ambas direcciones IPv4 y IPv6 para un dominio, usar opciones -A repetidas. Ntese que /etc/hosts y arriendos DHCP invalidan esto para nombres individuales. Un uso comn para esto es redireccionar el dominio doubleclick.net entero a algn servidor web local amigable para evitar banners de publicidad. La especificacin funciona de la misma forma que con --server, con la facilidad adicional que /#/ coincide con cualquier dominio. De tal forma, --address=/#/1.2.3.4 siempre retornar 1.2.3.4 para cualquier bsqueda no respondida desde /etc/hosts o DHCP y que no haya sido enviada a un servidor DNS upstream por una directiva --server mas especifica.
-m, --mx-host=<nombre mx>[[,<nombre de host>],<preferencia>] Retornar un record llamado <mx name> apuntando hacia el nombre de host brindado (opcionalmente), o el host especificado en la opcin --mx-target, o si esa opcin no es brindada, el host en el cual dnsmasq est corriendo. El predeterminado es til para redireccionar correo de sistemas en la red local hacia un servidor central. La opcin de preferencia es opcional, y su predeterminado es 1 si no es brindada. Ms de un record MX puede ser brindado para un host.
-t, --mx-target=<nombre de host> Especificar el target predeterminado para el record MX devuelto por dnsmasq. Ver --mx-host. Si --mx-target es brindado, pero no --mx-host, entonces dnsmasq devuelve un record MX conteniendo el target MX para bsquedas MX en el nombre de host de la mquina donde dnsmasq est corriendo.
-e, --selfmx Retornar un record MX apuntndose a s mismo para cada mquina local. Mquinas locales son aquellas en /etc/hosts o con arriendos DHCP.
-L, --localmx Retornar un record MX apuntando al host brindado por mx-target (o la mquina donde dnsmasq est corriendo) para cada mquina local. Mquinas locales son aquellas en /etc/hosts o con arriendos DHCP.
-W, --srv-host=<_servicio>.<_prot>.[<dominio>],[<target>[,<puerto>[,<prioridad>[,<peso>]]]] Retornar un record DNS SRV. Ver RFC2782 para detalles. Si no es brindada, el dominio se predetermina a el brindado por --domain. El predeterminado para el dominio target est vaco, el predeterminado para puerto es uno, y los predeterminados para peso y prioridad son cero. Tener cuidado al transponer data desde archivos de zona BIND: los nmeros de puerto, peso, y prioridad estn en un orden diferente. Ms de un record SRV para un servicio/dominio es permitido, todos los que coincidan son retornados.
-Y, --txt-record=<nombre>[[,<texto>],<texto>] Retornar un rcord DNS TXT. El valor del rcord TXT es una serie de strings, as que cualquier nmero puede ser incluido, dividido por comas.
--ptr-record=<nombre>[,<target>] Retornar un rcord DNS PTR.
--naptr-record=<nombre>,<orden>,<preferencia>,<opciones>,<servicio>,<regexp>[,<remplazo>] Retornar un rcord DNS NAPTR, como especificado en RFC3403.
--cname=<cname>,<target> Retornar un expediente CNAME que indica que <cname> es realmente <target>. Hay limitaciones significativas en el target. Debe ser un nombre DNS que le es conocido a dnsmasq desde /etc/hosts (o archivos hosts adicionales) o de DHCP. Si el target no satisface este criterio, el cname entero es ignorado. El cname debe ser nico, pero es permisible tener ms de un cname indicando el mismo target.
--interface-name=<nombre>,<interface> Retornar un expediente DNS, asociando el nombre con la direccin primaria en la interface brindada. Esta opcin especifica un expediente tipo A para el nombre brindado de la misma forma que una lnea de /etc/hosts, excepto que la direccin no es constante y es en vez tomada de la interface brindada. Si la interface est deshabilitada, n configurada, o n existente, un rcord vaco es devuelto. El rcord PTR relevante tambien es creado, trazando la direccin de la interface a el nombre. Ms de un nombre puede ser asociado con una direccin de interface, repitiendo la opcin. En tal caso, la primera instancia es usada para la traza reversa direccin-a-nombre.
-c, --cache-size=<tamao de cach> Fijar el tamao del cach de dnsmasq. El predeterminado es 150 nombres. Fijar el tamao a cero deshabilita el cach.
-N, --no-negcache Deshabilitar cach negativo. El cach negativo le permite a dnsmasq recordar resultados tipo "dominio no existe" desde servidores DNS upstream y responder bsquedas idnticas sin reenviarlas nuevamente.
-0, --dns-forward-max=<bsquedas> Fijar el nmero mximo de bsquedas DNS simultneas. El valor predeterminado es 150, lo cul debera estar bien para la mayora de casos. La nica situacin conocida donde esto debe ser incrementado es al usar resolvedores de bitcoras de servidores web, los cuales pueden generar un nmero inmenso de bsquedas simultneas.
-F, --dhcp-range=[[net:]network-id,]<direccin-inicio>,<direccin-final>[[,<mscara>],<broadcast>][,<tiempo de arriendo>] Habilitar el servidor DHCP. Direcciones sern distribuidas desde el rango <direccin-inicio> hasta <direccin-final> y desde direcciones definidas estticamente en opciones dhcp-host Si el tiempo de arriendo es especificado, entonces arriendos sern otorgados por esa cantidad de tiempo. El tiempo de arriendo es en segundos, o minutos (por ejemplo, 45m), u horas (por ejemplo, 1h), o "infinite". Si no es brindada, el tiempo de arriendo predeterminado es de una hora. El tiempo de arriendo mnimo es de dos minutos. Esta opcin puede ser repetida, con diferentes direcciones, para habilitar servicio DHCP en ms de una red. Para redes conectadas dirctamente (en otras palabras, redes en las cuales la mquina corriendo dnsmasq tiene una interface) la mscara de subred es opcional. Pero, es requerida para redes que reciben servicio DHCP va un agente de relay. La direccin de broadcast siempre es opcional. Siempre se permite tener ms de un rango dhcp (dhcp-range) en una subred. El parmetro opcional network-id es una etiqueta alfanumrica la cual marca esta red de tal forma que opciones dhcp puedan ser especificadas en base a cada red. Cuando es prefijada con 'net:' entonces el significado cambia de "fijar etiqueta" a "coincidir con etiqueta". Solo una etiqueta puede ser fijada, pero ms de una puede ser revisada por coincidencias. La direccin final puede ser remplazada por la palabra clave static la cual le dice a dnsmasq que debe habilitar DHCP para la red especificada, pero no alocar dinmicamente direcciones IP: Solo hosts que tienen direcciones estticas brindadas va dhcp-host o desde /etc/ethers sern servidas. La direccin final puede ser remplazada por la palabra clave proxy caso en el cual dnsmasq proveer proxy-DHCP en la subred especificada. (Ver pxe-prompt y pxe-service para detalles.)
-G, --dhcp-host=[<direccin de hardware>][,id:<client_id>|*][,net:<netid>][,<direccin IP>][,<nombre de host>][,<tiempo de arriendo>][,ignore] Especificar parmetros por host para el servidor DHCP. Esto permite que una mquina con una direccin de hardware particular sea siempre alocada el mismo nombre de host, direccin IP, y tiempo de arriendo. Un nombre de host especificado de esta manera toma presedencia sobre cualquiera suministrado por el cliente DHCP en la mquina. Tambin se permite omitir la direccion de hardware y incluir el nombre de host; en tal caso la direccin IP y los tiempos de arriendo sern aplicables a cualquier mquina que reclame ese nombre. Por ejemplo: --dhcp-host=00:20:e0:3b:13:af,wap,infinite le dice a dnsmasq que debe darle a la mquina con direccin ethernet 00:20:e0:3b:13:af el nombre wap, y un arriendo DHCP infinito. --dhcp-host=lap,192.168.0.199 le dice a dnsmasq que siempre debe alocarle a la maquina lap la direccin IP 192.168.0.199. Direcciones alocadas de esta manera no tienen que estar dentro del rango dado con la opcin --dhcp-range, pero deben estar en la red siendo servida por el servidor DHCP. Se permite usar identificadores de clientes en vez de direcciones de hardware para identificar hosts prefijando 'id:'. O sea que: --dhcp-host=id:01:02:03:04,..... se refiere al host con identificador de cliente 01:02:03:04. Tambin se permite especificar el ID de cliente como texto, as: --dhcp-host=id:iddeclientecomotexto,..... La opcin especial id:* significa "ignorar cualquier ID de cliente y usar solamente direcciones MAC." Esto es til cuando un cliente presenta un ID de cliente algunas veces pero otras no. Si un nombre aparece en /etc/hosts, la direccin asociada puede ser alocada a un arriendo DHCP, pero solo si existe una opcin --dhcp-host la cual especifica el nombre tambin. La palabra clave "ignore" le dice a dnsmasq que no debe ofrecer jams un arriendo DHCP a una mquina. La mquina puede ser especificada por direccin de hardware, ID de cliente, o nombre de host, por ejemplo: --dhcp-host=00:20:e0:3b:13:af,ignore Esto es til cuando hay otro servidor DHCP en la red que debe ser usado por algnas mquinas. El net:<network-id> fija la etiqueta network-id cuando sea que esta directiva dhcp-host est en uso. Esto puede ser usado para enviar selectivamente opciones DHCP a este host. Cuando un host coincide con cualquier directiva dhcp-host (o una implicada por /etc/ethers) entonces la etiqueta network-id especial "known" es fijada. Esto permite que dnsmasq sea configurado para ignorar pedidos desde mquinas desconocidas usando --dhcp-ignore=#known Direcciones ethernet (pero no client-ids) pueden tener bytes comodnes, as que por ejemplo --dhcp-host=00:20:e0:3b:13:*,ignore causar que dnsmasq ignore un rango de direcciones ethernet. Ntese que el "*" necesitar ser escapado o escrito entre comillas en la lnea de comandos, pero no en el archivo de configuracin. Direcciones de hardware normalmente coinciden con cualquier tipo de red (ARP), pero es posible restringirlas a un tipo ARP singular precediendolo con el tipo ARP (en HEX) y "-". As que --dhcp-host=06-00:20:e0:3b:13:af,1.2.3.4 solo coincidira con una direccin de hardware Token-Ring, dado que el tipo ARP para Token-Ring es 6. Como caso especial, es posible incluir ms de una direccin de hardware. Ejemplo: --dhcp-host=11:22:33:44:55:66,12:34:56:78:90:12,192.168.0.2 Esto permite que una direccin IP sea asociada con direcciones de hardware mltiples, y le brinda a dnsmasq permiso para abandonar un arriendo DHCP a una de las direcciones de hardware cuando otra pide un arriendo. Ntese que esto es algo peligroso, slo funcionar dependiblemente si una de las direcciones de hardware est activa en cualquier momento y dnsmasq no tiene forma de enforzar esto. Pero es til, por ejemplo, para alocar una direccin IP estable a una laptop que tiene interface almbrica e inalmbrica.
--dhcp-hostsfile=<archivo> Leer informacin host DHCP desde el archivo especificado. El archivo contiene informacin de un host por lnea. El formato de una lnea es igual que texto hacia la derecha de '=' en --dhcp-host. La ventaja de almacenar informacin host DHCP en este archivo es que puede ser cambiada sin tener que reiniciar dnsmasq. El archivo ser re-ledo cuando dnsmasq recibe un SIGHUP.
--dhcp-optsfile=<archivo> Leer informacin sobre opciones DHCP desde el archivo especificado. La ventaja de usar esta opcin es la misma que con --dhcp-hostsfile: el archivo dhcp-optsfile ser re-ledo cuando dnsmasq recibe un SIGHUP.
-Z, --read-ethers Leer /etc/ethers en busca de informacin sobre hosts para el servidor DHCP. El formato de /etc/ethers es una direccin de hardware, seguida por ya sea un nombre de host o una direccin IP. Al ser leidas por dnsmasq, estas lneas tienen exctamente el mismo efecto que opciones --dhcp-host que contienen la misma informacin. /etc/ethers es re-leda cuando dnsmasq recibe un SIGHUP.
-O, --dhcp-option=[<network-id>,[<network-id>,]][encap:<opt>,][vendor:[<vendor-class>],][<opt>|option:<opt-name>],[<value>[,<value>]] Especificar opciones diferentes o extra a clientes DHCP. Por predeterminado, dnsmasq enva algunas opciones estndar a clientes DHCP. La mscara de subred y direccin broadcast son fijadas igual a las del host que corre dnsmasq, y el servidor DNS y ruteador a la direccin de la mquina que corre dnsmasq. Si la opcin de nombre de dominio ha sido fijada, es enviada. Esta opcin permite que esos predeterminados sean sobrescritos, o que sean especificadas otras opciones. La opcin a ser enviada puede ser brindada como un nmero decimal o como "option:<option-name>". Los nmeros de opcin estn especificados en RFC2132 y RFCs subsiguientes. El juego de option-names conocido por dnsmasq puede ser descubierto ejecutando "dnsmasq --help dhcp". Por ejemplo, para fijar la ruta predeterminada a 192.168.4.4, hgase un --dhcp-option=3,192.168.4.4 o --dhcp-option=option:router, 192.168.4.4 y para fijar la direccin de servidor de tiempo a 192.168.0.4, hgase un --dhcp-option=42,192.168.0.4 o --dhcp-option=option:ntp-server, 192.168.0.4 La direccin especial 0.0.0.0 es entendida que significa "la direccin de la mquina que corre dnsmasq". Tipos de data permitidos son direcciones IP de cuatro segmentos, un nmero decimal, dgitos hex separados por colones, y un string de texto. Si las network-ids opcionales son brindadas, entonces esta opcin es solo enviada cuando todas las network-ids coinciden. Procesamiento especial es llevado a cabo en un argumento de texto para la opcin 119, en conforme con RFC3397. Direcciones IP textuales o de cuatro segmentos como argumentos a la opcin 120 son manejados mediante RFC3361. Direcciones IP de cuatro segmentos que son seguidas por un diagonal (slash) y despus una mscara son codificados mediante RFC3442. Tener cuidado: niguna verificacin es hecha sobre si el nmero de tipo correcto es enviado, y es muy posible persuadir a dnsmasq para que genere paquetes DHCP ilegales mediante uso inadecuado de esta opcin. Cuando el valor es un nmero decimal, dnsmasq debe determinar qu tan grande es el objeto de data. Esto es hecho mediante una examinacin del nmero de opcin, y/o el valor, pero puede ser invalidado agregndole una opcin de una sola letra de esta forma: b = un byte, s = dos bytes, i = cuatro bytes. Esto es principalmente til con opciones encapsuladas tipo vendedor (ver abajo) donde dnsmasq no puede determinar el tamao de data usando el nmero de opcin. Data de opcin la cual consiste solo de puntos y dgitos ser interpretada por dnsmasq como una direccin IP, y ser insertada dentro de una opcin de esa manera. Para forzar un string literal, usar comillas. Por ejemplo, cuando se usa la opcin 66 para enviar una IP literal como un nombre de servidor TFTP, es necesario hacer: --dhcp-option=66,"1.2.3.4" Opciones encapsuladas vendor-class tambin pueden ser especificadas usando --dhcp-option: por ejemplo --dhcp-option=vendor:PXEClient,1,0.0.0.0 enva la opcin especfica de clase de vendedor "mftp-address=0.0.0.0" a cualquier cliente cuyo vendor-class coincida con "PXEClient". El revisado de coincidencias vendor-class est basado en substrings (ver --dhcp-vendorclass para detalles). Si una opcin vendor-class (nmero 60) es enviada por dnsmasq, entonces es usada para seleccionar opciones encapsuladas en preferencia sobre cualquiera enviada por el cliente. Es posible omitir el vendorclass completamente; --dhcp-option=vendor:,1,0.0.0.0 caso en el cul la opcin encapsulada siempre es enviada. Opciones pueden ser encapsuladas dentro de otras opciones, por ejemplo: --dhcp-option=encap:175, 190, "iscsi-client0" enviar opcin 175, dentro de la cual est opcin 190. Si mltiples opciones son brindadas que estn encapsuladas con el mismo nmero de opcin entonces sern correctamente combinadas en una opcin encapsulada. encap: y vendor: no pueden ser fijadas ambas dentro de la misma opcin dhcp-option. La direccin 0.0.0.0 no es tratada de forma especial en opciones encapsuladas.
--dhcp-option-force=[<network-id>,[<network-id>,]][encap:<opt>,][vendor:[<vendor-class>],]<opt>,[<value>[,<value>]] Esto funciona exctamente de la misma forma que --dhcp-option excepto que la opcin siempre ser enviada, an si el cliente no la pide en la lista de pedido de parmetros. Esto se necesita aveces, por ejemplo cuando enviando opciones a PXELinux.
--dhcp-no-override Deshabilitar la reutilizacin de los campos DHCP de nombre de servidor y archivo como espacio para opciones extra. Si puede, dnsmasq mueve la informacin del servidor boot y del nombre de archivo (de dhcp-boot) de sus campos dedicados hacia opciones DHCP. Esto crea espacio extra en el paquete DHCP para opciones, pero puede raramente confundir clientes viejos o defectuosos. Esta opcin forza comportamiento "simple y sencillo" para prevenir problemas en tales casos.
-U, --dhcp-vendorclass=<network-id>,<vendor-class> Trazar desde un string vendor-class a un network id. La mayora de los clientes DHCP proveen una "vendor class" la cual representa, en cierto sentido, el tipo de host. Esta opcin traza clases de vendedor a network ids, de tal forma que opciones DHCP pueden ser selectivamente entregadas a diferentes clases de hosts. Por ejemplo dhcp-vendorclass=printers,Hewlett-Packard JetDirect peritira que opciones sean fijadas solo para impresoras HP as: --dhcp-option=printers,3,192.168.4.4 El string vendor-class es coordinado con el vendor-class proveido por el cliente, para permitir coincidencias borrosas.
-j, --dhcp-userclass=<network-id>,<user-class> Trazar desde un string user-class a un network id (con coordinacin substring, como con vendor-class). La mayora de los clientes DHCP proveen un "user class" el cual es configurable. Esta opcin traza clases user a network ids, de tal manera que opciones DHCP puedan ser selectivamente enviadas a diferentes tipos de hosts. Es posible, por ejemplo, usar esto para especificar una impresora diferente para hosts en la clase "cuentas" que para los de la clase "ingenieria".
-4, --dhcp-mac=<network-id>,<direccin MAC> Trazar desde una direccin MAC a una network id. La direccin MAC puede incluir comodnes. Por ejemplo: --dhcp-mac=3com,01:34:23:*:*:* fijara el tag "3com" a cualquier host el cual su MAC coincida con el patrn.
--dhcp-circuitid=<network-id>,<circuit-id>, --dhcp-remoteid=<network-id>,<remote-id> Trazar de opciones agente de relay RFC3046 a opciones network-id. Estos datos pueden ser provedos por agentes de relay DHCP. El circuit-id o remote-id es normlamente brindado como hex separado por doblepuntos, pero tambin se permite un string simple. Si se obtiene una coincidencia exacta entre el circuit o agent ID y uno provedo por un agente de relay, network-id es fijado.
--dhcp-subscrid=<network-id>,<subscriber-id> Trazar de opciones relay subscriber-id RFC3993 a opciones network-id.
--dhcp-match=<network-id>,<option number>|option:<option name>[,<value>] Sin un valor, fijar la etiqueta network-id si el cliente enva una opcin DHCP del nmero o valor brindado. Cuando un valor es brindado, fijar la etiqueta solo si la opcin es enviada y coincide con el valor. El valor puede ser de la forma "01:ff:*:02", caso en el cual el valor debe coincidir (aparte de los comodines) pero la opcin enviada puede tener data que no coincide despues del final del valor. El valor tambin puede ser de la misma forma que dhcp-option caso en el cual la opcin enviada es tratada como un array, y un elemento debe coincidir, as que --dhcp-match=efi-ia32,option:client-arch,6 fijar la etiqueta a "efi-ia32" si el nmero 6 aparece en la lista de architecturas enviada por los clientes en opcin 93. (Ver RFC 4578 para detalles.) Si el valor es un string, coincidencia substring es usada. -J, --dhcp-ignore=<network-id>[,<network-id>] Cuando todos los network ids brindados coincidan con el juego de network ids derivados de las clases net, host, y vendor, ignorar el host y no brindarle un arriendo DHCP.
--dhcp-ignore-names[=<network-id>[,<network-id>]] Cuando todos los network-ids brindados coinciden con el juego de network-ids derivado de la red, host, classes de vendedor y usuario, ignorar cualquier nombre de host proveido por el host. Ntese que, a diferencia de dhcp-ignore, es permisible no brindar ningn tag netid, y en tal caso nombres de host proveidos por clientes DHCP siempre son ignorados, y hosts DHCP son agregados al DNS usando solo la configuracin dhcp-host en dnsmasq y el contenido de /etc/hosts y /etc/ethers.
--dhcp-broadcast=<network-id>[,<network-id>] Cuando todos los network-ids brindados coinciden con el juego de network-ids derivados de la red, host, clases de vendedor y usuarios, siempre usar broadcast para comunicarse con el host cuando est sin configurar. La mayora de clientes DHCP que necesitan respuestas broadcast fijan una opcin en sus pedidos para que esto pase automaticamente, algunos clientes BOOTP viejos no lo hacen.
-M, --dhcp-boot=[net:<network-id>,]<filename>,[<servername>[,<server address>]] Fijar opciones BOOTP que han de ser devueltas por el servidor DHCP. Nombre y direccin de servidor son opcionales: si no son brindadas, el nombre es dejado en blanco, y la direccin es fijada a la de la mquina que corre dnsmasq. Si dnsmasq est brindando servicio TFTP (ver --enable-tftp ) entonces solo el nombre de archivo es requirido aqu para habilitar el inicio atravz de una red. Si las opcionales network-ids son brindadas, ellas debern coincidir para que esta configuracin sea enviada. Ntese que network-ids estn prefijadas con "net:" para distinguirlas.
--pxe-service=[net:<network-id>,]<CSA>,<texto de men>,<nombre base>|<tipo de servicio boot>[,<direccin de servidor>] La mayora de usos para boot-ROMS PXE simplemente permiten al sistema PXE obtener una direccin IP y entonces bajar el archivo especificado por dhcp-boot y ejecutarlo. Sin embargo, el sistema PXE es capaz de llevar a cabo funciones ms complejas cuando estn soportadas por un servidor DHCP adecuado. Esto especifica una opcin boot que puede aparecer en un men de boot PXE. <CSA> es tipo de sistema de cliente, solo servicios del tipo correcto aparecern en un men. Los tipos conocidos son x86PC, PC98, IA64_EFI, Alpha, Arc_x86, Intel_Lean_Client, IA32_EFI, BC_EFI, Xscale_EFI y X86-64_EFI; un nmero entero puede ser utilizado para otros tipos. El parmetro despus del texto de men puede ser un nombre de archivo, caso en el cul dnsmasq acta como un servidor boot y le ordena al cliente PXE bajar el archivo va TFTP, ya sea de s mismo ( enable-tftp debe estar fijado para que esto funcione) o desde otro servidor TFTP si la direccin IP final es brindada. Ntese que el sufijo "layer" (normalmente ".0") es brindado por PXE, y no debe ser agregado al nombre base. Si un nmero entero es brindado en vez de un nombre base, entonces el cliente PXE buscar un servicio boot adecuado para ese tipo de red. Esta bsqueda puede ser hecha mediante multicast o broadcast, o directamente a un servidor si la direccin IP es brindada. Un tipo de servicio boot de 0 es especial, y abortar el proceso boot de red y continuar desde medio local.
--pxe-prompt=[net:<network-id>,]<prompt>[,<timeout>] Fijar esto hace que un aviso sea expuesto despues del boot PXE. Si el timeout es brindado, entonces despues que el timeout se haya vencido sin input del teclado, la primera opcin del men sera automaticamente ejecutada. Si el timeout es cero entonces la primera opcin del men sera automaticamente ejecutada. Si pxe-prompt es omitido, el sistema esperar para el input del usuario si hay mltiples artculos en el men, pero har boot imediatamente si hay solo uno. Ver pxe-service para detalles sobre artculos de menu. Dnsmasq tiene soporte para "proxy-DHCP" PXE, en este caso otro servidor DHCP en la red es responsable por asignar direcciones IP, y dnsmasq simplemente provee la direccin brindada en pxe-prompt y pxe-service para permitir boot a travez de la red. Este modo es habilitado usando la palabra clave proxy en dhcp-range.
-X, --dhcp-lease-max=<nmero> Limita a dnsmasq a el nmero especificado de arriendos DHCP. El predeterminado es 150. El limite es para prevenir ataques DoS desde hosts que crean cientos de arriendos y usan mucha de la memoria del proceso dnsmasq.
-K, --dhcp-authoritative Esta opcin debe ser fijada cuando dnsmasq es definitivamente el nico servidor DHCP en la red. Cambia el comportamiento de RFC de tal manera que pedidos desde hosts no conocidos no sern ignorados. Esto permite que hosts nuevos puedan conseguir un arriendo sin sin un timeout bajo toda circunstancia. Tambin permite que dnsmasq reconstruya su base de datos de arriendos sin que cada cliente necesite readquirir un arriendo si la base de datos es perdida.
--dhcp-alternate-port[=<puerto de servidor>[,<puerto de cliente>]] Cambiar del predeterminado los puertos usados para DHCP. Si esta opcin es brindada sola, sin argumentos, cambia los puertos usados para DHCP de 67 y 68 a 1067 y 1068. Si un solo argumento es brindado, ese puerto es usado para el servidor y el nmero de puerto mas uno es usado para el cliente. Finalmente, dos nmeros permiten que se especifiquen ambos los puertos de servidor y cliente para DHCP.
-3, --bootp-dynamic[=<network-id>[,<network-id>]] Habilitar alocacin dinmica de direcciones IP a clientes BOOTP. Usar esto con cuidado, ya que cada direccin alocada a un cliente BOOTP es arrendada para siempre, y consecuentemente queda no-disponible para re-uso por otros hosts. Si esto es brindado sin etiquetas, entonces incondicionalmente habilita alocacin dinmica. Con etiquetas, solo cuando todas las etiquetas estn fijadas. Puede ser repetido con diferentes juegos de etiquetas.
-5, --no-ping Por predetermindado, el servidor DHCP tratar de asegurarse que una direccin no est en uso antes de alocarsela a un host. Hace esto enviando un echo ICMP (ping) a la direccin referente. Si recibe una respuesta, entonces la direccin debe estar siendo usada, y se repite la prueba con otra. Esta opcin deshabilita esta prueba. Usar con cuidado.
--log-dhcp Bitacoro extra para DHCP: Bitacorear todas las opciones enviadas a clientes DHCP y las etiquetas netid usadas para determinarlos.
-l, --dhcp-leasefile=<path> Usar el archivo especificado para almacenar informacin de arriendos DHCP.
-6 --dhcp-script=<path> Cuando un arriendo DHCP nuevo es creado, o uno viejo es destruido, el ejecutable especificado por esta opcin es ejecutado. Los argumentos para el binario son "add", "old", o "del", la direccin MAC del host, la direccin IP, y el hostname, si es conocido. "add" significa que un arriendo ha sido creado, "del" que ha sido destruido, y "old" es una notificacin de un arriendo existente cuando dnsmasq inicia o un cambio a una MAC o nombre host de un arriendo existente (tambin, tiempo de arriendo o vencimiento y client-id, si leasefile-ro est fijado). Si la direccin MAC es de un tipo de red que no es ethernet, tendr el tipo de red precolocado, por ejemplo "06-01:23:45:67:89:ab" para token ring. El proceso es ejecutado como root (asumiendo que dnsmasq fue originalmente ejecutado como root) an si dnsmasq est configurado para cambiar su UID a un usuario sin privilegios. El ambiente es heredado del usuario que ha invocado a dnsmasq, y si el host brind un client-id, es almacenado en la variable de ambiente DNSMASQ_CLIENT_ID. Si el dominio completamente calificado del host es conocido, la parte de dominio es almacenada en DNSMASQ_DOMAIN. Si el cliente brinda informacin de clase de vendedoro usuario, estos son brindados en las variables DNSMASQ_VENDOR_CLASS y DNSMASQ_USER_CLASS0..DNSMASQ_USER_CLASSn, pero solo para acciones "add" y "old" cuando un host resume un arriendo existente, dado a que estos datos no son almacenados en la base de datos de arriendos de dnsmasq. Si dnsmasq fue compilado con HAVE_BROKEN_RTC, entonces la duracin del arriendo (en segundos) es almacenada en DNSMASQ_LEASE_LENGTH, de otra manera el tiempo de vencimiento es almacenado en DNSMASQ_LEASE_EXPIRES. El nmero de segundos faltante para el vencimiento del arriendo siempre es almacenado en DNSMASQ_TIME_REMAINING. Si un arriendo sola tener un nombre de host, el cual es removido, un evento "old" es generado con el nuevo estado del arriendo, (por ejemplo, sin nombre), y el nombre anterior es brindado en la variable de ambiente DNSMASQ_OLD_HOSTNAME. DNSMASQ_INTERFACE almacena el nombre de la interface en la cual lleg el pedido; esto no es fijado para acciones "viejas" cuando dnsmasq re-inicia. Todos los descriptores de archivo estn cerrados excepto stdin, stdout, y stderr los cuales estn abiertos a /dev/null (excepto en modo debug). Este guin no es invocado concurrentemente: si cambios de arriendos subsiguientes ocurren, el guin no es invocado otra vez hasta que cualquier invocacin existente haga exit. Al inicio de dnsmasq, el guin ser invocado para todos los arriendos existentes mientras van siendo ledos desde el archivo de arriendos. Arriendos vencidos sern llamados con "del" y otros con "old". <path> debe ser un path absoluto, ninguna bsqueda PATH ocurre. Cuando dnsmasq recibe una seal HUP, el guin ser invocado para arriendos existentes con un evento "old".
--dhcp-scriptuser Especificar el usuario como el cual se debe correr el archivo guin de cambio de arriendos. Este es root por predeterminado, pero puede ser cambiado a otro usuario mediante esta opcin.
-9, --leasefile-ro Suprimir completamente el uso del archivo de arriendos. El archivo no ser creado, ledo, ni escrito. Cambiar la manera en la cul el archivo guin de cambio de arriendo (si es brindado) es llamado, de tal forma que la base de datos de arriendospueda ser mantenida en almacenaje externo por el archivo guin. Adicionlmente a las invocaciones brindadas en --dhcp-script el archivo de cambio de arriendos es llamado una vez, al inicio de dnsmasq, con el nico argumento "init". Cuando invocado de esta forma, el guin debera escribir el estado guardado de la base de datos de arriendos, en formato de archivo de arriendos dnsmasq, a stdout y hacer exit con cdigo exit cero. Fijar esta opcin tambin forza que el archivo de cambio de arriendos sea llamado cuando hay cambios hechos a el client-id y tiempos de arriendo y vencimiento.
--bridge-interface=<nombre de interface>,<alias>[,<alias>] Tratar paquetes de pedidos DHCP que llegan a cualquiera de las interfaces <alias> como si hubieran llegado a la interface <nombre de interface>. Esta opcin es necesaria al usar bridging estilo viejo en plataformas BSD, dado a que los paquetes llegan a interfaces tap que no tienen una direccin IP.
-s, --domain=<dominio>[,<rango de IPs>] Especifica los dominios DNS para el servidor DHCP. Dominios pueden ser brindados incondicionalmente (sin el rango de IPs) o para rangos limitados. Esto tiene dos efectos: Primeramente, causa que el servidor DHCP le devuelva el dominio a cualquier host que lo pida. Segundamente, fija el dominio para el cual es legal para hosts configurados mediante DHCP reclamar. La intencin es restringir nombres de host para que un host no-confiado en la LAN no pueda proclamar su nombre va DHCP, como por ejemplo "microsoft.com" y capturar trfico no destinado a ella. Si ningn sufijo de dominio es especificado, entonces cualquier nombre de host con una parte de dominio (o sea con un punto) ser negada y bitacorada. Si un sufijo es especificado, entonces nombres de host con una parte de dominio son permitidos, con tal que la parte de dominio coincida con el sufijo. Adicionalmente, cuando un sufijo es fijado, entonces nombres de host sin parte de dominio tienen el sufijo agregado como una parte de dominio opcional. Por ejemplo, en mi red puedo fijar --domain=thekelleys.org.uk y tener una maquina cuyo nombre host DHCP es "laptop". La direccin IP de esa mquina es disponible desde dnsmasq como "laptop" y "laptop.thekelleys.org.uk". Si el dominio es brindado como "#" entonces el dominio es leido desde la primera directiva search en /etc/resolv.conf (o equivalente). El rango de direcciones puede ser <direccin IP>,<direccin IP> or <direccin IP>/<mscara de subred>. Ver --dhcp-fqdn el cual puede cambiar el comportamiento de dnsmasq con dominios.
--dhcp-fqdn En el modo predeterminado, dnsmasq pone los nombres no-calificados de clientes DHCP en el DNS. Por esta razn, los nombres deben ser nicos, an si dos clientes que tienen el mismo nombre estn en dominios diferentes. Si un segundo cliente DHCP aparece el cual tiene el mismo nombre que un cliente existente, el nombre es transferido al cliente nuevo. Si --dhcp-fqdn est fijado, este comportamiento cambia: El nombre no-calificado no es puesto en el DNS, solo el nombre calificado. Dos clientes DHCP con el mismo nombre pueden ambos quedarse con el nombre, con tal que la parte de dominio sea diferente (o sea que los nombres completamente calificados difieran). Para asegurar que todos los nombres tengan una parte de dominio, debe haber al menos --domain sin una direccin especificada cuando --dhcp-fqdn est fijado.
--enable-tftp Habilitar la funcin de servidor TFTP. Esto est deliberadamente limitado a lo necesario para hacerle a un cliente un inicio va red. Solo lectura es permitida; las extensiones tsize y blksize son soportadas (tsize solo es soportada en modo octeto).
--tftp-root=<directorio> Buscar, relativo al directorio brindado, archivos para transferir mediante el uso de TFTP. Cuando esta opcin est fijada, paths TFTP que incluyen ".." son rechazados, para prevenir que clientes salgan de la raz especificada. Paths absolutos (los que comienzan con "/") estn permitidos, pero deben estar dentro del tftp-root.
--tftp-unique-root Agregar la direccin IP del cliente TFTP como un componente path del lado del TFTP-root (en formato estndar de cuatro puntos). Solo vlido si un tftp-root est fijado y el directorio existe. Por ejemplo, si tftp-root es "/tftp" y el cliente 1.2.3.4 pide el archivo "miarchivo" entonces el path efectivo ser "/tftp/1.2.3.4/miarchivo" si /tftp/1.2.3.4 existe o /tftp/miarchivo si no.
--tftp-secure Habilitar modo TFTP seguro: sin esto, cualquier archivo que es leble por el proceso dnsmasq bajo reglas normales de control de acceso UNIX, est disponible va TFTP. Cuando la opcin --tftp-secure es fijada, solo archivos pertenecientes al usuario que corre el proceso dnsmasq estn accesibles. Si dnsmasq est corriendo como root, reglas diferentes aplican: --tftp-secure no tiene ningn efecto, pero solo archivos que tienen el bit de lectura global fijados estn accesibles. No se recomienda correr dnsmasq como root con TFTP habilitado, y mucho menos sin especificar --tftp-root, ya que se puede exponer cualquier archivo de lectura global en el servidor a cualquier host de la red.
--tftp-max=<conecciones> Fijar el nmero mximo permitido de conecciones TFTP simultneas. Esto es 50 por predeterminado. Al servir un nmero grande de conecciones TFTP, lmites de descriptor de archivo por proceso pueden ser encontrados. Dnsmasq necesita un descriptor de archivo por cada coneccion TFTP concurrente, y por archivo nico (mas algunos otros). De tal manera que servirle el mismo archivo simultneo a n clientes requerir el uso de n + 10 descriptores de archivo, y servirles archivos diferentes simultneamente requerir (2*n) + 10 descriptores. Si --tftp-port-range es brindado, eso puede afectar el nmero de conexiones simultneas.
--tftp-no-blocksize No permitir que el servidor negocie la opcin "blocksize" con un cliente. Algunos clientes con errores piden esta opcin pero se portn mal cuando se les brinda.
--tftp-port-range=<inicio>,<final> Un servidor TFTP escucha por inicios de conexin en un puerto bien conocido (69), pero tambien usa un puerto dinamicamente seleccionado para cada conexin. Normalmente estos son seleccionados por el sistema operativo, pero esta opcin especifica un rango de puertos para ser usado por transferencias TFTP. Esto puede ser til cuando TFTP tiene que pasar atraves de un firewall. El comienzo del rango no puede ser menor a 1025 a menos que dnsmasq est corriendo como root. El nmero de conexiones simultneas est limitado por el tamao del rango de puertos.
-C, --conf-file=<archivo> Especificar un archivo de configuracin diferente. La opcin conf-file tambin es permitida en archivos de configuracin, para incluir mltiples archivos de configuracin.
-7, --conf-dir=<directorio> Leer todos los archivos dentro del directorio brindado como archivos de configuracin. Archivos cuyos nombres terminen con ~ o comienzen con . o comienzen y terminen con # son ignorados. Esta opcin puede ser brindada en la lnea de comandos o en un archivo de configuracin.
Al recibir un SIGUSR1, dnsmasq escribe estadsticas a la bitcora del sistema. Escribe el tamao del cach, el numero de nombres que han tenido que ser removidos del cach antes de que vencieran para hacer espacio para nombres nuevos, y el nmero total de nombres que han sido insertados en el cach. Para cada servidor upstream brinda el nmero de bsquedas enviadas, y el nmero que resultaron en error. En modo --no-daemon o cuando bitacoro completo est habilitado (-q), una descarga completa de el contenido del cach es hecha.
Cuando recibe un SIGUSR2 y est bitacoreando dirctamente a un archivo (ver --log-facility ) dnsmasq cerrar y reabrir el archivo de bitcora. Ntese que durante esta operacin, dnsmasq no estar corriendo como root. Al crear el archivo de bitcora, dnsmasq cambia el dueo del archivo a el usuario normal como el que correr. Logrotate debe ser configurado para crear un archivo de bitcora nuevo con permisos iguales al existente, antes de enviar SIGUSR2. Si bsquedas DNS TCP estn en progreso, el archivo de bitcora viejo se mantendr abierto en procesos hijos que estn manejando bsquedas TCP, y puede continuarse a escribirle. Hay un lmite de 150 segundos, despus de lo cual todos los procesos TCP existentes se habrn vencido: por esta razn, no es sabio configurar compresin de archivos de bitcora para archivos que acaban de ser rotados. Con logrotate, las opciones requeridas son create y delaycompress.
Dnsmasq es un reenviador de bsquedas DNS: no puede responder bsquedas arbitrarias comenzando desde los servidores root pero reenva dichas bsquedas a un servidor DNS recursivo, el cual es tpicamente provedo por el proveedor de Internet. Por predeterminado, dnsmasq lee /etc/resolv.conf para descubir las direcciones IP de los servidores DNS upstream que debe usar, dado a que esta informacin es normalmente almacenada all. Amenos que --no-poll sea usado, dnsmasq revisa el tiempo de modificacin de /etc/resolv.conf (o equivalente si --resolv-file es usado) y lo re-lee si ha cambiado. Esto permite que servidores DNS san fijados dinmicamente va PPP o DHCP ya que ambos protocolos brindan esta informacin. La ausencia de /etc/resolv.conf no es un error ya que pudo haber sido creada antes de que una conexin PPP haya existido. Dnsmasq simplemente sigue revisando en caso de que /etc/resolv.conf sea creado en algn momento. A dnsmasq se le puede decir que revise ms de un archivo resolv.conf. Esto es til en una laptop, donde ambos PPP y DHCP podran estar siendo usados: dnsmasq puede ser fijado para revisar ambos /etc/ppp/resolv.conf y /etc/dhcpc/resolv.conf y usar el contenido del que haya cambiado mas recientemente, brindando as la habilidad de cambio automtico entre servidores DNS.
Servidores upstream tambin pueden ser especificados en la lnea de comandos o en el archivo de configuracin. Estas especificaciones de servidor opcionalmente llevan un nombre de dominio el cual le dice a dnsmasq que debe usar ese servidor solo para encontrar nombres en ese dominio en particular.
Para configurar dnsmasq como cach para el host donde est corriendo, poner un "nameserver 127.0.0.1" en /etc/resolv.conf para as forzar procesos locales a enviar bsquedas a dnsmasq. Entonces, o especificar los servidores upstream dirctamente a dnsmasq usando opciones --server o poniendo sus direcciones reales en otro archivo, digamos /etc/resolv.dnsmasq y correr dnsmasq con la opcion -r /etc/resolv.dnsmasq Esta segunda tcnica permite la actualizacin dinmica de las direcciones de servidor mediante PPP o DHCP.
Direcciones en /etc/hosts "harn sombra" a diferentes direcciones para los mismos nombres en servidores DNS upstream, as que "miempresa.com 1.2.3.4" en /etc/hosts se asegurar que las bsquedas por "miempresa.com" siempre retornarn 1.2.3.4 an si bsquedas en el servidor DNS upstream devolveran una direccin diferente. Hay una excepcin a esto: si el servidor DNS upstream contiene un CNAME que apunta a un nombre sombreado, entonces buscando el CNAME a travz de dnsmasq resultar en que la direccin no-sombreada ser asociada con el destino del CNAME. Para circumventar esto, agregar el CNAME a /etc/hosts de tal manera que el CNAME es sombreado tambin.
El sistema network-id funciona de la siguiente manera: Para cada pedido DHCP, dnsmasq colecciona un juego de etiquetas network-id vlidas, una del dhcp-range usado para alocar la direccin, una de cualquier dhcp-host que coincida (y "known" si un dhcp-host coincide), la etiqueta "bootp" para pedidos BOOTP, una etiqueta cuyo nombre es el nombre de la interface donde lleg el pedido, y posiblemente muchas de clases de vendedor y usuario que coincidan que hayan sido enviadas por el cliente DHCP. Cualquier opcin dhcp-option que tenga etiquetas network-id ser usada en preferencia de una opcin dhcp-option, sin etiqueta, con tal que _todas_ las etiquetas coincidan en alguna parte del juego coleccionado describido arriba. El prefijo "#" en una etiqueta significa "no" as que --dhcp=option=#purple,3,1.2.3.4 enva la opcin cuando la etiqueta network-id "purple" no est en el juego de etiquetas vlidas.
Si el network-id en un dhcp-range es prefijado con "net:", entonces su significado cambia de "fijar etiqueta" a "coincidir con etiqueta". O sea que si hay ms de un dhcp-range en en una subred, y uno tiene una etiqueta network-id la cual est fijada (por ejemplo una opcin de clase de vendedor) entonces hosts que fijen la etiqueta network-id sern alocados direcciones en el rango etiquetado.
El servidor DHCP de dnsmasq funcionar como servidor BOOTP tambien, con tal que las direcciones MAC y IP de los clientes sean brindadas, ya sea usando configuraciones dhcp-host o en /etc/ethers , y una configuracin dhcp-range est presente para activar el servidor DHCP en una red particular. (Fijar --bootp-dynamic elimina la necesidad de trazados estticos.) El parmetro de nombre de archivos en un pedido BOOTP es revisado para ver si coincide con algn network-id en configuracines dhcp-option al igual que la etiqueta "bootp", permitiendo as algn control sobre las opciones devueltas a diferentes clases de hosts.
0 - Dnsmasq hizo fork hacia el fondo exitosamente, o termin de manera normal si ir al fondo no est habilitado.
1 - Un problema con la configuracin ha sido detectado.
2 - Un problema con acceso a redes ocurri (direccin en uso, intento de usar puertos privilegiados sin permiso).
3 - Un problema con una operacin de sistema de archivos ocurri (archivo o directorio ausente, permisos).
4 - Falla de alocacin de memoria.
5 - Otro problema miscelneo.
11 o mayor - un codigo de retorno no cero fu recibido del llamado "init" del proceso de archivo guin de arriendos. El cdigo exit de dnsmasq es el cdigo exit del archivo guin con 10 sumado.
Dnsmasq es capaz de soportar con DNS y DHCP a por lo menos mil (1,000) clientes. Por supuesto que para lograr esto debe aumentarse el valor de --dhcp-lease-max , y tiempos de arriendo no deben ser muy cortos (menos de una hora). El valor de --dns-forward-max puede ser aumentado: comienze con el equivalente a el nmero de clientes y aumntelo si parece lento el DNS. Ntese que el rendimiento DNS depende tambin de los servidores DNS upstream. El tamao del cach DNS puede ser incrementado: el lmite obligatorio es 10,000 nombres y el predeterminado (150) es muy bajo. El enviarle un SIGUSR1 a dnsmasq hace que bitacore informacin que es til para afinar el tamao de cach. Ver la seccin NOTAS para detalles.
El servidor TFTP incorporado es capz de soportar varias transferencias simultneas de archivos: el lmite absoluto est relacionado con el nmero de file-handles permitidos a un proceso y la habilidad del system call select() a soportar nmeros grandes de file-handles. Si el lmite es fijado demasiado alto con --tftp-max ser de-escalado y el lmite real ser bitacoreado al inicio. Ntese que ms transferencias son posibles cuando el mismo archivo es enviado qu cuando cada transferencia enva un archivo diferente.
Es posible usar dnsmasq para negar publicidad Web usando una lista de servidores de banners bien conocidos, todos resolviendose a 127.0.0.1 o 0.0.0.0 en /etc/hosts o en un archivo hosts adicional. La lista puede ser muy larga. Dnsmasq ha sido probado exitsamente con un milln de nombres. Ese tamao de archivo necesita un CPU de 1GHz y aproximadamente 60MB de RAM.