NetworkManager 1.54.1 Released with Global DNS Overwrite

NetworkManager, the powerful tool that manages your internet connection on most Linux systems, has just rolled out its latest update, version 1.54.1.

While it might sound like a small point release, it packs some significant changes that give you more control over your network settings, especially when it comes to DNS and the very early stages of your computer’s boot-up process.

Let’s break down what’s new and why it matters to you.

A New Era for DNS: Global Settings Take the Lead

Before we dive into the big change, let’s have a quick refresher on DNS. Think of the Domain Name System (DNS) as the internet’s phonebook.

It translates human-friendly website addresses (like www.google.com) into computer-friendly IP addresses. Your computer needs to know which DNS “phonebook” to use, and that’s where DNS settings come in.

In the past, NetworkManager would merge the DNS settings from your individual network connections with any global DNS settings you might have.

This could sometimes lead to unexpected results, as the final DNS configuration was a combination of different sources.

With version 1.54.1, that’s all changing. The new “global DNS overwrite” feature means that your global DNS settings will now take precedence, completely overriding the DNS settings from individual connections.

So, what does this mean for you? In a word: control.

If you’re a system administrator or a user who wants to use specific DNS servers for all your connections—perhaps for better privacy, security, or to use a service like Google Public DNS or Cloudflare DNS—this update makes it much easier to enforce those settings across your entire system.

See also: Mastering the Linux Command Line — Your Complete Free Training Guide

No more worrying about individual connection settings messing with your preferred setup.

More Flexibility in the Boot Process: DHCP Client ID in initrd

This latest release also brings a handy new feature for those who need to configure their network during the earliest moments of their computer starting up.

This happens in a stage called initrd (initial ramdisk), a temporary root filesystem that’s loaded into memory to get things going before your main operating system takes over.

NetworkManager 1.54.1 introduces support for a new option: rd.net.dhcp.client-id. This allows you to specify a DHCP Client ID right from the get-go.

But what is a DHCP Client ID? Essentially, it’s a unique identifier that your computer uses to talk to a DHCP server—the service on a network that automatically assigns IP addresses to devices. This ID helps the server recognize your device and give it the correct network configuration.

By allowing you to set this in the initrd stage via nm-initrd-generator, NetworkManager gives you more flexibility in how your system identifies itself on the network from the very beginning.

This can be particularly useful in complex network environments or for certain types of automated deployments where a specific client ID is required for a device to get the right network access as it boots up.

Stability and Bug Fixes

Alongside these two main features, the 1.54.1 release also includes a number of bug fixes to improve the overall stability and reliability of NetworkManager.

For those who want to dive into the technical details, you can check out the official changelog.

The source code for NetworkManager 1.54.1 is also available for download if you’re interested in compiling it yourself.

David Cao
David Cao

David is a Cloud & DevOps Enthusiast. He has years of experience as a Linux engineer. He had working experience in AMD, EMC. He likes Linux, Python, bash, and more. He is a technical blogger and a Software Engineer. He enjoys sharing his learning and contributing to open-source.

Articles: 547

Leave a Reply

Your email address will not be published. Required fields are marked *