[Kea-users] Clarification: When does the KEA send NAK packets?

Mathias Aichinger mathias.aichinger at easysol.at
Mon Mar 25 14:55:17 UTC 2019


Hi guys,

We are currently in a migration scenario from the old ISC DHCP to KEA DHCP and having some troubles with NAKs. Hopefully you can help me to clarify the situation.

To have a smooth transition we want to have both DHCPs serving requests for the known clients.
Our idea was to disable “authoritative” and the new KEA should stay silent on non migrated devices.

It seems to work partly as it stays silent on DISCOVERS, but for RENEWs it does not work. Our KEA is sending NAKs which causes that some client do not retry to get an ip address and the customers need to reboot their devices. 

What’s the intended behaviour and are the any ideas to solve the task? Is there a way to disable NAKs completely?

Thank you,

Mathias


Kea 1.5
All the subnets are added to the shared network but without dynamic pool

        "shared-networks": [
          {
            "authoritative": false,
            "match-client-id": true,
            "name": "DOCSIS",
            "option-data": [],
            "relay": {
              "ip-addresses": []
            },
            "reservation-mode": "all",
            "subnet4": [
              {
                "4o6-interface": "",
                "4o6-interface-id": "",
                "4o6-subnet": "",
                "authoritative": false,
                "boot-file-name": "",
                "client-class": "docsis-devices",
                "id": 1,
                "match-client-id": true,
                "next-server": “xxxxxxxxx",
                "option-data": [
                  {
                    "always-send": false,
                    "code": 3,
                    "csv-format": true,
                    "data": "xxxxxxxxx",
                    "name": "routers",
                    "space": "dhcp4"
                  },
                  {
                    "always-send": false,
                    "code": 4,
                    "csv-format": true,
                    "data": "xxxxxxxxx",
                    "name": "time-servers",
                    "space": "dhcp4"
                  },
                  {
                    "always-send": false,
                    "code": 42,
                    "csv-format": true,
                    "data": "xxxxxxxxx",
                    "name": "ntp-servers",
                    "space": "dhcp4"
                  },
                  {
                    "always-send": false,
                    "code": 2,
                    "csv-format": true,
                    "data": "7200",
                    "name": "time-offset",
                    "space": "dhcp4"
                  }
                ],
                "pools": [
                  {
                    "client-class": "KNOWN",
                    "option-data": [],
                    "pool": "xxxxxxxxx-xxxxxxxxx"
                  }
                ],
                "rebind-timer": 6300,
                "relay": {
                  "ip-addresses": [
                    "xxxxxxxxx"
                  ]
                },
                "renew-timer": 3600,
                "reservation-mode": "all",
                "reservations": [],
                "server-hostname": "",
                "subnet": "xxxxxxxxx/16",
                "valid-lifetime": 7200
              },
              {
                "4o6-interface": "",
                "4o6-interface-id": "",
                "4o6-subnet": "",
                "authoritative": false,
                "boot-file-name": "",
                "id": 2,
                "match-client-id": true,
                "next-server": "0.0.0.0",
                "option-data": [
                  {
                    "always-send": false,
                    "code": 3,
                    "csv-format": true,
                    "data": "xxxxxxxxx",
                    "name": "routers",
                    "space": "dhcp4"
                  },
                  {
                    "always-send": false,
                    "code": 2,
                    "csv-format": true,
                    "data": "7200",
                    "name": "time-offset",
                    "space": "dhcp4"
                  }
                ],
                "pools": [],
                "rebind-timer": 6300,
                "relay": {
                  "ip-addresses": [
                    "xxxxxxxxx"
                  ]
                }
….

Output:
2019-03-25 15:03:47.720 DEBUG [kea-dhcp4.packets/16201] DHCP4_PACKET_RECEIVED [hwtype=1 aa:aa:aa:aa:aa:aa], cid=[bb:bb:bb:bb:bb:bb:bb:bb:bb:aa:aa:aa:aa:aa:aa], tid=0x103ed2fd: DHCPREQUEST (type 3) received from 111.111.111.111 to 222.222.222.222 on interface ens160
2019-03-25 15:03:47.721 DEBUG [kea-dhcp4.packets/16201] DHCP4_QUERY_DATA [hwtype=1 aa:aa:aa:aa:aa:aa], cid=[bb:bb:bb:bb:bb:bb:bb:bb:bb:aa:aa:aa:aa:aa:aa], tid=0x103ed2fd, packet details: local_address=222.222.222.222:67, remote_address=111.111.111.111:67, msg_type=DHCPREQUEST (3), transid=0x103ed2fd,
options:
  type=053, len=001: 3 (uint8)
  type=055, len=014: 72(uint8) 1(uint8) 2(uint8) 3(uint8) 4(uint8) 6(uint8) 7(uint8) 12(uint8) 15(uint8) 23(uint8) 26(uint8) 54(uint8) 51(uint8) 125(uint8)
  type=057, len=002: 1500 (uint16)
  type=061, len=015: bb:bb:bb:bb:bb:bb:bb:bb:bb:aa:aa:aa:aa:aa:aa
  type=082, len=033:,
options:
....
2019-03-25 15:03:47.721 DEBUG [kea-dhcp4.callouts/16201] HOOKS_CALLOUTS_BEGIN begin all callouts for hook pkt4_receive
2019-03-25 15:03:47.721 DEBUG [kea-dhcp4.callouts/16201] HOOKS_CALLOUT_CALLED hooks library with index 3 has called a callout on hook pkt4_receive that has address 0xBBBBBBBBB (callout duration: 0.134 ms)
2019-03-25 15:03:47.721 DEBUG [kea-dhcp4.callouts/16201] HOOKS_CALLOUTS_COMPLETE completed callouts for hook pkt4_receive (total callouts duration: 0.134 ms)
2019-03-25 15:03:47.721 DEBUG [kea-dhcp4.packets/16201] DHCP4_SUBNET_SELECTED [hwtype=1 aa:aa:aa:aa:aa:aa], cid=[bb:bb:bb:bb:bb:bb:bb:bb:bb:aa:aa:aa:aa:aa:aa], tid=0xBBBBBBBBB: the subnet with ID 2 was selected for client assignments
2019-03-25 15:03:47.721 DEBUG [kea-dhcp4.packets/16201] DHCP4_SUBNET_DATA [hwtype=1 aa:aa:aa:aa:aa:aa], cid=[bb:bb:bb:bb:bb:bb:bb:bb:bb:aa:aa:aa:aa:aa:aa], tid=0xBBBBBBBBB: the selected subnet details: 111.111.111.111/24
2019-03-25 15:03:47.721 DEBUG [kea-dhcp4.callouts/16201] HOOKS_CALLOUTS_BEGIN begin all callouts for hook host4_identifier
2019-03-25 15:03:47.722 DEBUG [kea-dhcp4.eval/16201] EVAL_DEBUG_OPTION Pushing option 2 with value 0xAAAAAAAAAAA
2019-03-25 15:03:47.722 DEBUG [kea-dhcp4.eval/16201] EVAL_DEBUG_STRING Pushing text string '0'
2019-03-25 15:03:47.722 DEBUG [kea-dhcp4.eval/16201] EVAL_DEBUG_STRING Pushing text string '12'
2019-03-25 15:03:47.722 DEBUG [kea-dhcp4.eval/16201] EVAL_DEBUG_SUBSTRING Popping length 12, start 0, string 0xAAAAAAAAAAA pushing result 0xAAAAAAAAAAA
2019-03-25 15:03:47.722 DEBUG [kea-dhcp4.callouts/16201] HOOKS_CALLOUT_CALLED hooks library with index 3 has called a callout on hook host4_identifier that has address 0xAAAAAAAAAAA (callout duration: 0.677 ms)
2019-03-25 15:03:47.722 DEBUG [kea-dhcp4.callouts/16201] HOOKS_CALLOUTS_COMPLETE completed callouts for hook host4_identifier (total callouts duration: 0.677 ms)
2019-03-25 15:03:47.722 DEBUG [kea-dhcp4.hosts/16201] HOSTS_CFG_GET_ALL_IDENTIFIER get all hosts with reservations using identifier: hwaddr=0xAAAAAAAAAAA
2019-03-25 15:03:47.722 DEBUG [kea-dhcp4.hosts/16201] HOSTS_CFG_GET_ALL_IDENTIFIER_COUNT using identifier hwaddr=AAAAAAAAAAA, found 0 host(s)
2019-03-25 15:03:47.723 DEBUG [kea-dhcp4.hosts/16201] HOSTS_CFG_GET_ALL_IDENTIFIER get all hosts with reservations using identifier: duid=AAAAAAAAAAAAAAAAAAAAAA
2019-03-25 15:03:47.723 DEBUG [kea-dhcp4.hosts/16201] HOSTS_CFG_GET_ALL_IDENTIFIER_COUNT using identifier duid=00030001AAAAAAAAAAA, found 0 host(s)
2019-03-25 15:03:47.723 DEBUG [kea-dhcp4.hosts/16201] HOSTS_CFG_GET_ALL_IDENTIFIER get all hosts with reservations using identifier: circuit-id=0xAAAAAAAA
2019-03-25 15:03:47.723 DEBUG [kea-dhcp4.hosts/16201] HOSTS_CFG_GET_ALL_IDENTIFIER_COUNT using identifier circuit-id=BBBBBBBBB, found 0 host(s)
2019-03-25 15:03:47.724 DEBUG [kea-dhcp4.hosts/16201] HOSTS_CFG_GET_ALL_IDENTIFIER get all hosts with reservations using identifier: client-id=AAAAAAAAAAAAAAAAAAAAAA
2019-03-25 15:03:47.724 DEBUG [kea-dhcp4.hosts/16201] HOSTS_CFG_GET_ALL_IDENTIFIER_COUNT using identifier client-id=BBBBBBBBBBBBBBBBBAAAAAAAAAAA, found 0 host(s)
2019-03-25 15:03:47.724 DEBUG [kea-dhcp4.hosts/16201] HOSTS_CFG_GET_ALL_IDENTIFIER get all hosts with reservations using identifier: flex-id=AAAAAAAAAAAA
2019-03-25 15:03:47.724 DEBUG [kea-dhcp4.hosts/16201] HOSTS_CFG_GET_ALL_IDENTIFIER_COUNT using identifier flex-id=AAAAAAAAAAAA, found 0 host(s)
2019-03-25 15:03:47.725 DEBUG [kea-dhcp4.dhcp4/16201] DHCP4_CLASS_ASSIGNED [hwtype=1 aa:aa:aa:aa:aa:aa], cid=[bb:bb:bb:bb:bb:bb:bb:bb:bb:aa:aa:aa:aa:aa:aa], tid=0xBBBBBBBBB: client packet has been assigned to the following class(es): UNKNOWN
2019-03-25 15:03:47.725 DEBUG [kea-dhcp4.dhcp4/16201] DHCP4_CLASS_ASSIGNED [hwtype=1 aa:aa:aa:aa:aa:aa], cid=[bb:bb:bb:bb:bb:bb:bb:bb:bb:aa:aa:aa:aa:aa:aa], tid=0xBBBBBBBBB: client packet has been assigned to the following class(es): ALL, cpe, UNKNOWN
2019-03-25 15:03:47.725 DEBUG [kea-dhcp4.ddns/16201] DHCP4_CLIENT_HOSTNAME_PROCESS [hwtype=1 aa:aa:aa:aa:aa:aa], cid=[bb:bb:bb:bb:bb:bb:bb:bb:bb:aa:aa:aa:aa:aa:aa], tid=0xBBBBBBBBB: processing client's Hostname option
2019-03-25 15:03:47.725 DEBUG [kea-dhcp4.dhcpsrv/16201] DHCPSRV_PGSQL_GET_CLIENTID obtaining IPv4 leases for client ID bb:bb:bb:bb:bb:bb:bb:bb:bb:aa:aa:aa:aa:aa:aa
2019-03-25 15:03:47.725 DEBUG [kea-dhcp4.dhcpsrv/16201] DHCPSRV_PGSQL_GET_HWADDR obtaining IPv4 leases for hardware address hwtype=1 aa:aa:aa:aa:aa:aa
2019-03-25 15:03:47.726 DEBUG [kea-dhcp4.hosts/16201] HOSTS_CFG_GET_ONE_SUBNET_ID_ADDRESS4 get one host with reservation for subnet id 2 and IPv4 address 333.333.333.333
2019-03-25 15:03:47.726 DEBUG [kea-dhcp4.hosts/16201] HOSTS_CFG_GET_ALL_ADDRESS4 get all hosts with reservations for IPv4 address 333.333.333.333
2019-03-25 15:03:47.726 DEBUG [kea-dhcp4.hosts/16201] HOSTS_CFG_GET_ALL_ADDRESS4_COUNT using address 333.333.333.333, found 0 host(s)
2019-03-25 15:03:47.726 DEBUG [kea-dhcp4.hosts/16201] HOSTS_CFG_GET_ONE_SUBNET_ID_ADDRESS4_NULL host not found using subnet id 2 and address 333.333.333.333
2019-03-25 15:03:47.726 DEBUG [kea-dhcp4.hosts/16201] HOSTS_MGR_ALTERNATE_GET4_SUBNET_ID_ADDRESS4 trying alternate sources for host using subnet id 2 and address 333.333.333.333
2019-03-25 15:03:47.726 DEBUG [kea-dhcp4.dhcpsrv/16201] DHCPSRV_PGSQL_GET_ADDR4 obtaining IPv4 lease for address 333.333.333.333
2019-03-25 15:03:47.727 DEBUG [kea-dhcp4.alloc-engine/16201] ALLOC_ENGINE_V4_REQUEST_OUT_OF_POOL client [hwtype=1 aa:aa:aa:aa:aa:aa], cid=[bb:bb:bb:bb:bb:bb:bb:bb:bb:aa:aa:aa:aa:aa:aa], tid=0xBBBBBBBBB, which doesn't have a reservation, requested address 333.333.333.333 out of the dynamic pool
2019-03-25 15:03:47.727 DEBUG [kea-dhcp4.bad-packets/16201] DHCP4_PACKET_NAK_0004 [hwtype=1 aa:aa:aa:aa:aa:aa], cid=[bb:bb:bb:bb:bb:bb:bb:bb:bb:aa:aa:aa:aa:aa:aa], tid=0xBBBBBBBBB failed to grant a lease, client sent ciaddr 333.333.333.333, requested-ip-address (no address)
2019-03-25 15:03:47.727 DEBUG [kea-dhcp4.callouts/16201] HOOKS_CALLOUTS_BEGIN begin all callouts for hook pkt4_send
2019-03-25 15:03:47.727 DEBUG [kea-dhcp4.callouts/16201] HOOKS_CALLOUT_CALLED hooks library with index 3 has called a callout on hook pkt4_send that has address 0xAAAAAAAAAAA (callout duration: 0.127 ms)
2019-03-25 15:03:47.727 DEBUG [kea-dhcp4.callouts/16201] HOOKS_CALLOUTS_COMPLETE completed callouts for hook pkt4_send (total callouts duration: 0.127 ms)
2019-03-25 15:03:47.727 DEBUG [kea-dhcp4.options/16201] DHCP4_PACKET_PACK [hwtype=1 aa:aa:aa:aa:aa:aa], cid=[no info], tid=0xBBBBBBBBB: preparing on-wire format of the packet to be sent
2019-03-25 15:03:47.727 DEBUG [kea-dhcp4.packets/16201] DHCP4_PACKET_SEND [hwtype=1 aa:aa:aa:aa:aa:aa], cid=[no info], tid=0xBBBBBBBBB: trying to send packet DHCPNAK (type 6) from 222.222.222.222:67 to 111.111.111.111:67 on interface ens160
2019-03-25 15:03:47.727 DEBUG [kea-dhcp4.packets/16201] DHCP4_RESPONSE_DATA [hwtype=1 aa:aa:aa:aa:aa:aa], cid=[no info], tid=0xBBBBBBBBB: responding with packet DHCPNAK (type 6), packet details: local_address=222.222.222.222:67, remote_address=111.111.111.111:67, msg_type=DHCPNAK (6), transid=0x103ed2fd,




-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.isc.org/pipermail/kea-users/attachments/20190325/9f1031f0/attachment-0001.html>


More information about the Kea-users mailing list