Dynamic client host-name (Option 12)

classic Classic list List threaded Threaded
2 messages Options
Reply | Threaded
Open this post in threaded view
|

Dynamic client host-name (Option 12)

Dave M
I have clients (eMTA) who request a hostname parameter. It is easy to create static entries and provide clients with an hostname back but I can't manage to do it dynamically.

I have the rest of my configuration working fine except that one line:

        subnet 172.16.52.0 netmask 255.255.254.0
        {
                allow leasequery;
                option routers 172.16.53.254;
                option broadcast-address 172.16.53.255;
                option domain-name-servers 172.16.64.15 ;
                ddns-hostname = concat("mta-", hw_mac_short);
                ddns-domainname "emta.lab.com.";
                host-name = concat("mta-", hw_mac_short);   -----> not working
                option domain-name "emta.lab.com";
                filename = concat("config/mta-", hw_mac_short, ".cfg");
                pool
                {
                        #pool: MTA 172.16.52.1 172.16.53.253
                        range 172.16.52.1 172.16.53.253;

                        allow members of "MTA";
                }
        }

If I hardcode the host-name, then the DDNS works fine and gets created based on the mac (variable hw_mac_short) but I can't figure out how to return option 12 dynamically to clients requesting it.

I'm testing this on ISC DHCP 4.4.1

Is there a trick for that?

Dave M.

_______________________________________________
dhcp-users mailing list
[hidden email]
https://lists.isc.org/mailman/listinfo/dhcp-users
Reply | Threaded
Open this post in threaded view
|

Re: Dynamic client host-name (Option 12)

Bill Shirley-2
I use fqdn.fqdn:
subnet 192.168.4.0 netmask 255.255.255.0 {
    ddns-updates            on;
    ddns-domainname         "example.com";
    option domain-name      "example.com";
    option fqdn.fqdn        = concat(config-option server.ddns-hostname, ".", config-option server.ddns-domainname);

You didn't post hw_mac_short.  You could use something like this:
ddns-hostname = concat("mta-", binary-to-ascii(16, 8, "", substring(hardware, 4, 3)));
This uses the last three bytes of the MAC address.  Put this before the subnet definition.

Bill

On 8/30/2019 4:06 PM, Dave M wrote:
I have clients (eMTA) who request a hostname parameter. It is easy to create static entries and provide clients with an hostname back but I can't manage to do it dynamically.

I have the rest of my configuration working fine except that one line:

        subnet 172.16.52.0 netmask 255.255.254.0
        {
                allow leasequery;
                option routers 172.16.53.254;
                option broadcast-address 172.16.53.255;
                option domain-name-servers 172.16.64.15 ;
                ddns-hostname = concat("mta-", hw_mac_short);
                ddns-domainname "emta.lab.com.";
                host-name = concat("mta-", hw_mac_short);   -----> not working
                option domain-name "emta.lab.com";
                filename = concat("config/mta-", hw_mac_short, ".cfg");
                pool
                {
                        #pool: MTA 172.16.52.1 172.16.53.253
                        range 172.16.52.1 172.16.53.253;

                        allow members of "MTA";
                }
        }

If I hardcode the host-name, then the DDNS works fine and gets created based on the mac (variable hw_mac_short) but I can't figure out how to return option 12 dynamically to clients requesting it.

I'm testing this on ISC DHCP 4.4.1

Is there a trick for that?

Dave M.

_______________________________________________
dhcp-users mailing list
[hidden email]
https://lists.isc.org/mailman/listinfo/dhcp-users

_______________________________________________
dhcp-users mailing list
[hidden email]
https://lists.isc.org/mailman/listinfo/dhcp-users