DHCP option definieren

Guten Tag

Wir müssen globale DHCP “options” setzen und diese danach in den subnet welche korrekt im UMC angeleget werden wieder verwenden und mit Werten abfüllen.

Beispiel in der Datei /etc/dhcp/local.conf erfasst:

option space PXE;
option PXE.discovery-control code 6 = {
        unsigned integer 8
};

option PXE.boot-server code 8 = {
        unsigned integer 16,
        unsigned integer 8,
        ip-address
};

option PXE.boot-menu code 9 = {
        unsigned integer 16,
        unsigned integer 8,
        text
};

option PXE.menu-prompt code 10 = {
        unsigned integer 8,
        text
};

Danach wird ein subnet im UMC erfasst, die Ausgabe ist aus der Datei /var/log/dhcp-ldap-startup.log:

subnet 10.0.16.0 netmask 255.255.255.0 {                     
range 10.0.16.101 10.0.16.199;                               
option broadcast-address 10.0.16.255;                        
option routers 10.0.16.1;                                    
option domain-name "test.local";                     
option domain-name-servers 10.9.42.111;  
} 

Wie kann ich nun diesem subnet die global options zuweisen und mit den richtigen Werten versehen?

subnet 10.0.16.0 netmask 255.255.255.0 {                     
range 10.0.16.101 10.0.16.199;                               
option broadcast-address 10.0.16.255;                        
option routers 10.0.16.1;                                    
option domain-name "test.local";                     
option domain-name-servers 10.9.42.111;  
# spezial
        option vendor-class-identifier "PXEClient";
        vendor-option-space PXE;
        option PXE.discovery-control 7;
        option PXE.boot-server 15 1 10.9.42.71;
        option PXE.boot-menu 15 5 "Rembo";
        option PXE.menu-prompt 0 "Rembo";
}

Kann man ein subnet doppelt definieren? einmal im UMC/LDAP und die spezial options im local.conf?
Wie kann man die komplette DHCP-Konfiguration ausgeben, damit man sieht wie die Mischung zwischen UMC/LDAP und der local.conf aussieht? mit dhcpd -t gibt es keine Syntax Fehler.

Es würde auch noch die Möglichkeit geben mit ldapmodify folgende Sachen zu erweitern, das ist aber sehr aufwändig. Als beispiel ist hier die wpad DHCP-Option zu betrachten:

dn: cn=schule1,cn=dhcp,ou=schule1,dc=test,dc=local
cn: schule1
univentionObjectType: dhcp/service
objectClass: top
objectClass: univentionDhcpService
objectClass: dhcpOptions
objectClass: univentionObject
objectClass: univentionPolicyReference
univentionPolicyReference: cn=default-settings,cn=dns,cn=dhcp,cn=policies,dc=test,dc=local
dhcpOption: wpad code 252 = text;
dhcpOption: wpad "http://dcschule1.test.local/proxy.pac";

Besten Dank für Hilfe.

Grüsse, RolandB

Hallo,

vermutlich können Sie die zusätzlichen DHCP Option über UCR sowie das “options” Attribut der DHCP-Services konfigurieren. Beispiele und Details zur Implementation dazu finden Sie im Forum und im Bugzilla:[ul]
[li]Routing per DHCP übergeben[/li]
[li]ntp-servers in dhcpd.conf[/li]
[li][bug]26838[/bug][/li][/ul]

Mit freundlichen Grüßen
Janis Meybohm

Guten Tag

So einfach ist es leider nicht. Ich habe nun begriffen wie Univention das möchte. Auf dem DHCP-Server werden die DHCP-Options definiert (die werden dann in die dhcpd.conf geschrieben):

ucr set dhcpd/options/wpad/252=text
ucr set dhcpd/options/ntp-servers/42="array of ip-address"

Am besten auf dem DC-Master muss diese Defition eine DHCP-subnetz oder DHCP-Service zugewiesen werden mit den korrekten Werten.

udm dhcp/service modify --dn="cn=schule1,cn=dhcp,ou=schule1,dc=test,dc=local" --append option='wpad "http://dcschule1.test.local/proxy.pac";'
udm dhcp/service modify --dn="cn=schule1,cn=dhcp,ou=schule1,dc=test,dc=local" --append option='ntp-servers 32.18.42.16;'

Das konnte ich nachvollziehen und das sollte auch funktionieren. Lieder verstehe ich aber nicht wie ich die komplexeren DHCP-Options erfassen muss mit ucr und nachher udm. Momentan habe ich es wie beschrieben über die local.conf gelöst. Das ist sicher nicht die schönste Lösung.

Syntax testen mit dhcpd -t ist immer noch eine gute Sache.

Besten Dank für die Links

mfg, RolandB

Mastodon