我希望属于不同 VLAN 的设备拥有不同的路由器。例如:
- VLAN 10.0.10.0/24 内的设备 10.0.10.84 的路由器设置为 10.0.10.1,而:
- 属于 10.0.11.0/24 的设备 10.0.11.6 应该使用路由器 10.0.11.1。
我这样配置了 ISC DHCP 服务器:
subnet 10.0.10.0 netmask 255.255.255.0 {
option subnet-mask 255.255.0.0;
option routers 10.0.10.1;
...
pool {
failover peer "dhcp-primary";
max-lease-time 1800;
range 10.0.10.200 10.0.10.210;
}
}
subnet 10.0.11.0 netmask 255.255.255.0 {
option subnet-mask 255.255.0.0;
option routers 10.0.11.1;
...
pool {
failover peer "dhcp-primary";
max-lease-time 1800;
range 10.0.11.200 10.0.11.210;
}
}
host nmap-tests {
hardware ethernet de:ad:c0:de:ca:fe;
fixed-address 10.0.11.6;
}
不幸的是,这不起作用。当我运行 时nmap --script broadcast-dhcp-discover
,转储tcpdump -n -i eth0 port bootps or port bootpc -v
显示原始请求:
0.0.0.0.68 > 255.255.255.255.67: BOOTP/DHCP, Request from de:ad:c0:de:ca:fe ...
响应如下:
10.0.10.5.67 > 255.255.255.255.68: BOOTP/DHCP, Reply, ...
Your-IP 192.168.1.205
Client-Ethernet-Address de:ad:c0:de:ca:fe
鉴于配置,我希望 DHCP 服务器使用固定地址 10.0.11.6 进行响应,而不是来自池的 IP 地址。
配置有什么问题?
答案1
以下配置仅在 DHCP 服务器使用多个接口(例如 VLAN)的情况下才有效eth1.10
。eth1.11
如果只有一个接口,则subnet
语句应包含在一个shared-network
块中。
根据文档:
这共享网络语句用于通知 DHCP 服务器,某些 IP 子网实际上共享同一物理网络。共享网络中的任何子网都应在共享网络陈述。