Change DNS settings on Linux
If you find that your server’s Domain Name Server (DNS) settings are misconfigured or you prefer to use your own, this article describes how to change your Linux® server’s DNS settings.
Add name servers to the configuration file
On most Linux operating systems, the DNS servers that the system uses for name
resolution are defined in the /etc/resolv.conf file. That file should contain
at least one
nameserver line. Each
nameserver line defines a DNS server. The
name servers are prioritized in the order the system finds them in the file. Use
the Internet Protocol (IP) addresses of the name servers when you enter them into
the configuration file because the system doesn’t know what to do with domain names
until after it knows how to get to the DNS servers.
In some cases, /etc/resolv.conf could be a directly managed file, populated by the
network service (
network by using initscripts or
NetworkManager). To directly edit
the configuration file, use the following steps to add the DNS servers:
Open the resolv.conf file with an editor, such as
nano, to make the necessary changes. If the file doesn’t already exist, this command creates it:
sudo nano /etc/resolv.conf
Add lines for the name servers that you want to use. The following table displays which name server IP addresses to use depending on which datacenter houses your cloud servers. The “Name server IP address” column shows the lines to add to the configuration file:
Data center Name server IP address Hong Kong (HKG) nameserver 18.104.22.168
Northern Virginia (IAD) nameserver 22.214.171.124
London (LON) nameserver 126.96.36.199
Chicago (ORD) nameserver 188.8.131.52
Dallas/Fort Worth (DFW) nameserver 184.108.40.206
Sydney (SYD) nameserver 220.127.116.11
Frankfurt (FRA) nameserver 18.104.22.168
Save the file.
To ensure that your new settings are working,
pingthe domain name by using the following command:
ping -c 3 rackspace.com
You should see a result similar to the following one:
PING rackspace.com (22.214.171.124) 56(84) bytes of data. 64 bytes from 126.96.36.199: icmp_req=1 ttl=249 time=25.3 ms 64 bytes from 188.8.131.52: icmp_req=2 ttl=249 time=25.2 ms 64 bytes from 184.108.40.206: icmp_req=3 ttl=249 time=25.2 ms --- rackspace.com ping statistics --- 3 packets transmitted, 3 received, 0% packet loss, time 2002ms rtt min/avg/max/mdev = 25.236/25.292/25.392/0.147 ms
If you receive an
unknown host message, double-check the IP addresses that
you set as your DNS servers.
Add the same name servers with IPv6 addresses
If you’re using IPv6 on your server, you might need to add the IPv6 addresses of your name servers to the resolv.conf file. You can see if a DNS server has an IPv6 address by performing the following steps:
Use the following
hostcommand to get the domain name of the server (substitute your DNS server IP address):
$ host 220.127.116.11 240.128.3.72.in-addr.arpa domain name pointer cachens1.dfw1.rackspace.com.
Use the domain name you got back in another
$ host cachens1.dfw1.rackspace.com cachens1.dfw1.rackspace.com has address 18.104.22.168 cachens1.dfw1.rackspace.com has IPv6 address 2001:4800:d::1
If an IPv6 address is returned, you can add that as another
line in the resolv.conf file, as follows:
Then test as previously shown, by using the
ping6 command instead of the
ping command to force the system to use IPv6.
Continue the conversation in the Rackspace Community.
©2018 Rackspace US, Inc.
Except where otherwise noted, content on this site is licensed under a Creative Commons Attribution-NonCommercial-NoDerivs 3.0 Unported License