Articles

Network orchestration with Micetro: open-source DHCP

Pairing your open-source DNS with similarly open-source DHCP makes a lot of sense, and Micetro can help you.

Aug 5th, 2021

Examining the open-source DHCP landscape is the natural progression from last week’s post on open-source DNS. If you’re building an open-source network environment, whether it’s because of the cost savings or the maturity of the software, pairing your open-source DNS with similarly open-source DHCP makes a lot of sense.

The open-source DHCP landscape

As observed in the last post, options for open-source DNS are legion. In contrast, the number of open-source DHCP counts much fewer.

The reason for this is that while DNS is a largely independent network service, often running outside of the traditional network infrastructure (like, for example, in the cloud; but we’ll take a closer look at cloud DNS specifically in the next post), DHCP is an integral part of it. The usefulness and convenience of DNS apply mainly to humans; the value of DHCP is mainly targeted at the machines on the network.

For any device to access a network, it needs an IP address. DHCP is the service that handles answering queries from devices asking for an IP and managing the assignment and release of IPs. Because of its unique position, DHCP is often part of a “bundle,” such as with hardware (running on a router) or software (running as part of a larger suite of software). Open-source software, on the other hand, by nature, is more “standalone,” meaning it needs to be installed and maintained by itself.

Still, there are several open-source implementations of the DHCP standards, but we’ve had to ignore those aimed at either specific use cases or that exist as part of a larger suite of tools.

  • dnsmasq bundles a DHCP implementation along with DNS
  • FreeRADIUS, an open-source RADIUS server, has a DHCP component
  • udhcpd is part of busybox, used in embedded systems
  • dhcpy6d is a mostly transitional tool for IPv4-IPv6 dual-stack environments
  • Dibbler is a DHCPv6-only implementation, no longer maintained (but definitely notable for its Discworld-reference naming)
  • Jagornet, an open-source and a fully-fledged DHCP server written in Java, we also had to discard from consideration as it’s not supported in Micetro

Long story short, for use in enterprise networks (and fully supported in Micetro), the only two contenders for open-source DHCP are ISC’s DHCP and Kea.

ISC DHCP

ISC DHCP is one of the (if not “the”) oldest DHCP software, and in fact, a reference implementation of the Dynamic Host Configuration Protocol as described in the IETF standard documents.

First released in 1998 (DHCP itself was made a standards-track protocol in 1993 with RFC 1531), it is a complete DHCP solution, including servers, relays, and clients. Due to it being open-source and developed with standards-compliance in mind, ISC DHCP became one of the most widely distributed DHCP software. It has been shipped with routers and other hardware products, and it’s available for every operating system under the Sun. According to ISC, “[m]any of the *nix operating system DHCP clients are believed to be based on the ISC DHCP client code, although they have diverged from the ISC open source distribution over the years.”

ISC DHCP is an actively maintained, mature software. But as time and technology advanced, ISC has decided to focus on a new implementation of DHCP: Kea.

Kea

Kea, also developed by ISC, is intended to be a more modern replacement for the original ISC DHCP.

While both Kea and its predecessor are standards-compliant, the design of Kea reflects the needs of modern network environments such as modularity and extendability (through pre-made or custom ‘hooks’). Kea also aims to “separate the data from the execution environment” – quite similarly to Micetro. ISC has realized, just as Men&Mice did, that data portability is key to make networks future-proof. Kea can store DHCP data in several supported databases, making administration, integration, and migration easier.

Another key difference between Kea and ISC DHCP is the implementation (and indeed interpretation) of high availability. While overlaps of functionality exist, Kea boasts “high availability” instead of ISC DHCP’s “failover” implementation.

Open-source DHCP with Micetro

Perhaps you already run a number of either ISC DHCP or Kea (or both) in your networks. Perhaps you’re just considering migrating to an open-source DHCP platform. Whatever the case may be, Micetro by Men&Mice fully supports both ISC DHCP and Kea for DHCP. The Men&Mice DHCP Server Controller, a minimal-footprint daemon running alongside the DHCP server, natively orchestrates communication between the DHCP server and Micetro, and you and your teams can take advantage of the single-pane-of-glass UI and unified API to control and manage both ISC DHCP and Kea instances; and more, such as Microsoft DHCP or Cisco IOS.

As we observed above: DHCP is a critical component of every single network, as it’s the central mechanism enabling IP address management. Keeping your DHCP functional and secure at all times is easy with Micetro, with complete visibility, object history, support for high availability and failover configurations, and a single API capable of automating multiple platforms across multiple locations.

Next up: taking flight to the cloud

You can build an enterprise-grade network at any scale using nothing but open-source, freely available DNS and DHCP software. Add Micetro to manage them, along with added IPAM functionality, and your network environments will stay functional and reliable for a long time. However, as business priorities and circumstances change more rapidly than ever before, your business might be best served by moving some or all of its workload to a cloud-based infrastructure.

Our next post will cover cloud DNS and how Micetro can bridge the (often considerable) gap between on-prem and cloud network environments.