Netgate Discussion Forum
    • Categories
    • Recent
    • Tags
    • Popular
    • Users
    • Search
    • Register
    • Login

    Kea DHCP server assigns dynamic IP address instead of static

    Scheduled Pinned Locked Moved DHCP and DNS
    8 Posts 2 Posters 291 Views 2 Watching
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • nazar-pcN Offline
      nazar-pc
      last edited by

      Initially reported at https://redmine.pfsense.org/issues/16583. Essentially I have a static DHCP mapping for a client by its MAC address, which works correctly with ISC DHCP server, but with Kea DHCP server the client ends up with a dynamically assigned IP address instead:
      Знімок екрана з 2025-12-08 20-35-31.png

      I believe this is wrong, while Jim Pingle at above link disagrees for some reason. See linked bug for pcap file with client<>server DHCP communication.

      Not only that, firewall hostname aliases are resolved to the first (static) IP address only, not both, breaking my expectations about firewall rules.

      tinfoilmattT 1 Reply Last reply Reply Quote 0
      • tinfoilmattT Offline
        tinfoilmatt LAYER 8 @nazar-pc
        last edited by

        @nazar-pc This is an issue with the Govee device's DHCP implementation. The non-standard behavior starts at packet #9 of the capture attached to your Redmine report. There's no reason for the device to make a new request after it's already received (and had acknowledged) your static reservation.

        nazar-pcN 1 Reply Last reply Reply Quote 0
        • nazar-pcN Offline
          nazar-pc @tinfoilmatt
          last edited by

          @tinfoilmatt That might be true, but why would DHCP server possibly return a dynamic IP address to the client instead of returning the same static IP address repeatedly instead?
          That is definitely not how I expect DHCP server to behave.

          tinfoilmattT 1 Reply Last reply Reply Quote 0
          • tinfoilmattT Offline
            tinfoilmatt LAYER 8 @nazar-pc
            last edited by tinfoilmatt

            @nazar-pc Because your static reservation has already been requested and acknowledged (i.e., it's, at that point, in-use).

            nazar-pcN 1 Reply Last reply Reply Quote 0
            • nazar-pcN Offline
              nazar-pc @tinfoilmatt
              last edited by

              @tinfoilmatt Hm... but it is a static allocation. It doesn't have the start time and doesn't have the end time, I expect it to always be exactly the same no matter how many times the client requests it.

              tinfoilmattT 1 Reply Last reply Reply Quote 0
              • tinfoilmattT Offline
                tinfoilmatt LAYER 8 @nazar-pc
                last edited by

                @nazar-pc The client's superfluous third request (i.e., packet #9) contains DHCP option 50, requesting a specific address (i.e., 192.168.2.101 in the case of your trace)—even though it's already been assigned a valid address from your static reservation. All bets are off when the client is acting in an unexpected/non-standard way.

                nazar-pcN 1 Reply Last reply Reply Quote 0
                • nazar-pcN Offline
                  nazar-pc @tinfoilmatt
                  last edited by

                  @tinfoilmatt Is DHCP server not supposed to reject request if static mapping already exists for it?
                  To me it seems like DHCP server is intentionally ignoring static configuration.

                  tinfoilmattT 1 Reply Last reply Reply Quote 0
                  • tinfoilmattT Offline
                    tinfoilmatt LAYER 8 @nazar-pc
                    last edited by

                    @nazar-pc Would have to consult DHCP spec. Could be a valid report for upstream, but I'm not sure.

                    1 Reply Last reply Reply Quote 0
                    • First post
                      Last post
                    Copyright 2026 Rubicon Communications LLC (Netgate). All rights reserved.