Tomato DHCP server constantly fails.

7 posts / 0 new
Last post
Edwin
Edwin's picture
Tomato DHCP server constantly fails.

First, let me say thanks to everyone a part of this community.  I love Tomato & DDWRT.  However I am having a problem I can not solve with Tomato and am in need of assistance.

I have been using DDWRT for years on various platforms.  With the 3500L I used DDWRT for a while and switched to Tomato where I have been for quite a while.

I have quite a few 3500L in home and corporate use.  One thing I have noticed is that the DHCP server (not the client) fails over constantly on public networks. 

For example, I have one 3500L dedicated to DHCP only.   I have a ZyXel on this network acting as the firewall.   The 3500L's DHCP server will just quit handing out leases.   Per the logs, everything looks normal.  I see the DHCP requests, and the ACKs in the logs when this happens.  However the clients never get the DHCP packet response.

I have ran many many different versions of Tomato and they all have the same issue.  Today I flashed to Toastman's Tomato Firmware for WNR3500L w/ USB (Ext) 1.28.7476 K26 and within a few hours I noticed the problem.   My MacBok Pro with a DHCP reservation lost it's lease and could not renew, even though the logs showed my DHCP requests and ACK responses.

I have the network defined as 172.26.0.0/255.255.0.0 and I have a lease range for 172.26.3.0 to 172.26.5.255.   On the other tab we have maximum leases set to 800. We typically have 200-300 clients on this particular network.  (We don't use the ZyXel for DHCP because it only supports class C DHCP.)

Any ideas what to look at?   This is public WIFI.  Anyone can get on it.  I currently have the scheduler set to reboot every 60 minutes, yet this problem still occurs.  If I can't solve this I will have to abandon Tomato & Netgear for these networks and and look at something like a 1U Linux/dhcpd server.  I'd rather just fix what I have. 

Also, is there a way to reset the DHCP server using the scheduler vs. just rebooting?  This isn't dhcpd (right?) so it is not something like /etc/init.d/dhcpd restart.

 

Edwin

Brandon C
Brandon C's picture
If you are seeing this mostly

If you are seeing this mostly from wireless connected devices you may want to try DD-WRT instead.
I have had similar issues with Tomato but just on the wireless side.

Edwin
Edwin's picture
I can't use DD-WRT because it

I can't use DD-WRT because it only supports a class C network, much like my ZyXel. This can be seen on the screens as shown here;

http://www.dd-wrt.com/wiki/index.php/DNSMasq_as_DHCP_server

I should also clarify that the WIFI is turned off on the 3500L. I have a large number of WIFI APs connected via Fiber and CAT6 around the main campus. Most are Cisco, Linksys, Hawking, and Netgear. All of them do WIFI only, no DHCP and no DNS. Everything is connected as 172.26.x.x with the Tomato handing out DHCP to all. We have Bluecoat for QoS so we need everything on one network. That way our per station QoS rules work correctly.

We're about to switch to dedicated DHCP boxes (such as Ubuntu running dhcpd and while I am at it, bind.) I Just wanted to make sure I gave Tomato every chance to succeed.

Toastman
Toastman's picture
I have absolutely no idea why

I have absolutely no idea why this is happening, but I don't believe it is normal.

If the logs look correct, I wonder if you have tried to examine the response with wireshark? i.e. is it sending the wrong response, or none at all?

There have also been several versions of dnsmasq used over the years, I imagine from what you say that you've tried most of them. Did you try going right back to, say, Tomato 1.23 in it's various forms?

Curious.

Good luck with your system!

Edwin
Edwin's picture
Yes.  I turned on port

Yes.  I turned on port mirroring on the Cisco switch.  Wireshark shows the DHCP requests, and renewal attempts.   But no DHCP offers or anything from Tomato when this problem is happening.   Tomato's logs do show ACKs and such, the packets just never actually get sent out.

 

I have tried 1.28 versions 7475, 7476, 9053, 9054.  I don't think I have tried 1.23.   Worth a shot.

Kong
Kong's picture
I can't use DD-WRT because it

I can't use DD-WRT because it only supports a class C network, much like my ZyXel. This can be seen on the screens as shown here;

No the screenshot shows only the basic dhcp-settings.

But you can enter additional options for dnsmasq under Services->Services.

Quoating form dnsmasq man page for dhcp-range:

This option may be repeated, with different addresses...

Edwin
Edwin's picture
 Ah, thank you!  So I would

 Ah, thank you!  So I would add the following lines for example;

dhcp-range=172.26.5.0,172.26.6.255,255.255.0.0,9h

I'm going to give my last set of adjustments a chance and if this doesn't work, switch to DDWRT and try this.  Thanks!