DNS (Domain Name System) is one of the core systems that makes the internet possible, but it's often taken for granted. In fact, it's utilized by almost 5 billion people, yet most people don't even realize it. And, that's okay. Most people that own a car probably don't know how an engine works, and they don't care unless they start to have engine problems. The same goes for DNS. Most people don't care to know what DNS is or how it works until they see something like this:
So, what is DNS? And, how can we change the DNS settings in Windows 10? Let's find out.
What Is DNS
How To Change DNS Servers In Windows 10
Set DNS Server Settings Through Control Panel
Set DNS Server Settings Through The Windows 10 Settings Menu
Set DNS Server Settings With PowerShell
Computers, smart devices, and network devices all use these things called IP addresses to locate and communicate with each other. IP addresses come in a couple of different versions.
The more common version is IPv4, which looks like this: 220.127.116.11.
The newer version, called IPv6, looks more like this: 2001:0db8:0100:f101:0210:a4ff:fee3:9566. Scary, right?
So, what does this have to do with DNS? Good question. DNS is the system designed to translate domain names (e.g., google.com, amazon.com, pdq.com) to their respective IP addresses. For example, DNS would translate google.com to 18.104.22.168.
It was developed because we humans (me especially) aren't great at remembering random sets of numbers. Could you imagine trying to memorize a random number with up to twelve digits for each website you visit? That's not even taking into account IPv6 addresses. However, we are pretty good at remembering names (except for me, who will forget a person's name three seconds after hearing it). It's much easier for us to remember yahoo.com than it is for us to remember 22.214.171.124.
DNS is often compared to a phonebook for the internet. However, since most younger generations probably don't know what a phone book is, let's try something else.
A man named Ross gets into a taxi. The driver, Phoebe, asks Ross where he wants to go. Ross says he wants to go to Central Perk to meet his friends and get some coffee. Being new in town, Phoebe doesn't know where Central Perk is located, so she looks up the address on her phone. Once she has the address, Phoebe knows exactly how to get to Central Perk.
In this example, Phoebe would be the browser, and her phone would be the DNS server. You tell your web browser to take you to pdq.com. Since your browser doesn't know how to get to pdq.com, it asks a DNS server for help. The DNS server returns the IP address for pdq.com to your browser, which takes you to the website.
Hmmm…a taxi comparison may not be relevant either these days. Maybe I should have said Uber or Lyft. Ah, well.
Okay, with that clear as mud example out of the way, let's talk about why we would want to change our DNS settings.
Most devices use whichever DNS server settings are automatically assigned to them by their service provider. For example, if your internet service provider is Comcast, they will automatically direct you to their DNS servers which are 126.96.36.199 and 188.8.131.52. On the one hand, this is great because users don't have to do anything. On the other hand, if the DNS servers aren't reliable, you could experience frequent routing issues.
So, what if you are one of those unfortunate people being directed to unreliable DNS servers? Well, your best bet is to configure your DNS server settings manually, and there are a few different ways you can do this.
This first method of configuring your DNS settings is also the oldest method we'll be covering. Microsoft seems to have its heart set on getting rid of the Control Panel, but since it's currently still around, we'll use it.
In the Windows search box, type in "control panel" and click on the Control Panel app.
Click on View network status and tasks.
Click on the name of your connection next to the "Connections:" field.
In the status window, click Properties.
In the properties windows, click Internet Protocol Version 4 (TCP/IPv4), then click Properties.
Select Use the following DNS server addresses:
Enter the IP addresses of the DNS servers you want to use. Here are a few popular sever's that you can try.
OpenDNS: 184.108.40.206 & 220.127.116.11
Cloudflare: 18.104.22.168 & 22.214.171.124
Google: 126.96.36.199 & 188.8.131.52
Click OK when you finish entering the IP addresses, then close the properties and status windows.
That's all there is to it. You've successfully changed your DNS server settings. However, continue reading to learn about the newer methods, especially since Control Panel may disappear in the future.
Using the Settings Menu is probably how Microsoft intends for most users to change these settings in the future. While the first few steps of this method will be different, eventually we'll be accessing the adapter settings just like we did with method #1.
Left-click on the Windows button.
Click on the Gear (settings) icon.
Click Network & Internet.
Click Ethernet, then click Change adapter options.
Double click on your adapter.
From this point on, repeat steps 4 - 8 of method 1.
As Microsoft moves away from the Control Panel, this method will probably change. Microsoft will most likely include DNS settings directly in the Windows 10 settings menu, eventually.
If you're a sysadmin that eats, sleeps, and breathes PowerShell, then this method is for you. If you're not a sysadmin but like learning new things, give this method a shot. The PowerShell commands we'll be using are pretty simple, so you should be able to follow right along.
Right-click on the Windows button and click Windows PowerShell (Admin).
Click Yes if prompted by a User Account Control dialog box.
At the PowerShell prompt, enter the following command and hit enter.
Make a note of your InterfaceIndex number. In the image above, my InterfaceIndex is 6.
Type in the following command and hit enter. Use the number of your InterfaceIndex next to the InterfaceIndex parameter (replace the 6 from this command with your InterfaceIndex number). Enter the IP addresses of the DNS servers you want to use next to the ServerAddresses parameter. Separate the two server addresses with a comma and a space.
Set-DnsClientServerAddress -InterfaceIndex 6 -ServerAddresses 184.108.40.206, 220.127.116.11
Now we'll double-check to make sure the changes were made successfully. Re-enter the command from step 3 and hit enter.
As you can see, our DNSServer was changed from 192.168.60.30 to Google's DNS servers, 18.104.22.168 and 22.214.171.124.
That's all there is to it. With those two simple PowerShell commands, we were able to change our DNS server settings.
There is no "best" method for changing your DNS settings. Each method covered here will get you the results you're looking for and are perfectly viable. Pick whichever method works best for you.
If you want to learn more about DNS, check out our DNS blog post covering DNS in much greater detail. You'll come away knowing way more than you ever wanted to know about DNS. But, with how vital DNS is, can you ever really know too much about it?