为什么我的具有保留地址的 DHCP 客户端缺少默认网关?

为什么我的具有保留地址的 DHCP 客户端缺少默认网关?

我在 Ubuntu 18.04 上运行 isc-dhcp-server。没有 DHCP 预留的客户端可以毫无问题地从池中获取 IP 地址、子网掩码、默认网关和 DNS 服务器。

一旦我定义保留,客户端将正确获取保留的 IP 地址、子网掩码和 DNS 服务器,但是默认网关将会丢失,如此屏幕截图所示。

TCP/IP 设置窗格

这是我的 dhcpd.conf 文件,供参考。

ddns-update-style none;
authoritative;                                             
option domain-name "test.lan";                      
option domain-name-servers 10.127.253.236,10.127.253.237;                    
default-lease-time 86400;                                  
max-lease-time 86400;                                      
failover peer "dhcp-failover" {                                 
         primary;                                          
         address 10.127.253.236;                                  
         port 647;
         peer address 10.127.253.237;                             
         peer port 647;
         max-response-delay 60;
         max-unacked-updates 10;
         mclt 3600;
         split 128;
         load balance max seconds 3;
}

subnet 10.127.253.224 netmask 255.255.255.240 {
         pool {
                  failover peer "dhcp-failover";
                  option routers      10.127.253.225;
                  option subnet-mask  255.255.255.240;
                  range 10.127.253.226   10.127.253.238;
         }
         ignore client-updates;
}

##############################
## START OF IP RESERVATIONS ##
##############################

host MacBook-pro {
  hardware ethernet f0:18:98:35:29:6c;
  fixed-address 10.127.253.227;
}

答案1

要为主机分配特定地址,该地址必须在子网内但不在范围内。

固定地址不由池机制分配,因此无法从该池的选项中受益。

路由器和子网掩码选项与池相关,而不是与子网相关。

这里最简单的方法是将地址 226 分配给主机,通过使其从 227 开始来减少池,然后将选项移动到子网:

subnet 10.127.253.224 netmask 255.255.255.240 {
    option routers      10.127.253.225;
    option subnet-mask  255.255.255.240;
    pool {
        failover peer "dhcp-failover";
        range 10.127.253.227   10.127.253.238;
    }
    ignore client-updates;
}

host MacBook-pro {
    hardware ethernet f0:18:98:35:29:6c;
    fixed-address 10.127.253.226;
}

相关内容