DHCP: máquinas que consumen dos ips
Un saludo a la lista:
Tengo un pequeño problema, del que creía haber hallado la solución, pero
que no me acaba de funcionar.
Resulta que hay una serie de máquinas que he metido en un rango de ips,
de manera que hay el mismo número de ips que de máquinas. Mientras cada
máquina sólo consuma una ip no hay problema.
Sin embargo, el servidor DHCP usa como criterio para decidir sin un
cliente es el mismo o no, no la MAC, sino preferentemente un
identificador que el cliente le envía. Resulta que linux de modo
predeterminado o el arranque por red no envían ningún identificador,
mientras que windows sí lo hace. La consecuencia es que estos
ordenadores pueden consumir más de una ip y se me fastidia el invento,
porque las ips se acaban.
Estuve leyendo y llegué a esto:
$ man 5 dhcpd.conf
[...]
The duplicates keyword
allow duplicates;
deny duplicates;
Host declarations can match client messages based on the DHCP
Client Identifier option or based on the client's network
hardware type and MAC address. If the MAC address is used, the
host declaration will match any client with that MAC address -
even clients with different client identifiers. This doesn't
normally happen, but is possible when one computer has more than
one operating system installed on it - for example, Microsoft
Windows and NetBSD or Linux.
The duplicates flag tells the DHCP server that if a request is
received from a client that matches the MAC address of a host
declaration, any other leases matching that MAC address should be
discarded by the server, even if the UID is not the same. This
is a violation of the DHCP protocol, but can prevent clients
whose client identifiers change regularly from holding many
leases at the same time. By default, duplicates are allowed.
[...]
Y creí llegar a la solución: incluyo "deny duplicates" en el fichero de
configuración y, si las máquinas están declaradas (que lo están),
recibirán siempre una ip, aunque envíen distinto uid.
Pero no me funciona. No sé si es que no he entendido algo o si me falla
algo.
La configuración pertinente para el caso la tengo así:
#v+
deny duplicates;
[...]
subnet 192.168.129.0 netmask 255.255.255.0 {
option routers 192.168.129.1;
option domain-name-servers 192.168.129.1;
option domain-name "smr2.dominio.com";
option domain-search "smr2.dominio.com", "dominio.com";
option ntp-servers time.smr2.dominio.com;
ddns-domainname "smr2.dominio.com";
ddns-rev-domainname "in-addr.arpa";
option broadcast-address 192.168.129.255;
option aula "smr2";
zone smr2.dominio.com {
primary 127.0.0.1;
key "rndc-key";
}
zone 129.168.192.in-addr.arpa {
primary 127.0.0.1;
key "rndc-key";
}
pool {
allow known-clients;
range 192.168.129.66 192.168.129.66;
}
pool {
deny known-clients;
range 192.168.129.67 192.168.129.254;
}
group {
use-host-decl-names on;
update-static-leases on;
host pc05-vlan9 {
hardware ethernet 00:11:22:33:44:55;
ddns-hostname "pc05";
}
}
}
#v-
Si prueba a fijar un "uid" a dhclient, obtengo la 192.168.129.66, como
es de esperar. Si lo quito y vuelvo a pedir ip, ya no obtengo ninguna,
en vez de obtener la misma; muy a pesar de la cláusula "deny
duplicates". ¿Se me ha pasado algo por alto?
De antemano, gracias.
--
Femmina è cosa mobil per natura.
--- Francisco Petrarca ---
Reply to: