UCS DHCP-Pools und MAC-Deney

Über die Web-GUI lassen sich leider keine Deny-Regeln für MAC-Ranges einpflegen. Für den Betrieb von SIP-Telefonanlagen ist dies aber zwingend erforderlich. Zunächst legt man im LDAP-Browser einen DHCP-Pool für das gewünschte Netz an:

Dann muss eine Erweiterung des UCS-LDAP-Schemas vorgenommen werden:

eval $(ucr shell)
udm settings/extended_attribute create --position "cn=custom attributes,cn=univention,$ldap_base" \
 --set name=dhcpPermitList --set objectClass=univentionDhcpPool \
 --set module="dhcp/pool" --set shortDescription="dhcpPermitList" \
 --set ldapMapping=dhcpPermitList --set syntax=string \
 --set longDescription="permit list" --set tabName="DHCP permit list" \
 --set multivalue=1 --set mayChange=1

Dies fügt dem Pool die „dhcpPermitList“ hinzu.

Die Klassen definiert man im Moment im Subnet unter „Erweiterte Einstellungen“ (Haken unter „Optionen“ → „Allow custom DHCP options“ setzen!) → „Lowlevel DHCP configuration“ → „DHCP Statements“, da es unter dem Pool wegen eines Bugs nicht geht.

Im konkreten Fall von MobyDick tragen wir in unserem Pool folgendes ein:

class "denySNOM" {
        match if substring(hardware,1,3) = 00:04:13;
}
class "denyMITEL" {
        match if substring(hardware,1,3) = 00:08:5D;
}
class "denyYEALINK" {
        match if substring(hardware,1,3) = 00:15:65;
}

class "denyAUERSWALD" {
        match if substring(hardware,1,3) = 00-09-52;
}

class "denySIEMENS1" {
        match if substring(hardware,1,3) = 00-01-E3;
}

class "denySIEMENS2" {
        match if substring(hardware,1,3) = 00-1A-E8;
}

Im Pool tragen wir dann in der Permitlist die hier angelegten Klassen ein:

:!: Alle anderen DHCP-Einstellungen für das Netzt müssen jetzt auch am Pool vorgenommen werden :!:

Siehe auch:
http://forum.univention.de/viewtopic.php?f=48&t=3524
https://docs.software-univention.de/handbuch-4.1.html#ip-config:Verwaltung_von_DHCP-Pools
http://forum.univention.de/viewtopic.php?f=48&t=3524
http://docs.software-univention.de/manual-4.1.html#central:extendedattrs
https://forge.univention.org/bugzilla/show_bug.cgi?id=32557