DHCP or fixed IPs for servers ????

Marko Vojinovic vvmarko at gmail.com
Mon Sep 19 16:24:37 UTC 2011


On Mon, Sep 19, 2011 at 4:27 PM, Fulko Hew <fulko.hew at gmail.com> wrote:
> On Mon, Sep 19, 2011 at 10:00 AM, Dave Ihnat <dihnat at dminet.com> wrote:
>> On Mon, Sep 19, 2011 at 12:28:24AM -0600, linux guy wrote:
>>> I have a number of servers on our local network.  I have always set the IP
>>> on my servers manually, ie disabled DHCP and assigned each one a unique
>>> fixed IP.
>>
>> You really don't need to do that.  Just use an IP mapping scheme,
>> restrict the DHCP range, and manually assign static server addresses
>> from a known range.
>>
>>> Is there a practical way to assign an IP to a server automatically, ie with
>>> DHCP and still have other computers find it on the network and have services
>>> like port forwarding, firewalls, etc. work properly in routers ?
>>
>> Well, yes, you can reserve addresses by MAC address, use DDNS with your
>> DHCP server to update DNS, but why?  Servers should always be effectively
>> static; any scheme that assigns addresses to them increases complexity
>> and the possibility of problems.
>
> Ordinarily (in a perfect world) I would totally agree with those comments,
> but alas, I don't live in a perfect world.
>
> So I've found that because (in my case) the addressing, etc. is controlled
> by another group, I've found it easier to get them to allocate an address
> (from their pool) and have it fed to my machine via DHCP  (it sadly seems that
> the world has almost forgotten that you can assign things statically!)
>
> Then I can also allow them to feed me the correct domain and DNS resovler
> information, etc. (so that I can behave and operate nicely within
> their network).
> I have them feed me this info, because otherwise, when _they_ change the
> network, I'd never know... until _after_ I found out something was broken.
>
> Having said that... I still had to implement the address as static and I had to
> turn on my own 'bind' for DNS resolution, etc. because a lot of the information
> they provided by DHCP was still incorrect.  But that was the idea.

If you control the DHCP server, you can always configure the "host"
directive, to make the server give the specified IP to a specified
host, every time. This is effectively the same as static assignment,
but done by the DHCP server, so it is easier to
maintain/configure/reconfigure.

If you do not control the DHCP server, you can always ask the guys who
do control it to configure the appropriate "host" directive for you
(if you give them a valid reason ;-) ).

In my experience, the "host" directive is the best solution if you
have a couple of servers and a bunch of ordinary client machines which
do not require a static IP. In such a usecase, DDNS is an overkill and
too complicated. It makes sense to use DDNS only if *every* machine on
your network needs to be "visible" as a server, and/or if you have
more than 7 servers (feel free to insert your favorite number instead
of "7"). ;-)

HTH, :-)
Marko


More information about the users mailing list