Comments
bruce.armstrong wrote: Somebody just said it better than I did, and with more chops to say it: Open Letter to Mark Zuckerberg, Sheryl Sandberg & Facebook Mobile
Cloud Expo on Google News

SYS-CON.TV
Cloud Expo & Virtualization 2009 East
PLATINUM SPONSORS:
IBM
Smarter Business Solutions Through Dynamic Infrastructure
IBM
Smarter Insights: How the CIO Becomes a Hero Again
Microsoft
Windows Azure
GOLD SPONSORS:
Appsense
Why VDI?
CA
Maximizing the Business Value of Virtualization in Enterprise and Cloud Computing Environments
ExactTarget
Messaging in the Cloud - Email, SMS and Voice
Freedom OSS
Stairway to the Cloud
Sun
Sun's Incubation Platform: Helping Startups Serve the Enterprise
POWER PANELS:
Cloud Computing & Enterprise IT: Cost & Operational Benefits
How and Why is a Flexible IT Infrastructure the Key To the Future?
Click For 2008 West
Event Webcasts
DHCP Servers – Microsoft v Linux
DHCP Servers – Microsoft v Linux

The Dynamic Host Configuration Protocol (DHCP) is a network protocol that sends network configuration information to computers (and other devices) on a network. It allows a system administrator to manage an IP address range from a central location and to maintain network parameters for all systems from that same central point.

DHCP is an internet standard, published as RFC2131. Implementations exist for many different platforms, covering clients and servers. As a standard protocol there is no need to run the same implementation on clients and servers. A Linux client will happily interact with -for example- a Microsoft DHCP Server, and Windows clients can retrieve their configuration from a Linux system running the DHCP daemon.

We have been running the Microsoft DHCP Server on our internal network for many years without too many issues. Recently I moved it over to a Linux machine, as part of our migration away from Windows. I was pleasantly surprised to find that the Linux implementation has a lot more features than Microsoft's. Here's a short list:

  • Duplicate Address Avoidence: The Linux DHCPD will always ping the address it is about to issue, to make sure that it is not already in use, whilst the Microsoft DHCP Server will purely rely on its own leases database, which does sometimes result in duplicate addresses on the network.
  • DHCP Failover: DHCPD on Linux supports the draft DHCP Failover protocol, which allows two servers to jointly manage a single DHCP scope. Microsoft DHCP does not implement any type of failover.
  • DNS Registration: The DHCP Server on Linux can register hostnames with DNS. In a Microsoft environment, registration is up to the client.
  • Expressions: On Linux, it is possible to use expressions to dynamically determine the value for an option to be sent to a client. The Microsoft DHCP Server only allows static values.
  • Groups and Classes of clients: In the Linux DHCP server configuration file you can create groups and classes within a DHCP scope, and specify specific options or parameters for a group or class. With the Microsoft version, you can only specify options per scope or per client, whilst parameters (such as lease time) can only be specified on a scope-by-scope basis.
Due to the limitations in Microsoft's DHCP implementation, most larger companies have opted to use DHCP services of other network devices. Many of such devices run the ISC implementation of DHCP, which is -in fact- the exact same implementation as what comes with most Linux distributions.
About Herman Verkade
Herman Verkade is a UK-based, independent consultant who specializes in the management of large-scale heterogeneous environments. Over the past 22 years he has worked mostly with financial institutions in the UK, the U.S., and continental Europe.

In order to post a comment you need to be registered and logged in.

Register | Sign-in

Reader Feedback: Page 1 of 1

well, since the last time I posted message, I was successful in getting dhcp fail over working correctly. Everything described in man dhcpd.conf works perfectly except for the port ( both local and remote peer port have to be the same ). Making both primary and secondary server listen on same port, establishes a successful tcp connection between them ( with out firewall or other network blocks ) and works great !! Best source for dhcp failover is the man page itself

Anyone have a good place to start with finding out how to set up and configure the DHCP failover? And will a RED HAT DHCP server work properly in an AD environment? Thanks

Anyone have a good place to start with finding out how to set up and configure the DHCP failover?

Hi, these are very interesting comments about dhcp server, could someone please describe what the split index does.
thanks

