<html><head></head><body><div>Folks</div><div><br></div><div>I am a new user and deviced a High Availability DHCP4 server configuration.    My network uses VLANs (with their corresponding IP subnets) and my switches are set with DHCP relay pointing to my two KEA DHCP servers.</div><div><br></div><div>The IP subnet/VLAN setup is as follows:</div><div><br></div><div style="margin-left: 3ch;">- VLAN 1 - 10.0.0.0/24</div><div style="margin-left: 3ch;">- VLAN 10 - 10.10.0.0/24</div><div style="margin-left: 3ch;">- VLAN 11 - 10.11.0.0/24</div><div style="margin-left: 3ch;">- 12 - all others follows same pattern, using the VLAN ID as the 2nd node of the IP address</div><div style="margin-left: 3ch;">- 13</div><div style="margin-left: 3ch;">- 14</div><div style="margin-left: 3ch;">- 15</div><div><br></div><div>The Layer 2/3 switch, with IP routing enabled, is:<span class="Apple-tab-span" style="white-space:pre">   </span>10.0.0.5.   It is set with DHCP relay to 10.10.0.13 and 10.10.0.15, the DHCP servers running KEA DHCP.</div><div><br></div><div>The DHCP servers only have one IP address enabled, on VLAN 10.   The switch ports for the DHCP servers are set as untagged VLAN 1, tagged VLANs 10,11,12,13,14,15.</div><div><br></div><div>Users  (with permanent MAC addresses) from VLANs 1, 10, and 12 have been tested and can initially allocate IP addresses using DHCP.  When those devices are powered off and later turned on they fail to obtain an IP addressd from the DHCP servers.   Only when I change the device setup to use random MAC addresses will they be able to renew their IP assignments.   </div><div><br></div><div>Here's my kea-dhcp4.conf on DHCP server1.   The same file is used on DHCP server2, replacing ""this-server-name": "server1"," for ""this-server-name": "server2",".   Both server1 and server2 are successfully passing name resolution on both servers.    The kea log on both servers are also showing their corresponding sync activity is successful.</div><div><br></div><div>{</div><div><br></div><div>"Dhcp4": </div><div><br></div><div>{</div><div>    "hooks-libraries": </div><div>    [</div><div>        {</div><div>        "library": "/usr/lib/x86_64-linux-gnu/kea/hooks/libdhcp_stat_cmds.so"</div><div>        },</div><div>   {</div><div>        "library": "/usr/lib/x86_64-linux-gnu/kea/hooks/libdhcp_lease_cmds.so",</div><div>        "parameters": { }</div><div>    }, </div><div>      {</div><div>        "library": "/usr/lib/x86_64-linux-gnu/kea/hooks/libdhcp_ha.so",</div><div>        "parameters": </div><div>           {</div><div>            "high-availability": </div><div>      [</div><div>            {</div><div>                "this-server-name": "server1",</div><div>                "mode": "load-balancing",</div><div>                "heartbeat-delay": 15000,</div><div>                "max-response-delay": 20000,</div><div>                "max-ack-delay": 10000,</div><div>                "max-unacked-clients": 5,</div><div>                "peers": </div><div>                [</div><div>                    {</div><div>                    "name": "server1",</div><div>                    "url": "<a href="http://10.10.0.13:8000/">http://10.10.0.13:8000/</a>",</div><div>                    "role": "primary",</div><div>                    "auto-failover": true</div><div>                    }, </div><div>                  {</div><div>                    "name": "server2",</div><div>                    "url": "<a href="http://10.10.0.15:8000/">http://10.10.0.15:8000/</a>",</div><div>                    "role": "secondary",</div><div>                    "auto-failover": true</div><div>                    }</div><div>              ] </div><div>               }</div><div>            ]</div><div>            }</div><div>        }</div><div>    ],</div><div><br></div><div>    "interfaces-config": {</div><div>        "interfaces": ["enp1s0.10"],</div><div>        "dhcp-socket-type": "udp"</div><div><br></div><div>    },</div><div><br></div><div>    "control-socket": </div><div>    {</div><div>        "socket-type": "unix",</div><div>        "socket-name": "/run/kea/kea-dhcp4-ctrl.sock"</div><div>    },</div><div><br></div><div>    "lease-database": </div><div>    {</div><div>        "type": "memfile",</div><div>        "lfc-interval": 3600</div><div>    },</div><div><br></div><div>    "expired-leases-processing": </div><div>    {</div><div>        "reclaim-timer-wait-time": 10,</div><div>        "flush-reclaimed-timer-wait-time": 25,</div><div>        "hold-reclaimed-time": 3600,</div><div>        "max-reclaim-leases": 100,</div><div>        "max-reclaim-time": 250,</div><div>        "unwarned-reclaim-cycles": 5</div><div>    },</div><div><br></div><div>#    "renew-timer": 900,</div><div>#    "rebind-timer": 1800,</div><div>    "valid-lifetime": 86400,</div><div><br></div><div>    "option-data": </div><div>    [</div><div>        {</div><div>            "name": "domain-name-servers",</div><div>            "data": "10.0.0.1,10.10.0.15",</div><div>        "always-send": true</div><div>        },</div><div>        {</div><div>           "name": "domain-name",</div><div>            "data": "lan",</div><div>          "always-send": true</div><div>        },</div><div>        {</div><div>            "name": "domain-search",</div><div>            "data": "lan",</div><div>       "always-send": true</div><div>        },</div><div>        {</div><div>            "name": "ntp-servers",</div><div>            "data": "45.79.111.167,50.205.244.24,132.163.97.6",</div><div>            "always-send": true</div><div>        }</div><div>    ],</div><div><br></div><div>    "subnet4": [</div><div>     {</div><div>            "subnet": "10.0.0.0/24",</div><div>         "id": 0,</div><div>            "pools": [ { "pool": "10.0.0.110 - 10.0.0.199" } ],</div><div>            "option-data": </div><div>         [</div><div>                {</div><div>                    "name": "subnet-mask",</div><div>                    "data": "255.255.255.0",</div><div>                  "always-send": true</div><div>                },</div><div>                {</div><div>                    "name": "domain-search",</div><div>                    "data": "lan",</div><div>               "always-send": true</div><div>                },</div><div>                {</div><div>                    "name": "routers",</div><div>                    "data": "10.0.0.1",</div><div>                "always-send": true</div><div>                }</div><div>              ],</div><div>     "relay": </div><div>          {</div><div>                    "ip-address": "10.0.0.5"</div><div>                }</div><div>            },</div><div>            {</div><div>            "subnet": "10.10.0.0/24",</div><div>            "id": 10,</div><div>            "pools": [ { "pool": "10.10.0.110 - 10.10.0.199" } ],</div><div>            "option-data": </div><div>              [</div><div>                {</div><div>                    "name": "subnet-mask",</div><div>                    "data": "255.255.255.0",</div><div>                  "always-send": true</div><div>                },</div><div>                {</div><div>                    "name": "domain-search",</div><div>                    "data": "lan",</div><div>               "always-send": true</div><div>                },</div><div>                {</div><div>                    "name": "routers",</div><div>                    "data": "10.10.0.5",</div><div>               "always-send": true</div><div>                }</div><div>              ]</div><div>###       DHCP CLIENTS IN THE SAME NETWORK AS THE SERVER DON'T NEED RELAY ###</div><div>            },</div><div>            {</div><div>            "subnet": "10.11.0.0/24",</div><div>            "id": 11,</div><div>            "pools": [ { "pool": "10.11.0.110 - 10.11.0.199" } ],</div><div>            "option-data": </div><div>           [</div><div>                {</div><div>                    "name": "subnet-mask",</div><div>                    "data": "255.255.255.0",</div><div>                  "always-send": true</div><div>                },</div><div>                {</div><div>                    "name": "domain-search",</div><div>                    "data": "lan",</div><div>               "always-send": true</div><div>                },</div><div>                {</div><div>                    "name": "routers",</div><div>                    "data": "10.11.0.5",</div><div>               "always-send": true</div><div>                }</div><div>              ],</div><div>     "relay": </div><div>          {</div><div>                    "ip-address": "10.11.0.5"</div><div>                }</div><div>            },</div><div>            {</div><div>            "subnet": "10.12.0.0/24",</div><div>            "id": 12,</div><div>            "pools": [ { "pool": "10.12.0.110 - 10.12.0.199" } ],</div><div>            "option-data": </div><div>             [</div><div>                {</div><div>                    "name": "subnet-mask",</div><div>                    "data": "255.255.255.0",</div><div>                  "always-send": true</div><div>                },</div><div>                {</div><div>                    "name": "domain-search",</div><div>                    "data": "lan",</div><div>               "always-send": true</div><div>                },</div><div>                {</div><div>                    "name": "routers",</div><div>                    "data": "10.12.0.5",</div><div>               "always-send": true</div><div>                }</div><div>              ],</div><div>     "relay": </div><div>          {</div><div>                    "ip-address": "10.12.0.5"</div><div>                }</div><div>            },</div><div>            {</div><div>            "subnet": "10.13.0.0/24",</div><div>            "id": 13,</div><div>            "pools": [ { "pool": "10.13.0.110 - 10.13.0.199" } ],</div><div>            "option-data": </div><div>             [</div><div>                {</div><div>                    "name": "subnet-mask",</div><div>                    "data": "255.255.255.0",</div><div>                  "always-send": true</div><div>                },</div><div>                {</div><div>                    "name": "domain-search",</div><div>                    "data": "lan",</div><div>               "always-send": true</div><div>                },</div><div>                {</div><div>                    "name": "routers",</div><div>                    "data": "10.13.0.5",</div><div>               "always-send": true</div><div>                }</div><div>              ],</div><div>     "relay": </div><div>          {</div><div>                    "ip-address": "10.13.0.5"</div><div>                }</div><div>            },</div><div>            {</div><div>            "subnet": "10.14.0.0/24",</div><div>            "id": 14,</div><div>            "pools": [ { "pool": "10.14.0.110 - 10.14.0.199" } ],</div><div>            "option-data": </div><div>             [</div><div>                {</div><div>                    "name": "subnet-mask",</div><div>                    "data": "255.255.255.0",</div><div>                  "always-send": true</div><div>                },</div><div>                {</div><div>                    "name": "domain-search",</div><div>                    "data": "lan",</div><div>               "always-send": true</div><div>                },</div><div>                {</div><div>                    "name": "routers",</div><div>                    "data": "10.14.0.5",</div><div>               "always-send": true</div><div>                }</div><div>              ],</div><div>     "relay": </div><div>          {</div><div>                    "ip-address": "10.14.0.5"</div><div>                }</div><div>            },</div><div>            {</div><div>            "subnet": "10.15.0.0/24",</div><div>            "id": 15,</div><div>            "pools": [ { "pool": "10.15.0.110 - 10.15.0.199" } ],</div><div>            "option-data": </div><div>             [</div><div>                {</div><div>                    "name": "subnet-mask",</div><div>                    "data": "255.255.255.0",</div><div>                  "always-send": true</div><div>                },</div><div>                {</div><div>                    "name": "domain-search",</div><div>                    "data": "lan",</div><div>               "always-send": true</div><div>                },</div><div>                {</div><div>                    "name": "routers",</div><div>                    "data": "10.15.0.5",</div><div>               "always-send": true</div><div>                }</div><div>              ],</div><div>     "relay": </div><div>          {</div><div>                    "ip-address": "10.15.0.5"</div><div>                }</div><div>            }</div><div><br></div><div>    ],</div><div><br></div><div>    "loggers": [</div><div>    {</div><div><br></div><div><br></div><div>        "name": "kea-dhcp4",</div><div>        "output_options": [</div><div>            {</div><div>                "output": "/var/log/kea/kea-dhcp4.log"</div><div>            }</div><div>        ],</div><div>        "severity": "INFO", </div><div>        "debuglevel": 40</div><div>    }</div><div>  ]</div><div>}</div><div>}</div><div><br></div><div>Is this normal?   Am I missing something from my KEA DHCP4 configuration?</div><div><br></div><div>Regards</div><div><br></div><div>Pedro Serrano</div><div><span></span></div></body></html>