If the DHCP and node logs show duplicate address warnings and indicate declined DHCP offers, it may be because another component owns the IP address that DHCP is trying to assign to a node. If this happens, the node will not accept the IP address and will repeatedly submit a DHCP discover request. As a result, the node and DHCP become entangled in a loop of requesting and rejecting. This often happens when DHCP is statically assigning IP addresses to nodes, but the assigned IP address for a node has already been assigned to another component.
This scenario results in node logs similar to the following:
[   97.946332] dracut Warning: Duplicate address detected for 10.100.160.195 while doing dhcp. retrying
[   97.789015] dracut-initqueue[604]: dracut Warning: Duplicate address detected for 10.100.160.195 while doing dhcp. \
retrying
[  108.007243] dracut Warning: Duplicate address detected for 10.100.160.195 while doing dhcp. retrying
[  107.873650] dracut-initqueue[604]: dracut Warning: Duplicate address detected for 10.100.160.195 while doing dhcp. \
retrying
[  110.082877] dracut Warning: Duplicate address detected for 10.100.160.195 while doing dhcp. retrying
And DHCP logs similar to the following:
Abandoning IP address 10.100.160.195: declined.
DHCPDECLINE of 10.100.160.195 from a4:bf:01:2e:81:4c (undefined) via eth0: abandoned
DHCPOFFER on 10.100.160.195 to "" (undefined) via eth0
DHCPREQUEST for 10.100.160.195 (10.100.160.2) from a4:bf:01:29:92:be via eth0: unknown lease 10.100.160.195.
DHCPREQUEST for 10.100.160.195 (10.100.160.2) from a4:bf:01:29:92:eb via eth0: unknown lease 10.100.160.195.
DHCPOFFER on 10.100.160.195 to a4:bf:01:2e:81:4c via eth0
DHCPREQUEST for 10.100.160.195 (10.100.160.2) from a4:bf:01:2e:81:4c via eth0
DHCPACK on 10.100.160.195 to a4:bf:01:2e:81:4c via eth0
Abandoning IP address 10.100.160.195: declined.
Notice that two different components (identifiable by the two different MAC addresses a4:bf:01:29:92:eb and a4:bf:01:2e:81:4c) have made DHCP requests for the IP
address 10.100.160.195.
a4:bf:01:29:92:eb is the component that owns the IP address 10.100.160.195, while a4:bf:01:2e:81:4c has been statically assigned the IP address 10.100.160.195
in the DHCP configuration file. As such, DHCP keeps trying to assign it that address, but after being offered the address, a4:bf:01:2e:81:4c declines it because it realizes that
a4:bf:01:29:92:eb already owns it.
There are multiple ways to check if this problem exists:
Ping the IP address and see if another component responds. Log into the component and determine its IP address. If it is the same as the IP address that DHCP is attempting to assign, then this issue does exist.
Check the Address Resolution Protocol (ARP) cache using the arp command. Because it is a cache, it is possible that IP addresses can age out of the cache, so the IP address
may not be present. If the address that is failing to be assigned is in the ARP cache, and it is assigned to a node with a different MAC address, then that is confirmation that
this problem has occurred.
ncn-m001# arp
Example output:
Address                  HWtype  HWaddress           Flags Mask            Iface
ncn-w002.local           ether   98:03:9b:b4:f1:fe   C                     vlan002
10.46.11.201             ether   ca:d3:dc:33:29:e7   C                     weave
10.46.12.7               ether   7e:7e:7f:f0:0d:2d   C                     weave
10.46.11.197             ether   62:4c:91:91:ec:9f   C                     weave
10.46.11.193             ether   52:dd:02:01:34:ab   C                     weave
10.32.0.5                ether   ba:ff:65:af:a7:4e   C                     weave
10.46.11.191             ether   be:36:79:07:84:08   C                     weave
10.45.1.121              ether   fe:93:50:63:9a:fd   C                     weave
10.46.11.187             ether   e6:2e:8c:ed:f8:78   C                     weave
10.46.11.250             ether   c6:73:6d:c4:b9:77   C                     weave
10.48.15.0               ether   da:c2:40:ed:f4:ec   CM                    flannel.2
10.46.11.183             ether   a2:f2:0d:34:cc:8b   C                     weave
10.46.11.246             ether   7e:42:c4:0f:59:97   C                     weave
nid000003-nmn.local      ether   a4:bf:01:3e:f9:cd   C                     vlan002
10.46.11.242             ether   4e:06:ef:eb:5c:ba   C                     weave
10.46.11.234             ether   f2:76:9d:1a:68:00   C                     weave
sw-spine01-nmn.local     ether   b8:59:9f:68:97:48   C                     vlan002
10.46.11.230             ether   6a:a3:65:5c:37:ba   C                     weave
10.46.12.28              ether   06:0e:54:02:a7:c4   C                     weave
10.46.11.226             ether   5a:5b:55:77:97:b7   C                     weave
10.46.12.24              ether   ba:4c:84:e3:53:2b   C                     weave
10.38.1.89               ether   5a:c7:15:17:78:dc   C                     weave
10.46.11.222             ether   52:61:38:42:7c:00   C                     weave
10.46.11.218             ether   66:81:68:6e:2e:38   C                     weave
10.46.11.214             ether   ea:91:c2:b7:de:a2   C                     weave
10.46.12.12              ether   5a:dd:d2:8b:20:66   C                     weave
ncn-m002.local           ether   b8:59:9f:1d:da:26   C                     vlan002
10.46.11.210             ether   2e:9f:17:a6:d7:d4   C                     weave
10.48.52.0               ether   e2:9e:26:a4:d3:ba   CM                    flannel.2
ncn-s003.local           ether   98:03:9b:bb:a9:48   C                     vlan002
10.38.1.73               ether   46:67:08:21:f1:fc   C                     weave
10.46.11.206             ether   36:b9:47:ad:69:8d   C                     weave
ncn-s002.local           ether   b8:59:9f:34:88:ca   C                     vlan002
10.46.12.0               ether   36:cb:f8:3c:b4:05   C                     weave
10.46.11.194             ether   e2:7d:57:7e:9c:9e   C                     weave
10.32.0.6                ether   46:e2:fe:29:1d:02   C                     weave
10.46.11.188             ether   aa:3c:5a:60:45:af   C                     weave
10.46.11.255             ether   3a:e6:e4:91:7a:ec   C                     weave
10.48.16.0               ether   1a:fa:2e:8f:80:5c   CM                    flannel.2
10.46.11.247             ether   c2:af:c4:53:ba:ff   C                     weave
nid000002-nmn.local      ether   a4:bf:01:3e:ef:d7   C                     vlan002
10.46.11.243             ether   de:5c:cc:47:db:55   C                     weave
10.46.11.235             ether   c6:bb:07:55:8a:4d   C                     weave
10.46.11.231             ether   6a:73:3c:fe:3f:95   C                     weave
10.46.12.29              ether   a6:d6:6f:71:d1:50   C                     weave
10.46.11.227             ether   b6:fe:d9:9d:41:0c   C                     weave
10.46.12.21              ether   42:cd:2c:a3:d2:97   C                     weave
10.46.11.219             ether   8a:47:b1:71:05:f9   C                     weave
10.46.11.215             ether   ce:b1:cb:48:c7:e3   C                     weave
10.46.12.13              ether   e2:34:38:f3:ce:3f   C                     weave
ncn-m001.local           ether   b8:59:9f:1d:d8:4a   C                     vlan002
10.46.11.211             ether   7e:ad:22:04:9b:32   C                     weave
10.46.11.203             ether   16:23:a2:96:d4:d2   C                     weave
10.46.12.1               ether   8e:51:2a:b6:f1:cc   C                     weave
10.46.11.199             ether   e6:f4:ee:92:b8:a8   C                     weave
10.46.11.195             ether   ce:0e:d2:e8:d5:fa   C                     weave
10.46.11.189             ether   92:ad:7c:93:ec:d8   C                     weave
10.46.11.252             ether   a2:92:18:0f:54:a8   C                     weave
10.48.57.0               ether   4a:ac:84:c4:76:b1   CM                    flannel.2
10.46.11.248             ether   ea:ff:53:cd:27:36   C                     weave
10.46.11.240             ether   6a:33:63:3a:50:0a   C                     weave
cfgw-48-vrrp.us.cray.com  ether   00:00:5e:00:01:30   C                     em1
10.252.120.2             ether   b8:59:9f:1d:da:26   C                     vlan002
sw-leaf-001-can.local      ether   3c:2c:30:5e:6d:b5   C                     vlan007
nid000001-nmn.local      ether   a4:bf:01:3e:e0:93   C                     vlan002
10.46.11.232             ether   3a:69:e4:d9:7f:1f   C                     weave
10.45.1.166              ether   9a:86:9c:c0:53:c5   C                     weave
10.46.11.224             ether   d6:ec:f3:eb:6a:cb   C                     weave
10.46.12.30              ether   a2:e1:8e:f5:65:64   C                     weave
10.46.11.220             ether   1e:37:ab:42:15:24   C                     weave
10.46.11.212             ether   16:82:52:f6:ca:de   C                     weave
sw-leaf-001-hmn.local      ether   3c:2c:30:5e:6d:b5   C                     vlan004
sw-leaf-001-mtl.local      ether   3c:2c:30:5e:6d:b5   C                     p1p1
10.46.11.208             ether   0e:cf:3d:df:ea:21   C                     weave
10.46.12.14              ether   92:73:ff:8d:8a:07   C                     weave
10.46.12.10              ether   32:19:b3:75:3c:f7   C                     weave
ncn-w003.local           ether   98:03:9b:bb:a8:8c   C                     vlan002
10.46.11.200             ether   1a:c3:46:0f:a0:b9   C                     weave
10.48.3.0                ether   16:78:89:dd:ae:7c   CM                    flannel.2
10.46.12.6               ether   c6:3d:da:ef:d8:a5   C                     weave
ncn-s001.local           ether   b8:59:9f:1d:d9:1e   C                     vlan002
10.46.11.196             ether   96:88:fc:f4:15:ac   C                     weave
10.46.12.2               ether   d2:ac:dd:44:2c:0a   C                     weave
10.46.11.192             ether   e6:aa:51:79:ee:83   C                     weave
10.46.11.253             ether   a6:dc:f1:57:24:84   C                     weave
10.46.11.190             ether   62:a8:e0:3c:13:be   C                     weave
10.46.11.249             ether   fa:37:7f:0a:ed:73   C                     weave
10.46.11.186             ether   aa:d9:05:39:cd:77   C                     weave
10.46.11.241             ether   36:a7:00:8a:8a:9e   C                     weave
nid000004-nmn.local      ether   a4:bf:01:3e:ca:61   C                     vlan002
172.17.0.2               ether   02:42:ac:11:00:02   C                     docker0
10.46.11.233             ether   3a:5f:0f:9f:ce:e1   C                     weave
10.46.12.35              ether   9e:6d:fa:63:5e:2c   C                     weave
10.45.1.100              ether   32:65:00:82:9b:90   C                     weave
10.46.12.31              ether   ee:bd:3e:ee:ab:80   C                     weave
169.254.255.254          ether   74:83:ef:2a:e7:83   C                     hsn0
10.46.12.27              ether   1a:42:25:07:ee:0d   C                     weave
10.46.11.213             ether   06:b8:de:1d:b2:99   C                     weave
10.46.12.19              ether   82:61:83:18:fc:b7   C                     weave
sw-spine-001-hmn.local     ether   b8:59:9f:68:97:48   C                     vlan004
10.46.12.15              ether   ce:92:74:c6:4b:b3   C                     weave
ncn-m003.local           ether   b8:59:9f:1d:d9:f2   C                     vlan002
10.46.11.205             ether   16:e7:2e:6d:a3:e2   C                     weave
10.46.12.11              ether   22:33:f7:4f:be:80   C                     weave
Force the component that has been assigned an incorrect IP address to request another one. This may involve powering that component down and then back up.