我正在使用 ISC DHCP 服务器,并且想为使用该 DHCP 的设备之一分配不同的默认网关。
我有网络 192.168.0.0/24,两个冗余 ISC DHCP 服务器为该网络上的主机分配 IP 地址。DHCP 还发布一些路由。有些设备会考虑这些额外的路由,而有些则不会。对于其中一个设备,这个额外的路由对我来说比默认网关更重要。所以我想为这个设备分配一个不同的默认网关。
这可能吗?我尝试将option routers 192.168.0.3;
主机部分放入该主机,但似乎不起作用,老实说,我没想到它会起作用。
我考虑在 dhcp 配置中使用两个子网。一个子网用于具有此网络默认网关的常规主机。另一个子网将为主机分配另一个网关,对于主机而言,另一个网关更为重要。例如,我如何定义两个子网:
- 192.168.0.0 - 192.168.0.239 - 对于具有默认网关的常规主机
- 192.168.0.240 - 192.168.0.255 - 对于使用其他网关的主机
我不知道如何区分主机连接到网络时将被分配到哪个子网。我只能在第二个子网上使用预定义的 MAC 地址和保留的 IP。第一个子网将用于所有其他主机。
为了清楚起见,我在这里放了一些 ISC DHCP 配置:
default-lease-time 600;
max-lease-time 7200;
option subnet-mask 255.255.255.0;
option broadcast-address 192.168.0.255;
option routers 192.168.0.1;
option domain-name "localdomain";
option domain-name-servers 192.168.0.3, 192.168.0.5;
option rfc3442-classless-static-routes code 121 = array of integer 8;
option ms-classless-static-routes code 249 = array of integer 8;
option rfc3442-classless-static-routes 24, 192, 168, 1, 192, 168, 0, 3, 8, 10, 192, 168, 0, 3, 0, 192, 168, 0, 1;
option ms-classless-static-routes 24, 192, 168, 1, 192, 168, 0, 3, 8, 10, 192, 168, 0, 3, 0, 192, 168, 0, 1;
subnet 192.168.0.0 netmask 255.255.255.0 {
pool {
failover peer "failover-partner";
range 192.168.0.150 192.168.0.229;
}
default-lease-time 86400;
max-lease-time 172800;
}
host hostX {
default-lease-time 86400;
max-lease-time 172800;
#option routers 192.168.0.3;
hardware ethernet aa:bb:cc:dd:ee:ff;
fixed-address 192.168.0.6;
}
该配置分配了从 192.168.0.150 到 192.168.0.229 的 IP。它还分配了默认网关 192.168.0.1,以及路由 192.168.1.0/24 和 10.0.0.0/8 到 192.1698.0.3 的流量的路由。
对于不需要互联网访问的一个设备(hostX),更重要的是通过 192.168.0.3 路由到另一个子网 192.168.1.0/24。