PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : [ISC DHCPD3] Klassen auf Teilen der MAC setzen



fork
01.11.06, 14:58
Hallo,

ich hatte gerade das Problem das ich eine Klasse auf der Basis der Hersteller Strings der Netzwerkkarte vergeben wollte. Das sind die ersten 3 Bytes(bzw. 6 Hexzeichen) der MAC-Adresse. Da das nicht so trivial ist und ich aus der Manpage alleine nicht schlau wurde, so gehts...

Warum? Ich möchte nur bestimmten Geräten weitere DHCP-Informationen zur Verfügung stellen. Z. B. diverse Server, bootfile, etc. Dabei werden aber Einstellungen benoetigt die z. B. mit Einstellungen für PXE Boot in Konflikt stehen. Weiterhin sinnvoll finde ich damit die Eingrenzung der Konfiguration von verschiedenen Emulatoren(QEMU, VMWare,...)

Hier der entsprechende Teil der dhcpd.conf:



class "snomphones" {
match if concat(
suffix(concat("0",binary-to-ascii(16,8,"",substring(hardware,1,1))),2),
":",
suffix(concat("0",binary-to-ascii(16,8,"",substring(hardware,2,1))),2),
":",
suffix(concat("0",binary-to-ascii(16,8,"",substring(hardware,3,1))),2)
) = "00:04:13";
log(info,"This client is a snom phone");

}

subnet 172.31.253.0 netmask 255.255.255.0 {

# deny unknown-clients;
allow bootp;
allow booting;

option domain-name "local.dns.zone";
option domain-name-servers 172.31.253.2;
option routers 172.31.253.2;
option broadcast-address 172.31.253.255;
option subnet-mask 255.255.255.0;

default-lease-time 3600;
max-lease-time 14400;

pool {
allow members of "snomphones";
range 172.31.253.90 172.31.253.99;
server-name "http://172.31.253.2";
filename "snom.php?mac={mac}";
next-server 172.31.253.2;
}

pool {
deny unknown-clients;
range 172.31.253.100 172.31.253.130;
filename "pxelinux.0";
next-server 172.31.253.2;
}
}