Same MAC - diffrent IP depending on the contex (class)?
Robert Socha
socha at socha.it
Thu Aug 13 12:54:12 UTC 2020
Hi,
I was unable to find solution for my problem, so I implemented it in
source code.
I added "match if" directive to host definition which allows me to do
something like this:
option client-architecture code 93 = unsigned integer 16;
class "is-netboot" {
match if exists client-architecture and (not (option
user-class="iPXE"));
}
host O000C29EF4070 {
hardware ethernet 00:0C:29:EF:40:70;
fixed-address 20.20.20.20;
option routers 10.10.10.10;
option subnet-mask 255.255.255.255;
}
host N000C29EF4070 {
match if "is-netboot";
hardware ethernet 00:0C:29:EF:40:70;
fixed-address 100.64.4.2;
option routers 100.64.4.1;
option subnet-mask 255.255.255.252;
}
I also added support for globbing for include directive:
include "/etc/dhcp/host/*.conf"
include "/etc/dhcp/host/*/*.conf"
to recursively include files from folder and subfolders.
Best regards
W dniu 07.08.2020 o 23:02, Robert Socha pisze:
> Hi,
>
> I wonder if it's possible to achieve this in ISC DHCP:
>
> - I have static hosts only (only known clients - no dynamic assignments)
> - I need to assign different addresses to host depending on if it's boot
> client (PXE or UEFI), or if it's OS (linux,windows,etc) DHCP client
> discover
> ( I need that because we use RFC3021 or /32 route-able IP
> assignments to customer services and this addresses are not supported by
> UEFI firmware).
>
> So something like this (in pseudo config) or as idea:
>
>
> # arch-type -> option 93
> if(if exists arch-type) {
> # Private/netboot subnet
> host N000c290e741d {
> hardware ethernet 00:0c:29:0e:74:1d;
> fixed-address 100.120.120.2;
> option routers 100.120.120.1;
> option subnet-mask 255.255.255.252;
> }
> } else {
> # This for "public" network - discovers from "not boot agent"
> host O000c290e741d {
> hardware ethernet 00:0c:29:0e:74:1d;
> fixed-address 10.255.255.11;
> option routers 10.255.255.10;
> if option vendor-class-identifier="MSFT 5.0" {
> option subnet-mask 255.255.255.255;
> } else {
> option subnet-mask 255.255.255.254;
> }
> }
> }
>
> I looking for solution with static assignments (not dynamic pool's) for
> netboot network (we some logic behind this assigned IP's)
>
> Best regards
--
Robert Socha
More information about the dhcp-users
mailing list