8 Replies Latest reply on Nov 27, 2012 4:10 AM by PhilM

    DHCP Server not showing allocated addresses

    PhilM

      It's not something I've paid particular attention to, but lately I have been working with a couple of devices (an Android tablet and a Raspberry Pi) which use DHCP to obtain IP credentials from my SG565 appliance. The act of providing these details isn't the problem, but I have found that when I go to the DHCP Server -> DHCP Addresses screen it doesn't show any allocated addresses. In fact when I look at the DHCP Status screen I can see the two configured scopes - one on my Bridge0 interface and one on a DMZ and both scopes say "0 Used, X Free" (X is 50 on my Bridge interface and 10 on my DMZ).

       

      I noticed that I was only running 4.0.6 so I downloaded and installed 4.0.8 and then 4.0.10.

       

      However, in neither case did the upgrade make any difference.

       

      I know were are dealing with unsupported technology now, but I was curious to know if there was anything I could do?

       

      What prompted me to look into this was the fact that I discovered the Raspberry Pi device had a tendency to get a different DHCP address each time it re-booted and I was going to look at the DHCP Addresses screen on my SG565 in order to grab its MAC address and then define a reservation. It was only then I noticed that the SG didn't believe it had any allocated addresses.

       

      -Phil.

        • 1. Re: DHCP Server not showing allocated addresses

          does

           

          /etc/config/dhcp.leases

           

          have the lease information ?

           

          i would guess not, as the GUI is really only displaying the contents of this file.

           

          Does a tcpdump show the lease being handed out by the 565 ?

           

          tcpdump -n -i eth0.2 udp port 68

           

          replacing eth0.2 with the relevant interface number.

          • 2. Re: DHCP Server not showing allocated addresses
            PhilM

            Thanks.

             

            The /etc/dhdcpd.leases file does appear to contain lease information - though I don't know if the fact that almost all of the entries I can see have long since expired has anything to do with my symptoms. Here's a small sample from the top of this file (with some data obscured - but you can see the lease along with the start/end dates):-

             

             

            lease x.x.3.150 {

              starts 5 2011/08/05 19:58:14;

              ends 5 2011/08/05 20:02:00;

              tstp 5 2011/08/05 20:02:00;

              cltt 5 2011/08/05 19:58:14;

              binding state free;

              hardware ethernet 00:30:1b:xx:xx:xx;

              uid "\001\0000\033@X\352";

            }

            lease x.x.3.151 {

              starts 0 2012/10/07 06:55:38;

              ends 0 2012/10/07 07:20:32;

              tstp 0 2012/10/07 07:20:32;

              cltt 0 2012/10/07 06:55:38;

              binding state free;

              hardware ethernet 00:01:80:xx:xx:xx;

              uid "\001\000\001\200[\314\331";

            }

            lease x.x.3.152 {

              starts 5 2012/10/19 18:53:01;

              ends 5 2012/10/19 19:37:52;

              tstp 5 2012/10/19 19:37:52;

              cltt 5 2012/10/19 18:53:01;

              binding state free;

              hardware ethernet b8:27:eb:xx:xx:xx;

            }

            lease x.x.3.153 {

              starts 6 2012/11/17 19:01:00;

              ends 0 2012/11/18 19:01:00;

              tstp 0 2012/11/18 19:01:00;

              cltt 6 2012/11/17 19:01:00;

              binding state free;

              hardware ethernet 00:0e:c6:xx:xx:xx;

            }

            lease x.x.1.80 {

              starts 0 2010/07/11 16:37:34;

              ends 1 2010/07/12 16:37:34;

              tstp 1 2010/07/12 16:37:34;

              cltt 0 2010/07/11 16:37:34;

              binding state free;

              hardware ethernet 6c:f0:49:xx:xx:xx;

            }

            lease x.x.1.79 {

              starts 0 2010/07/18 14:27:13;

              ends 1 2010/07/19 14:27:13;

              tstp 1 2010/07/19 14:27:13;

              cltt 0 2010/07/18 14:27:13;

              binding state free;

              hardware ethernet 6c:f0:49:xx:xx:xx;

              uid "\001l\360I\321\337\033";

            }

             

            As I said originally, the device doesn't appear to have any difficultly issuing DHCP addresses. Here's the tcpdump output:-

             

            # tcpdump -n -i br0 udp port 68

            tcpdump: verbose output suppressed, use -v or -vv for full protocol decode

            listening on br0, link-type EN10MB (Ethernet), capture size 96 bytes

            09:03:03.887101 IP 0.0.0.0.68 > 255.255.255.255.67: UDP, length 313

            09:03:03.890732 IP xx.xxx.1.1.67 > xx.xxx.1.69.68: UDP, length 300

             

            Checking the client machine it has indeed received the IP address xx.xxx.1.69

            • 3. Re: DHCP Server not showing allocated addresses
              PhilM

              Whoops - premature "Add Reply" action.

               

              I was going to add - Looking at the dchpd.leases file, and searching for the address which has been issued, the only oddity I can see is that there appear to be two of them:-

               

              lease xx.xxx.1.69 {

                starts 1 2012/11/19 09:02:29;

                ends 2 2012/11/20 09:02:29;

                tstp 4 2012/11/01 11:45:28;

                cltt 1 2012/11/19 09:02:29;

                binding state active;

                next binding state free;

                hardware ethernet 00:0c:29:xx:xx:xx;

                uid "\001\000\014)\322\314\200";

                client-hostname "vm-client";

              }

              server-duid "\000\001\000\001\022\332aD\000\320\317\0050b";

               

              lease xx.xxx.1.69 {

                starts 1 2012/11/19 09:03:03;

                ends 2 2012/11/20 09:03:03;

                tstp 4 2012/11/01 11:45:28;

                cltt 1 2012/11/19 09:03:03;

                binding state active;

                next binding state free;

                hardware ethernet 00:0c:29:xx:xx:xx;

                uid "\001\000\014)\322\314\200";

                client-hostname "vm-client";

              }

               

              ...and the DHCP addresses list in the GUI remains resolutely unpopulated.

              • 4. Re: DHCP Server not showing allocated addresses

                If you manually clean out these 2 duplicate entires and restart everything, does that resolve the issue ?

                 

                Do two entries get inserted again ?

                • 5. Re: DHCP Server not showing allocated addresses
                  PhilM

                  I was about to do that, but I noticed something odd and thought it best to run it past you first.

                   

                  Opening the dhcpd.leases file, there is still a duplicate, and that duplicate entry always seems to appear after the server-duid value at the bottom of the file.

                   

                  However....when I checked the file this morning, the duplicate entry was for a different lease - 1.73, whereas yesterday's was 1.69.

                   

                  Would it be safe to clear this file out completely? - as I mentioned yesterday many of the leases have end dates from a few years ago and are therefore completely redundant. I'm not sure why they aren't being flushed out and I'm not sure whether their presence would prevent a new lease from being issued against that same IP address. I wondered if deleting the contents and saving an empty copy of the file would cause the DHCP service to go into distress or something and not start-up at all.

                   

                  Also when you say "restart everything" do you mean reboot, or is there a CLI command which will restart this one service without needing to resort to a full restart?

                   

                  Thanks again.

                   

                  -Phil.

                  • 6. Re: DHCP Server not showing allocated addresses
                    PhilM

                    I know you're a busy man, but any chance you could offer feedback on my 20th Nov response, before I go ahead and do it?

                     

                    Many Thanks,

                    Phil.

                    • 7. Re: DHCP Server not showing allocated addresses

                      My apologies Phil...seems I missed your email.

                       

                      Thanks for bringing it to my attention

                       

                      The purpose of the file is to keep track of leases so duplicates are not issued.

                       

                      As such in your enviroment it will be fine to completely clear out this file and let it populate again, and check for duplicates.

                       

                      The do a reboot.....or stop and start the DHCP server from the web interface.

                      • 8. Re: DHCP Server not showing allocated addresses
                        PhilM

                        Thanks that does appear to have done the trick.

                         

                        I cleared out the entire contents of /etc/config/dhcpd.leases. I then used the GUI to disable and then re-enable the DHCP service on br0.

                         

                        I then proceeded to re-start each device on the network which I know to use DHCP to obtain an address. As I restarted each one, I waited until it had finished and then checked the contents of dhcpd.leases. No duplicates or any other spurious entries.

                         

                        Then final test, checking the GUI. I am now looking at a "DHCP Addresses" screen which is, once again, populated with entries instead of being completely empty.

                         

                        Many Thanks!

                         

                        Phil.