DHCP服务器不在指定范围内selectIP

我有我的DHCP服务器,我特别设置的IP范围之间:10.53.70.100 – 10.53.70.200但有时我从这个范围以外的IP地址。 例如,我创build的最后一个服务器得到了IP 10.53.70.245,所以我只想知道为什么我的IP范围设置不起作用。

这里是来自DHCP服务器的日志:

Mar 20 10:32:46 dhcp dnsmasq-dhcp[7657]: 1927259932 available DHCP range: 10.53.70.100 -- 10.53.70.200 Mar 20 10:32:46 dhcp dnsmasq-dhcp[7657]: 1927259932 client provides name: dnstest Mar 20 10:32:49 dhcp dnsmasq-dhcp[7657]: 1927259932 DHCPDISCOVER(ens192) 10.53.70.245 00:50:56:8f:d4:6f Mar 20 10:32:49 dhcp dnsmasq-dhcp[7657]: 1927259932 tags: ens192 Mar 20 10:32:49 dhcp dnsmasq-dhcp[7657]: 1927259932 DHCPOFFER(ens192) 10.53.70.177 00:50:56:8f:d4:6f Mar 20 10:32:49 dhcp dnsmasq-dhcp[7657]: 1927259932 requested options: 1:netmask, 28:broadcast, 2:time-offset, 121:classless-static-route, Mar 20 10:32:49 dhcp dnsmasq-dhcp[7657]: 1927259932 requested options: 15:domain-name, 6:dns-server, 12:hostname, Mar 20 10:32:49 dhcp dnsmasq-dhcp[7657]: 1927259932 requested options: 40:nis-domain, 41:nis-server, 42:ntp-server, Mar 20 10:32:49 dhcp dnsmasq-dhcp[7657]: 1927259932 requested options: 26:mtu, 119:domain-search, 3:router, 121:classless-static-route, Mar 20 10:32:49 dhcp dnsmasq-dhcp[7657]: 1927259932 requested options: 249, 33:static-route, 252, 42:ntp-server Mar 20 10:32:49 dhcp dnsmasq-dhcp[7657]: 1927259932 next server: 10.53.70.5 Mar 20 10:32:49 dhcp dnsmasq-dhcp[7657]: 1927259932 sent size: 1 option: 53 message-type 2 Mar 20 10:32:49 dhcp dnsmasq-dhcp[7657]: 1927259932 sent size: 4 option: 54 server-identifier 10.53.70.5 Mar 20 10:32:49 dhcp dnsmasq-dhcp[7657]: 1927259932 sent size: 4 option: 51 lease-time 12h Mar 20 10:32:49 dhcp dnsmasq-dhcp[7657]: 1927259932 sent size: 4 option: 58 T1 6h Mar 20 10:32:49 dhcp dnsmasq-dhcp[7657]: 1927259932 sent size: 4 option: 59 T2 10h30m Mar 20 10:32:49 dhcp dnsmasq-dhcp[7657]: 1927259932 sent size: 4 option: 1 netmask 255.255.255.0 Mar 20 10:32:49 dhcp dnsmasq-dhcp[7657]: 1927259932 sent size: 4 option: 28 broadcast 10.53.70.255 Mar 20 10:32:49 dhcp dnsmasq-dhcp[7657]: 1927259932 sent size: 4 option: 6 dns-server 10.53.70.5 Mar 20 10:32:49 dhcp dnsmasq-dhcp[7657]: 1927259932 sent size: 9 option: 15 domain-name example.io Mar 20 10:32:49 dhcp dnsmasq-dhcp[7657]: 1927259932 sent size: 4 option: 3 router 10.53.70.1 Mar 20 10:32:49 dhcp dnsmasq-dhcp[7657]: 1927259932 available DHCP range: 10.53.70.100 -- 10.53.70.200 Mar 20 10:32:49 dhcp dnsmasq-dhcp[7657]: 1927259932 client provides name: dnstest Mar 20 10:32:52 dhcp dnsmasq-dhcp[7657]: 2099714365 available DHCP range: 10.53.70.100 -- 10.53.70.200 Mar 20 10:32:52 dhcp dnsmasq-dhcp[7657]: 2099714365 client provides name: dnstest 

正如你所看到的那样,

 DHCPOFFER(ens192) 10.53.70.177 00:50:56:8f:d4:6f 

这将是一个正确的IP,因为它在范围内。 但是,我看到它说:

 DHCPDISCOVER(ens192) 10.53.70.245 00:50:56:8f:d4:6f 

所以,最后服务器把这个IP以.245结尾,所以我的问题是为什么它需要一个超出允许范围的IP?

谢谢。

DHCPDISCOVER可以包含重用上次使用的IP的请求,看起来这个请求正在被授权。

根据维基百科的DHCP文章:

DHCP客户端也可能请求最后一个已知的IP地址。 如果客户端仍然连接到同一个networking,服务器可能会授予请求。 否则,这取决于服务器是否设置为权威性的。

有一件事你可能要考虑(基于这个问题的答案)是删除客户端的DHCP租约,可能还有你的DHCP服务器。

您不显示任何DHCPREQUEST / DHCPACK事件,因此实际上可能是DHCP失败,但由于底层networking(但不是客户端范围)保持不变,客户端重新使用其最后租约,并能够保持连接。

至于dnsmasqconfiguration, 手册页build议这样的东西可以工作:

 dhcp-range=10.53.70.100,10.53.70.200 dhcp-option=3,10.53.70.1 dhcp-lease-max=7200 dhcp-authoritative 

您可能还需要删除DHCP客户端上的租约文件。