To have various IP ranges in the same subnet and assign the IP Address depending of the device type that sends the request.

Simon Hobson dhcp1 at thehobsons.co.uk
Mon Aug 5 17:35:33 UTC 2019


Juan Antonio García Moreno <jagarcia at emergya.com> wrote:

> I relly have some hosts declarations, but I don't have put these in the post.

Ah yes, about that ... see below !

> subnet 10.53.0.0 netmask 255.255.0.0 {
> 
>   default-lease-time 86400;
>   max-lease-time 172800;
> 
>   option broadcast-address 10.53.255.255;
>   option routers 10.53.1.1;
> 
>   # Unknown Clients Range.
>   pool {
>     deny members of "smartphones";
>     range 10.53.33.1 10.53.35.254;
>   }
> 
>   # Smartphones Range.
>   pool {
>     allow members of "smartphones";
>     range 10.53.10.2 10.53.11.254;
>   }
> 
>   host PC-01 {
>     hardware ethernet ff:ff:ff:ff:ff:01;
>     fixed-address 10.53.100.5;
>   }
> 
>   host PC-02 {
>     hardware ethernet ff:ff:ff:ff:ff:02;
>     fixed-address 10.53.100.6;
>   }
> 
> }

That is another common mistake. Host declarations are always global in scope even though you might think that putting them inside a subnet declaration would tie them to that subnet. So even though declared inside one subnet, they will be "known" in any subnet - which in itself can cause considerable confusion.
But what really makes life "interesting" (see https://en.wikipedia.org/wiki/May_you_live_in_interesting_times) is that should a host be connected to a different network, it will inherit option values from the subnet where it is defined. Thus you find yourself with a client that's been given an address by DHCP, but the gateway address it's been given is in a completely different subnet !


> And too, howto fill a text file with the "vendor-class-identifier" of the smartphones and include in the DHCP Server config to match the smartphones devices too.

It's a simple scripting exercise to take a text file containing one string per line, and build a config file snippet. You can then use an include statement to incorporate that config snippet into the daemon config.



More information about the dhcp-users mailing list