Configure DNS using resolvconf in Ubuntu 12.04 (Precise Pangolin)


Is /etc/resolv.conf useless in Ubuntu 12.04 LTS ? I say so, because when I configured the /etc/resolv.conf file and rebooted the VM, all the settings were overwritten.
piyush@co109044:~$ cat /etc/resolvconf/resolv.conf.d/tail
search romelab.it.ibm.com ibm.com
nameserver 9.168.127.100
namserver 9.168.96.100

piyush@co109044:~$ cat /etc/resolv.conf
# Dynamic resolv.conf(5) file for glibc resolver(3) generated by resolvconf(8)
#     DO NOT EDIT THIS FILE BY HAND -- YOUR CHANGES WILL BE OVERWRITTEN
search romelab.it.ibm.com ibm.com
nameserver 9.168.127.100
namserver 9.168.96.100

piyush@co109044:~$ reboot

Last login: Mon Mar 31 08:48:50 2014 from 9.77.94.202
piyush@co109044:~$ cat /etc/resolv.conf
# Dynamic resolv.conf(5) file for glibc resolver(3) generated by resolvconf(8)
#     DO NOT EDIT THIS FILE BY HAND -- YOUR CHANGES WILL BE OVERWRITTEN

After rebooting the VM, all the settings of /etc/resolv.conf were overwritten.
After reading the release notes of Ubuntu, figured out that "resolvconf is now used to manage /etc/resolv.conf on all Ubuntu systems". What's that ??? I suggest reading the man page for resolvconf. 

resolvconf is a set of script and hooks managing DNS resolution. The most notable difference for the user is that any change manually done to /etc/resolv.conf will be lost as it gets overwritten next time something triggers resolvconf or the system is rebooted. As a thumb rule, if you are using static IP configuration for your Ubuntu system, add all your network related entries to the file /etc/network/interfaces
piyush@co109044:~$ man resolvconf
piyush@co109044:~$ vi /etc/network/interfaces
piyush@co109044:~$ sudo vi /etc/network/interfaces
[sudo] password for piyush:

piyush@co109044:~$ cat /etc/network/interfaces
auto eth0
iface eth0 inet static
address 9.168.109.44
netmask 255.255.255.0
gateway 9.168.109.254
dns-nameservers 9.168.127.100 9.168.96.100
dns-search romelab.it.ibm.com ibm.com

auto lo
iface lo inet loopback

piyush@co109044:~$ ping google.com
ping: unknown host google.com

piyush@co109044:~$ sudo ifdown eth0;sudo ifup eth0
ssh stop/waiting
ssh start/running, process 1999

piyush@co109044:~$ ping google.com
PING google.com (173.194.41.167) 56(84) bytes of data
piyush@co109044:~$ cat /etc/resolv.conf
# Dynamic resolv.conf(5) file for glibc resolver(3) generated by resolvconf(8)
#     DO NOT EDIT THIS FILE BY HAND -- YOUR CHANGES WILL BE OVERWRITTEN
nameserver 9.168.127.100
nameserver 9.168.96.100
search romelab.it.ibm.com ibm.com
As you can see the entries from the /etc/network/interfaces were automatically added to the /etc/resov.conf file. Notice that the /etc/resolv.conf is a softlink to /run/resolvconf/resolv.conf
So if you make, /etc/resolv.conf as a regular file then resolvconf will be disabled (not recommended).

Resolvconf has a /etc/resolvconf/resolv.conf.d/ directory that can contain "base", "head", "original" and "tail" files. All in resolv.conf format.
  • tail: Any entry in /etc/resolvconf/resolv.conf.d/tail is appended at the end of the resulting resolv.conf. If the tail file is missing then create it.
  • base: Used when no other data can be found.
  • original: Just a backup of your resolv.conf at the time of resolvconf installation

5 comments: Leave Your Comments


  1. Hmm, it seems like your site ate my first comment (it was extremely long) so I guess I’ll just sum it up what I had written and say, I’m thoroughly enjoying your blog. I as well as an aspiring blog writer, but I’m still new to the whole thing. Do you have any recommendations for newbie blog writers? I’d appreciate it.
    Advanced AWS Interview Questions And Answers, Top 250+AWS Interviews Questions and Answers 2018
    Advanced AWS Interview questions and answers | Top 110 AWS Interview Question and Answers
    Advanced AWS Training in Bangalore | Best Amazon Web Services Training in Bangalore
    Advanced AWS Training in Pune | Best Amazon Web Services Training in Pune
    Advanced AWS Online Training | Best Online AWS Certification Course in india

    ReplyDelete
  2. I would really like to read some personal experiences like the way, you've explained through the above article. I'm glad for your achievements and would probably like to see much more in the near future. Thanks for share.

    Selenium Online training | Selenium Certification Online course-Gangboard

    Selenium interview questions and answers

    Selenium interview questions and answers

    Selenium Online training | Selenium Certification Online course

    ReplyDelete
  3. Great Article… I love to read your articles because your writing style is too good, its is very very helpful for all of us and I never get bored while reading your article because, they are becomes a more and more interesting from the starting lines until the end.

    rpa training in chennai
    Best rpa training in bangalore
    rpa course in bangalore
    rpa training in marathahalli
    rpa training in btm
    best rpa training in chennai

    ReplyDelete
  4. Its really an Excellent post. I just stumbled upon your blog and wanted to say that I have really enjoyed reading your blog. Thanks for sharing....
    Best Devops training in sholinganallur
    Devops training in velachery
    Devops training in annanagar
    Devops training in tambaram

    ReplyDelete

+