>An unrelated question for you DHCP masters : Does any one >know how to exclude unknown computers from getting a >lease ?
>I would greatly appreciate a suggestion.
DHCP version 3 manual itself is helpful (ref.: http://www.bind9.net/dhcpd.conf.5)

-----------------------------------------
ALLOW DENY AND IGNORE IN SCOPE
The following usages of allow and deny will work in any
scope, although it is not recommended that they be used in
pool declarations.

The unknown-clients keyword

allow unknown-clients;
deny unknown-clients;
ignore unknown-clients;

The unknown-clients flag is used to tell dhcpd whether or
not to dynamically assign addresses to unknown clients.
Dynamic address assignment to unknown clients is allowed
by default. An unknown client is simply a client that has
no host declaration.

The use of this option is now deprecated. If you are try-
ing to restrict access on your network to known clients,
you should use deny unknown-clients; inside of your
address pool, as described under the heading ALLOW AND
DENY WITHIN POOL DECLARAIONS.
---------------------------------------
I myself have tested it before and have found it very helpful.

I agree with Armin & Daren's comments, Hermanhad a too short knowledge of MS DHCP, which in fact comes very close to ISC DHCP.
I am inclined to coinsider the reason why people use MS DHCP is just because it is bundled in the box.
I give a + to ISC for the DHCP Failover protocol as it allows two servers to jointly manage a single DHCP scope. Which is not the case with 80%20% scheme or MS Cluster.

An unrelated question for you DHCP masters : Does any one know how to exclude unknown computers from getting a lease ?
I would greatly appreciate a suggestion.

This article shows a lack of knowledge of the subject matter:

Duplicate Address Avoidence: MS DHCP does this, as per the RFC

DHCP Failover: erm, 80/20 rule and/or clustering both do this

DNS Registration: the server can be set to register addresses on behalf of the client if you wish. considering w2k's reliance on DNS then this is sort of a fundamental feature...

Expressions/Groups and Classes of clients: done by scope id settings

it looks to me like both products do exactly the same thing, which you would expect if they conform to the publicly documented standard RFCs. This article is a load of FUD

"Duplicate Address Avoidence: The Linux DHCPD will always ping the address it is about to issue, to make sure that it is not already in use, whilst the Microsoft DHCP Server will purely rely on its own leases database, which does sometimes result in duplicate addresses on the network. "

Interesting difference, however the end justifies the means. If the goal is "duplicate address avoidence", then this still happens on a Microsoft network. Microsoft OS based DHCP clients will ARP to see if the address is in use beforehand and will not take it if it's active. This also generates a duplicate address alert on the original owners desktop (if configured). I haven't seen one of these alerts in ages.

Yes we need a real comparison.
ISC version of DHCP (or as you called Linux version) is so much better because it is open source and much more developers are developing it and trying to more it forward in spite of their lack of resources.
But for the sake of you dear Mr. Gates, I should declare that your version of DHCP Server on NT4,Win2000 and Win 2003 is much more easier to install, configure and cooperate with other services (as you mentioned WINS) and although newer versions of Linux like RedHat Linux 9.0 has included the latest version of ISC DHCP on their installation CDs, when using older versions the admin must download the source from INet, compile and install it ... not a simple task for a beginner to the World of Network administration.
Mr. Gates, your version of DHCP requires less knowledge of the real protocol to deploy a successful installation. Just by knowing what DHCP does, and clicking, pointing and some typing, a simple network is being made. Your DHCP Service and other networking services like DNS has helped those people with less knowledge become network administrators (Although just in the Windows world and I don’t dare to imagine what happens to these new administrators when they are asked to install, config. and maintain some networking services like DHCP on Linux, Solaris, HP-UX or other variants of UNIX.)
ISC(Linux) DHCP Server for Teachers :
I also believe that your version is not suitable for teaching the concepts of TCP/IP networking. Configuring it seems like a game for students. With the ISC version, I have the option to put it in DEBUG mode . When teaching about the different phases of the protocol, the DISCOVER phase, OFFER phase and so on, the student can see it on the screen, a nice lab. I have found that these students have no trouble working on other versions on other OSs.
I also believe that learning DHCP (and any other common TCP/IP protocols) on Windows platform makes these future N.Admins lazy
Mr. Gates, but you are the leader in simplicity and really usable software. You carefully listen to your customer’s suggestions and needs, as you have done in different versions of DHCP server, from
W NT4 to W2003. It is going to be much simpler as the time passes.

God Bless The ISC Team And Of Course the Linux Community
Also God Bless My country IRAN and the great people of the UNITED STATES OF AMERICA for being so nice and for those moving science and tech forward and making humanity closer.

I'm sorry..... Why is Linux version of DHCP so much better?

I think that we need a real comparison here. The reason people use MS DHCP is for the intergation with Active Directory and Dynamic DNS\WINS.

The Name of the Article should have been 'DHCP Server - Linux'

From reading the dhcpd man page, (v3.0pl1) it says that it
does both forward and reverse DNS name updates. You do need to provide the key statement for both the forward and the reverse domaine names

i might be wrong here, but one feature that i havn't got working on DHCPD from Microsoft is auto-updating of client's reverse DNS entries.. Active Directory uses dhcp to generate a list of reverse entries.

If this can be done with Bind/DHCPD then please someone prove me wrong.

All in all i have found dhcpd more reliable, especially when dishing out large numbers of ip's at once... say 8am when everyone logs on.

Yahoo had an news story about this the other day. Not something I would normally think about but it made the news.

Besides the features you have mentioned, It has one very nice and useful feature.
It is possible to deny some clients from getting address. It's somehow like host registration, but you must explicitly set this option in order to deny unknown hosts from registering.
This feature is so helpful specially in my large networks where some employments may use external PCs and notebooks.
I once used this feature in the days of Nimda virus. A DHCP client with known NETBIOS, was spreading dirty attachments to other clients. Being new to this large newtork, I did not have any documentation about the client's
physical location to call him/her, so the best solution was not to give him/her logical network access in the form of IP assignment. I believed that he/her would call me complaining about the problem. By checking his/her NETBIOS name, it would be possible to initiate virus checking.
Using the mentioned nice feature I could deny Linux's DHCP server lease address to this specific host (A feature absent in any MS implementation of DHCP).
The story went on exactly according to my scenario.

Of course, the features are more than mentioned. It's debugging features are also a great tool for every network administrator.

Thanks to the great team of ISC DHCP Server.


Your Feedback
srinivas wrote: well, since the last time I posted message, I was successful in getting dhcp fail over working correctly. Everything described in man dhcpd.conf works perfectly except for the port ( both local and remote peer port have to be the same ). Making both primary and secondary server listen on same port, establishes a successful tcp connection between them ( with out firewall or other network blocks ) and works great !! Best source for dhcp failover is the man page itself
mark wrote: Anyone have a good place to start with finding out how to set up and configure the DHCP failover? And will a RED HAT DHCP server work properly in an AD environment? Thanks
mark wrote: Anyone have a good place to start with finding out how to set up and configure the DHCP failover?
srinivas wrote: Hi, these are very interesting comments about dhcp server, could someone please describe what the split index does. thanks
Armin Nekoosefat wrote: >An unrelated question for you DHCP masters : Does any one >know how to exclude unknown computers from getting a >lease ? >I would greatly appreciate a suggestion. DHCP version 3 manual itself is helpful (ref.: http://www.bind9.net/dhcpd.conf.5) ----------------------------------------- ALLOW DENY AND IGNORE IN SCOPE The following usages of allow and deny will work in any scope, although it is not recommended that they be used in pool declarations. The unknown-clients keyword allow unknown-clients; deny unknown-clients; ignore unknown-clients; The unknown-clients flag is used to tell dhcpd whether or not to dynamically assign addresses to unknown clients. Dynamic address assignment to unknown clients is allowed by default. An unknown client is simply a client that has no host declaration....
lionel wrote: I agree with Armin & Daren's comments, Hermanhad a too short knowledge of MS DHCP, which in fact comes very close to ISC DHCP. I am inclined to coinsider the reason why people use MS DHCP is just because it is bundled in the box. I give a + to ISC for the DHCP Failover protocol as it allows two servers to jointly manage a single DHCP scope. Which is not the case with 80%20% scheme or MS Cluster. An unrelated question for you DHCP masters : Does any one know how to exclude unknown computers from getting a lease ? I would greatly appreciate a suggestion.
Darren wrote: This article shows a lack of knowledge of the subject matter: Duplicate Address Avoidence: MS DHCP does this, as per the RFC DHCP Failover: erm, 80/20 rule and/or clustering both do this DNS Registration: the server can be set to register addresses on behalf of the client if you wish. considering w2k's reliance on DNS then this is sort of a fundamental feature... Expressions/Groups and Classes of clients: done by scope id settings it looks to me like both products do exactly the same thing, which you would expect if they conform to the publicly documented standard RFCs. This article is a load of FUD
K. wrote: "Duplicate Address Avoidence: The Linux DHCPD will always ping the address it is about to issue, to make sure that it is not already in use, whilst the Microsoft DHCP Server will purely rely on its own leases database, which does sometimes result in duplicate addresses on the network. " Interesting difference, however the end justifies the means. If the goal is "duplicate address avoidence", then this still happens on a Microsoft network. Microsoft OS based DHCP clients will ARP to see if the address is in use beforehand and will not take it if it's active. This also generates a duplicate address alert on the original owners desktop (if configured). I haven't seen one of these alerts in ages.
Armin Nekoosefat wrote: Yes we need a real comparison. ISC version of DHCP (or as you called Linux version) is so much better because it is open source and much more developers are developing it and trying to more it forward in spite of their lack of resources. But for the sake of you dear Mr. Gates, I should declare that your version of DHCP Server on NT4,Win2000 and Win 2003 is much more easier to install, configure and cooperate with other services (as you mentioned WINS) and although newer versions of Linux like RedHat Linux 9.0 has included the latest version of ISC DHCP on their installation CDs, when using older versions the admin must download the source from INet, compile and install it ... not a simple task for a beginner to the World of Network administration. Mr. Gates, your version of DHCP requires less knowledge of the real protocol to deploy a successful installation. Just by knowing wh...
Bill Gates wrote: I'm sorry..... Why is Linux version of DHCP so much better? I think that we need a real comparison here. The reason people use MS DHCP is for the intergation with Active Directory and Dynamic DNS\WINS. The Name of the Article should have been 'DHCP Server - Linux'
Stephen Samuel wrote: From reading the dhcpd man page, (v3.0pl1) it says that it does both forward and reverse DNS name updates. You do need to provide the key statement for both the forward and the reverse domaine names
Gary Bowers wrote: i might be wrong here, but one feature that i havn't got working on DHCPD from Microsoft is auto-updating of client's reverse DNS entries.. Active Directory uses dhcp to generate a list of reverse entries. If this can be done with Bind/DHCPD then please someone prove me wrong. All in all i have found dhcpd more reliable, especially when dishing out large numbers of ip's at once... say 8am when everyone logs on.
Darryl wrote: Yahoo had an news story about this the other day. Not something I would normally think about but it made the news.
Armin Nekoosefat wrote: Besides the features you have mentioned, It has one very nice and useful feature. It is possible to deny some clients from getting address. It's somehow like host registration, but you must explicitly set this option in order to deny unknown hosts from registering. This feature is so helpful specially in my large networks where some employments may use external PCs and notebooks. I once used this feature in the days of Nimda virus. A DHCP client with known NETBIOS, was spreading dirty attachments to other clients. Being new to this large newtork, I did not have any documentation about the client's physical location to call him/her, so the best solution was not to give him/her logical network access in the form of IP assignment. I believed that he/her would call me complaining about the problem. By checking his/her NETBIOS name, it would be possible to initiate virus checki...
Latest Cloud Developer Stories
The move to cloud-based applications has undeniably delivered tremendous benefits. However, the associated distribution creates various challenges from the quality perspective: End-to-end tests need to pass through multiple dependent systems, which are commonly unavailable, evo...
For many of the same reasons that Software-as-a-Service is catching on with enterprise buyers, delivering web services on top of Infrastructure-as-a-Service architectures is appealing to the SaaS developers. Operational agility, lower CapEx, and a broad array of tools and service...
With Cloud Expo 2012 New York (10th Cloud Expo) now just under three weeks away, what better time to introduce you in greater detail to the distinguished individuals in our incredible Speaker Faculty for the technical and strategy sessions at the conference... We have technica...
“We are embarking on a critical journey where identity information becomes the key asset of the digital age,” declared Andy Land, Vice President of Marketing at UnboundID, in this exclusive Q&A with Cloud Expo Conference Chair Jeremy Geelan. Land noted that “Facebook and Google m...
With Cloud Expo 2012 New York (10th Cloud Expo) now just under three weeks away, what better time to introduce you in greater detail to the distinguished individuals in our incredible Speaker Faculty for the technical and strategy sessions at the conference...
Subscribe to the World's Most Powerful Newsletters
Subscribe to Our Rss Feeds & Get Your SYS-CON News Live!
Click to Add our RSS Feeds to the Service of Your Choice:
Google Reader or Homepage Add to My Yahoo! Subscribe with Bloglines Subscribe in NewsGator Online
myFeedster Add to My AOL Subscribe in Rojo Add 'Hugg' to Newsburst from CNET News.com Kinja Digest View Additional SYS-CON Feeds
Publish Your Article! Please send it to editorial(at)sys-con.com!

Advertise on this site! Contact advertising(at)sys-con.com! 201 802-3021

SYS-CON Featured Whitepapers
ADS BY GOOGLE