我有一组从ISC-DHCPD获取地址的节点。由于它们使用PXE启动,将有两轮DHCP (一次来自PXE,一次来自操作系统),并且由于某种原因,ISC-DHCPD将提供两个不同的IP。这是不好的,因为节点的数目应该对应于ip的最后一个字节。
下面是Syslog的摘录,展示了正在发生的事情:
May 25 23:16:26 cluster dhcpd: DHCPDISCOVER from 08:00:27:d3:d5:3b via eth1
May 25 23:16:27 cluster dhcpd: DHCPOFFER on 192.168.0.1 to 08:00:27:d3:d5:3b via eth1
May 25 23:16:29 cluster dhcpd: DHCPREQUEST for 192.168.0.1 (192.168.0.254) from 08:00:27:d3:d5:3b via eth1
May 25 23:16:29 cluster dhcpd: DHCPACK on 192.168.0.1 to 08:00:27:d3:d5:3b via eth1
May 25 23:17:07 cluster dhcpd: DHCPDISCOVER from 08:00:27:d3:d5:3b via eth1
May 25 23:17:08 cluster dhcpd: DHCPOFFER on 192.168.0.2 to 08:00:27:d3:d5:3b via eth1
May 25 23:17:08 cluster dhcpd: DHCPREQUEST for 192.168.0.2 (192.168.0.254) from 08:00:27:d3:d5:3b via eth1
May 25 23:17:08 cluster dhcpd: DHCPACK on 192.168.0.2 to 08:00:27:d3:d5:3b via eth1
May 25 23:17:08 cluster dhcpd: DHCPREQUEST for 192.168.0.2 (192.168.0.254) from 08:00:27:d3:d5:3b via eth1
May 25 23:17:08 cluster dhcpd: DHCPACK on 192.168.0.2 to 08:00:27:d3:d5:3b via eth1以下是租约文件的相应摘录:
lease 192.168.0.1 {
starts 1 2015/05/25 21:16:28;
ends 5 2151/07/02 03:44:43;
cltt 1 2015/05/25 21:16:28;
binding state active;
next binding state free;
rewind binding state free;
hardware ethernet 08:00:27:d3:d5:3b;
uid "\001\010\000'\323\325;";
}
lease 192.168.0.2 {
starts 1 2015/05/25 21:17:08;
ends 5 2151/07/02 03:45:23;
cltt 1 2015/05/25 21:17:08;
binding state active;
next binding state free;
rewind binding state free;
hardware ethernet 08:00:27:d3:d5:3b;
}
lease 192.168.0.2 {
starts 1 2015/05/25 21:17:08;
ends 5 2151/07/02 03:45:23;
cltt 1 2015/05/25 21:17:08;
binding state active;
next binding state free;
rewind binding state free;
hardware ethernet 08:00:27:d3:d5:3b;
}这是dhcp服务器的配置:
ddns-update-style none;
default-lease-time -1;
max-lease-time -1;
authoritative;
allow booting;
allow bootp;
next-server 192.168.0.254;
filename "/pxelinux.0";
log-facility local7;
subnet 192.168.0.0 netmask 255.255.255.0 {
range 192.168.0.1 192.168.0.253;
interface eth1;
option routers 192.168.0.254;
option domain-name "cluster.hpc.org";
option domain-name-servers 192.168.0.254;
}发布于 2019-08-02 18:50:58
您可以使用“忽略客户端-uids”标志来获得它。它包括在4.2.0版本的isc-dchpd中:
增加这一行:
忽略-客户端-uids为真;
ignore-client-uids flag;
If the ignore-client-uids statement is present and has a value of
true or on, the UID for clients will not be recorded. If this
statement is not present or has a value of false or off, then client
UIDs will be recorded.发布于 2015-05-26 08:22:25
试着做些像
ddns-update-style none;
# Client control
deny duplicates;
one-lease-per-client on;
# Lease authority
default-lease-time 3600;
min-lease-time 3600;
max-lease-time 21600;
authoritative;
allow booting;
allow bootp;
next-server 192.168.0.254;
filename "/pxelinux.0";
log-facility local7;
subnet 192.168.0.0 netmask 255.255.255.0 {
range 192.168.0.1 192.168.0.253;
interface eth1;
option routers 192.168.0.254;
option domain-name "cluster.hpc.org";
option domain-name-servers 192.168.0.254;
}拒绝重复;主机声明可以基于DHCP客户端标识符选项或基于客户端的网络硬件类型和MAC地址匹配客户端消息。如果使用MAC地址,主机声明将匹配任何客户端与该MAC地址-甚至客户端具有不同的客户标识符。这种情况通常不会发生,但当一台计算机上安装了多个操作系统时(例如,Microsoft和NetBSD或Linux ),这是可能的。重复标志告诉DHCP服务器,如果从与主机声明的MAC地址匹配的客户端接收到请求,则即使UID不相同,与该MAC地址匹配的任何其他租约也应由服务器丢弃。这违反了DHCP协议,但可以防止客户端标识符定期更改的客户端同时持有多个租约。默认情况下,允许重复。
资料来源
http://www.bctes.com/dhcpd.conf.5.html
http://www.xdracco.net/howto-configure-and-deploy-isc-dhcp-server/
https://serverfault.com/questions/694351
复制相似问题