我只有一台 dhcp 服务器,它只有一个 IP 地址为 10.0.0.1/24 的接口。dhcpd.conf 是这样的:
subnet 10.0.0.0 netmask 255.255.255.0 { <-------working
host yyy {
hardware ethernet BB:BB:BB:BB:BB:BB;
fixed-address 10.0.0.53;
}
}
subnet 192.168.0.0 netmask 255.255.255.0 { <--------not working, why?
host xxx {
hardware ethernet AA:AA:AA:AA:AA;
fixed-address 192.168.0.53;
}
}
Run Code Online (Sandbox Code Playgroud)
当主机 xxx 尝试请求 dhcp 时,dhcp 服务器显示错误:DHCPDISCOVER from AA:AA:AA:AA:AA via eth0: network 10.0.0.1/24: no freehales。
但是当主机 yyy 请求一个 ip 地址时,dhcp 服务器确实给出了一个 DHCP 提议。
我可以在只有 10.0.0.0/24 接口的 dhcp 服务器中分配 192.168.0.0/24 地址吗?如何配置以使其工作?
欢迎来到服务器故障!
是的,您可以为服务器本身没有接口的子网发布 IP 地址。
当客户端尝试获取 IP 地址时,它会发送广播以寻找 DHCP 服务器。当本地网络上没有可用的 DHCP 服务器时,路由器可以配置为 DHCP 助手,这样当它收到 DHCP 广播时,它会创建一个单播数据包,目的地为 DHCP 服务器,其中包含原始客户端的信息(mac、network )。使用网络信息,DHCP 服务器可以确定从哪个范围向客户端发出租约。它将此信息发送回路由器,路由器将其发送回客户端。
如果您将额外的客户端移动到另一个 vlan 或另一个网段,并在每个子网中设置一个带有接口的路由器,然后使用您的 DHCP 服务器的 IP 配置路由器的 DHCP 助手,您应该可以正常工作。