Générer un nom dynamiquement pour les clients DHCP

Cela est possible en modifiant le fichier de configuration de DHCP. Vous pourrez retrouver tous les éléments dans la page de manuel.

Par exemple rajoutez dans le fichier la ligne ci-dessous pour adapter le nom à partir de l'adresse MAC du client :

#ddns-hostname = binary-to-ascii (16, 8, "-",substring (hardware, 1, 12));

Ou celle-ci pour localiser le client :

ddns-hostname = concat ("dhcp-a-limoges","-",binary-to-ascii(10,8,"-",leased-address));

Avec cette dernière, voici les enregistrements ajoutés :

Added new forward map from dhcp-a-limoges-192-168-0-194.freeduc-sup.org to 192.168.0.194
added reverse map from 194.0.168.192.in-addr.arpa to dhcp-a-limoges-192-168-0-194.freeduc-sup.org
DHCPREQUEST for 192.168.0.194 from 00:08:c7:25:ca:7c via eth0
DHCPACK on 192.168.0.194 to 00:08:c7:25:ca:7c (bestof) via eth0

Le fichier des incriptions :

root@master:/home/knoppix# more /var/lib/dhcp3/dhcpd.leases
lease 192.168.0.194 {
  starts 2 2003/05/06 17:38:38;
  ends 2 2003/05/06 17:48:38;
  binding state active;
  next binding state free;
  hardware ethernet 00:08:c7:25:ca:7c;
  set ddns-rev-name = "194.0.168.192.in-addr.arpa";
  set ddns-txt = "00e31b2921cd30bfad552ca434b61bda02";
  set ddns-fwd-name = "dhcp-192-168-0-194.freeduc-sup.org";
  client-hostname "bestof";
}

Les transferts de zones directes et inverses :

root@master:/home/knoppix/tmp# dig @127.0.0.1 freeduc-sup.org axfr

; <<>> DiG 9.2.2 <<>> @127.0.0.1 freeduc-sup.org axfr
;; global options:  printcmd
freeduc-sup.org.        86400   IN      SOA     master.freeduc-sup.org. root.freeduc-sup.org. 2004050116 10800 3600 604800 38400
freeduc-sup.org.        86400   IN      NS      master.freeduc-sup.org.
freeduc-sup.org.        86400   IN      MX      10 master.freeduc-sup.org.
0-8-c7-25-ca-7c.freeduc-sup.org. 300 IN TXT     "00e31b2921cd30bfad552ca434b61bda02"
0-8-c7-25-ca-7c.freeduc-sup.org. 300 IN A       192.168.0.194
argo.freeduc-sup.org.   86400   IN      A       192.168.0.253
dhcp-192-168-0-194.freeduc-sup.org. 300 IN TXT  "00e31b2921cd30bfad552ca434b61bda02"
dhcp-192-168-0-194.freeduc-sup.org. 300 IN A    192.168.0.194
dhcp-a-limoges-192-168-0-194.freeduc-sup.org. 300 IN TXT "00e31b2921cd30bfad552ca434b61bda02"
dhcp-a-limoges-192-168-0-194.freeduc-sup.org. 300 IN A 192.168.0.194
master.freeduc-sup.org. 86400   IN      A       192.168.0.1
www.freeduc-sup.org.    86400   IN      CNAME   master.freeduc-sup.org.
freeduc-sup.org.        86400   IN      SOA     master.freeduc-sup.org. root.freeduc-sup.org. 2004050116 10800 3600 604800 38400
;; Query time: 3 msec
;; SERVER: 127.0.0.1#53(127.0.0.1)
;; WHEN: Tue May  6 19:39:08 2003
;; XFR size: 14 records

La zone reverse :

root@master:/home/knoppix/tmp# dig @127.0.0.1 0.168.92.in-addr.arpa axfr

; <<>> DiG 9.2.2 <<>> @127.0.0.1 0.168.92.in-addr.arpa axfr
;; global options:  printcmd
; Transfer failed.
root@master:/home/knoppix/tmp# dig @127.0.0.1 0.168.192.in-addr.arpa axfr

; <<>> DiG 9.2.2 <<>> @127.0.0.1 0.168.192.in-addr.arpa axfr
;; global options:  printcmd
0.168.192.in-addr.arpa. 86400   IN      SOA     master.freeduc-sup.org. root.freeduc-sup.org. 2004050113 10800 3600 604800 38400
0.168.192.in-addr.arpa. 86400   IN      NS      master.freeduc-sup.org.
1.0.168.192.in-addr.arpa. 86400 IN      PTR     master.freeduc-sup.org.
194.0.168.192.in-addr.arpa. 300 IN      PTR     dhcp-192-168-0-194.freeduc-sup.org.
3.0.168.192.in-addr.arpa. 86400 IN      PTR     argo.freeduc-sup.org.
0.168.192.in-addr.arpa. 86400   IN      SOA     master.freeduc-sup.org. root.freeduc-sup.org. 2004050113 10800 3600 604800 38400
;; Query time: 3 msec
;; SERVER: 127.0.0.1#53(127.0.0.1)
;; WHEN: Tue May  6 19:40:08 2003
;; XFR size: 7 records