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

Princeton DHCP Bug

Scheduled Pinned Locked Moved 2.1 Snapshot Feedback and Problems - RETIRED
7 Posts 2 Posters 2.2k Views
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.
  • M
    markuhde
    last edited by May 5, 2013, 6:45 AM

    Hi, I've got an Android device on my client's network right now experiencing the "Princeton Bug" (for lack of a better term - the bug where devices keep using an IP without renewing it). There's a small enough load right now that I don't know - but do you know if in 2.1 there are any protections to help mitigate this widespread bug? Ideally, I'm thinking the DHCP server should check ARP on the network and make sure an IP isn't being used before issuing it.

    To help mitigate the effect of this, I've changed my IP lease time from 2 hours to 12 hours. This should greatly increase the odds that an Android device will request a new lease before it expires.

    1 Reply Last reply Reply Quote 0
    • J
      jcyr
      last edited by May 5, 2013, 3:44 PM

      From the dhcpd.conf man page:

      The  DHCP  server  checks IP addresses to see if they are in use before allocating them to clients.  It does this  by  sending  an  ICMP  Echo request  message  to  the IP address being allocated. If no ICMP Echo reply is received within a second, the address is assumed to  be  free. This  is  only done for leases that have been specified in range statements, and only when the lease is thought by the DHCP server to be free.

      Unless the IP address is one statically specified for a different host, you should be fine.

      IPV6 Test: http://ipv6-test.com

      1 Reply Last reply Reply Quote 0
      • M
        markuhde
        last edited by May 5, 2013, 3:50 PM

        Nope, it's the bug Princeton saw where Android devices hang on to IP addresses without renewing the lease if they're asleep when the lease expires. Thanks so much :)

        1 Reply Last reply Reply Quote 0
        • J
          jcyr
          last edited by May 5, 2013, 5:49 PM May 5, 2013, 5:14 PM

          Ah! I see. The device goes to sleep and won't respond to the IP conflict detection ICMP. Not sure how the DHCP server could get around that problem? Other than using nearly infinite lease time. ARP table entries expire, so I'm not sure checking those would help.

          IPV6 Test: http://ipv6-test.com

          1 Reply Last reply Reply Quote 0
          • M
            markuhde
            last edited by May 6, 2013, 6:54 AM

            I think pinging is all that's needed. When it's asleep it's still online and talking, but doesn't renew it's lease. Affects all version of Android prior to 4.2 but it's the first time I've ever NOTICED a device doing it.

            1 Reply Last reply Reply Quote 0
            • J
              jcyr
              last edited by May 6, 2013, 7:19 AM

              'Pigning' is ICMP. If it was responding to ICMP when asleep then the existing conflict avoidance already built-in to dhcpd would work. My phone is Android 4.2, so I can try it. Furthermore I have it set to disconnect when sleeping.

              IPV6 Test: http://ipv6-test.com

              1 Reply Last reply Reply Quote 0
              • M
                markuhde
                last edited by May 6, 2013, 8:12 AM

                @jcyr:

                'Pigning' is ICMP. If it was responding to ICMP when asleep then the existing conflict avoidance already built-in to dhcpd would work. My phone is Android 4.2, so I can try it. Furthermore I have it set to disconnect when sleeping.

                That's what I mean, I didn't know the DHCP server had that conflict avoidance, it should be fine :) As for your phone, one - it doesn't affect Android 4.2, and two - it doesn't affect phones that disconnect when sleeping :)

                Here's details on the bug: http://www.net.princeton.edu/android/android-stops-renewing-lease-keeps-using-IP-address-11236.html

                I noticed it personally the first time two nights ago, a device in DHCP leases "online and expired"

                1 Reply Last reply Reply Quote 0
                1 out of 7
                • First post
                  1/7
                  Last post
                Copyright 2025 Rubicon Communications LLC (Netgate). All rights reserved.
                  This community forum collects and processes your personal information.
                  consent.not_received