DHCP for multiple subnets (was: Re: Routing and bandwidth problem)

Rodolfo J. Paiz rpaiz at simpaticus.com
Sun Jun 13 19:08:32 UTC 2004


At 06:25 6/13/2004, Matt . wrote:
>The DHCP server shouldn't care what interface the request came in on, 
>rather it looks at the source network of the request.

I'm no expert on DHCP, but I continued this thread since no one around here 
was able to help me solve this problem earlier. Hence, having found a 
solution I'm posting it.

Having said the "not an expert" bit, how the heck is a computer who does 
not know what network it's on going to provide a source network for the 
DHCP server? It wakes up, yells out a broadcast request for a DHCP server, 
and the server has to answer that. The *only* way I see to do that is via 
the network interface on which the request arrived at the router.

>So you server could support many different ranges, provided there was 
>suitable separation (i.e. a router) between the subnets and the server.

But that's precisely the point! We were seeking a way for *one* machine to 
act as a router/firewall/gateway/dhcpd for four subnets that are directly 
connected to it. No other routers exist in this scenario. Of *course* if 
another router existed, it'd be a piece of cake. But the question was: if 
this is the only router providing Internet access for four separate 
networks who are currently not connected to anything and don't have 
routers, how do you manage to assign them separate subnets via DHCP?

Only two solutions appear to exist and be functional: buying $75 Netgear 
blue boxes to do DHCP for the subnets and masquerading so that all traffic 
to my server comes from a single IP address, and setting up separate 
interfaces on my router box. The "blue box" route was discarded due to the 
expense (why spend $300 if not necessary), the additional points of failure 
(despite being highly reliable), the additional configuration and 
maintenance required, and the slightly lower functionality (if one user on 
those subnets were abusing bandwidth, it'd be hell to find them).

Having chosen to do it all on one box, the challenge appeared to be for 
DHCPd to issue different addresses based on the interface on which the 
request arrived. The documentation appeared to offer no easy way to do 
this, and I interpreted that to mean that it would be a difficult 
challenge. Turns out, it's automatic!

         1. You *should* configure your dhcpd.conf for every subnet on 
which your server has an interface even if the DHCP server does not assign 
addresses (i.e. the subnet block does not include a range statement).

         2. The server will then automatically assign an address in the 
correct subnet for every incoming request, assuming that it's been told to 
assign addresses on that subnet via a range statement. Nothing more to be done.

Too simple. <grin>

Cheers,


-- 
Rodolfo J. Paiz
rpaiz at simpaticus.com
http://www.simpaticus.com





More information about the fedora-list mailing list