How do I fix DNS resolving which doesn't work after upgrading to Ubuntu 13.10 (Saucy)











up vote
61
down vote

favorite
35












After upgrade to 13.10 my DNS resolving fails. It seems the DNS servers which I get by DHCP (LAN) are not used.



I could temporary solve the problem by adding nameserver 8.8.8.8 to /etc/resolv.conf. But then the intranet hosts still can not be resolved.



When clicking on the Connection Information menu item on the network indicator, the Primary DNS and the Secondary DNS are set correctly. But my computer seams not to use them.



So my questions:




  • What should I put into resolv.conf, if anything?

  • How to find out, which name servers my computer is querying?

  • Where to look next, to find out, why name servers received by DHCP are not used?










share|improve this question




















  • 2




    I got the same issue when upgrading from 12.04 to 14.04.
    – Tarrasch
    Apr 17 '15 at 11:13






  • 6




    I got everyday DNS failures since upgrade to 16.10 few days ago.
    – WindRider
    Oct 22 '16 at 10:12










  • @WindRider have the same issue, the trick with dnsmasq below seems to work.
    – Suor
    Nov 12 '16 at 4:11










  • I had the problem on a fresh install Lubuntu 17.04 and solved it by manually adding the needed urls to the hosts file: askubuntu.com/a/936972/34298
    – rubo77
    Jul 17 '17 at 14:17















up vote
61
down vote

favorite
35












After upgrade to 13.10 my DNS resolving fails. It seems the DNS servers which I get by DHCP (LAN) are not used.



I could temporary solve the problem by adding nameserver 8.8.8.8 to /etc/resolv.conf. But then the intranet hosts still can not be resolved.



When clicking on the Connection Information menu item on the network indicator, the Primary DNS and the Secondary DNS are set correctly. But my computer seams not to use them.



So my questions:




  • What should I put into resolv.conf, if anything?

  • How to find out, which name servers my computer is querying?

  • Where to look next, to find out, why name servers received by DHCP are not used?










share|improve this question




















  • 2




    I got the same issue when upgrading from 12.04 to 14.04.
    – Tarrasch
    Apr 17 '15 at 11:13






  • 6




    I got everyday DNS failures since upgrade to 16.10 few days ago.
    – WindRider
    Oct 22 '16 at 10:12










  • @WindRider have the same issue, the trick with dnsmasq below seems to work.
    – Suor
    Nov 12 '16 at 4:11










  • I had the problem on a fresh install Lubuntu 17.04 and solved it by manually adding the needed urls to the hosts file: askubuntu.com/a/936972/34298
    – rubo77
    Jul 17 '17 at 14:17













up vote
61
down vote

favorite
35









up vote
61
down vote

favorite
35






35





After upgrade to 13.10 my DNS resolving fails. It seems the DNS servers which I get by DHCP (LAN) are not used.



I could temporary solve the problem by adding nameserver 8.8.8.8 to /etc/resolv.conf. But then the intranet hosts still can not be resolved.



When clicking on the Connection Information menu item on the network indicator, the Primary DNS and the Secondary DNS are set correctly. But my computer seams not to use them.



So my questions:




  • What should I put into resolv.conf, if anything?

  • How to find out, which name servers my computer is querying?

  • Where to look next, to find out, why name servers received by DHCP are not used?










share|improve this question















After upgrade to 13.10 my DNS resolving fails. It seems the DNS servers which I get by DHCP (LAN) are not used.



I could temporary solve the problem by adding nameserver 8.8.8.8 to /etc/resolv.conf. But then the intranet hosts still can not be resolved.



When clicking on the Connection Information menu item on the network indicator, the Primary DNS and the Secondary DNS are set correctly. But my computer seams not to use them.



So my questions:




  • What should I put into resolv.conf, if anything?

  • How to find out, which name servers my computer is querying?

  • Where to look next, to find out, why name servers received by DHCP are not used?







network-manager






share|improve this question















share|improve this question













share|improve this question




share|improve this question








edited Feb 24 '14 at 22:20









Braiam

51.2k20134219




51.2k20134219










asked Oct 30 '13 at 10:56









Witek

1,19251629




1,19251629








  • 2




    I got the same issue when upgrading from 12.04 to 14.04.
    – Tarrasch
    Apr 17 '15 at 11:13






  • 6




    I got everyday DNS failures since upgrade to 16.10 few days ago.
    – WindRider
    Oct 22 '16 at 10:12










  • @WindRider have the same issue, the trick with dnsmasq below seems to work.
    – Suor
    Nov 12 '16 at 4:11










  • I had the problem on a fresh install Lubuntu 17.04 and solved it by manually adding the needed urls to the hosts file: askubuntu.com/a/936972/34298
    – rubo77
    Jul 17 '17 at 14:17














  • 2




    I got the same issue when upgrading from 12.04 to 14.04.
    – Tarrasch
    Apr 17 '15 at 11:13






  • 6




    I got everyday DNS failures since upgrade to 16.10 few days ago.
    – WindRider
    Oct 22 '16 at 10:12










  • @WindRider have the same issue, the trick with dnsmasq below seems to work.
    – Suor
    Nov 12 '16 at 4:11










  • I had the problem on a fresh install Lubuntu 17.04 and solved it by manually adding the needed urls to the hosts file: askubuntu.com/a/936972/34298
    – rubo77
    Jul 17 '17 at 14:17








2




2




I got the same issue when upgrading from 12.04 to 14.04.
– Tarrasch
Apr 17 '15 at 11:13




I got the same issue when upgrading from 12.04 to 14.04.
– Tarrasch
Apr 17 '15 at 11:13




6




6




I got everyday DNS failures since upgrade to 16.10 few days ago.
– WindRider
Oct 22 '16 at 10:12




I got everyday DNS failures since upgrade to 16.10 few days ago.
– WindRider
Oct 22 '16 at 10:12












@WindRider have the same issue, the trick with dnsmasq below seems to work.
– Suor
Nov 12 '16 at 4:11




@WindRider have the same issue, the trick with dnsmasq below seems to work.
– Suor
Nov 12 '16 at 4:11












I had the problem on a fresh install Lubuntu 17.04 and solved it by manually adding the needed urls to the hosts file: askubuntu.com/a/936972/34298
– rubo77
Jul 17 '17 at 14:17




I had the problem on a fresh install Lubuntu 17.04 and solved it by manually adding the needed urls to the hosts file: askubuntu.com/a/936972/34298
– rubo77
Jul 17 '17 at 14:17










4 Answers
4






active

oldest

votes

















up vote
82
down vote



accepted










First you need to know a bit about how name resolving works in Ubuntu since Ubuntu 12.04.



Stéphane Graber blogged some information about it last year here. The most important thing to know is that both Ubuntu Server and Ubuntu Desktop use resolvconf to manage the resolv.conf file. That means that you should no longer edit /etc/resolv.conf directly; instead you should configure your network interface configuration utility to provide the right information to resolvconf. For Ubuntu Server the network interface configuration utility is ifup and it is configured by the file /etc/network/interfaces. For Ubuntu Desktop the network interface configuration utility is NetworkManager. This is what you are using.



NetworkManager is configured by means of Network indicator > Edit Connections. However, for network interfaces configured by DHCP it normally isn't necessary to change any settings manually. Normally what happens is that the (remote) DHCP server provides to NetworkManager both an IP address for the local interface and the address of a (remote) DNS nameserver to use. NetworkManager starts an instance of a forwarding nameserver that listens locally at 127.0.1.1. This address, 127.0.1.1, is sent to resolvconf which puts nameserver 127.0.1.1 in /etc/resolv.conf. NetworkManager also gives the (remote) IP address of the DHCP-provided DNS nameserver to the forwarding nameserver. Thus a program running on the local system asks the resolver to translate a host name into an IP address; the resolver queries the local forwarding nameserver at 127.0.1.1; the forwarding nameserver queries the remote nameserver(s) it has been told about, receives an answer and sends it back up the chain.



NetworkManager communicates with the forwarding nameserver process over D-Bus. You can see what NetworkManager told the forwarding nameserver by running the command



nmcli dev list iface eth0 | grep IP4.DNS


Update arising from the comments:

Note that resolvconf actually writes the file /run/resolvconf/resolv.conf to which /etc/resolv.conf is supposed to be a symbolic link. If /etc/resolv.conf is not a symbolic link then you need to recreate it. To do so you can run



sudo dpkg-reconfigure resolvconf


or



sudo ln -sf /run/resolvconf/resolv.conf /etc/resolv.conf        





share|improve this answer























  • Thank you very much for this info. In my case the command shows the correct DNS servers. But the resolf.conf file is not updated. It has the timestamp from when I have put my values there. So I will have to find out why resolvconf is not writing the file.
    – Witek
    Oct 31 '13 at 10:55






  • 15




    Resolvconf actually writes the file /run/resolvconf/resolv.conf and /etc/resolv.conf is supposed to be a symbolic link to /run/resolvconf/resolv.conf. If you deleted /etc/resolv.conf then you deleted the symbolic link. To recreate the symbolic link you can run sudo dpkg-reconfigure resolvconf or you can do mv /etc/resolv.conf /run/resolvconf/resolv.conf && ln -s ../run/resolvconf/resolv.conf /etc/resolv.conf
    – jdthood
    Oct 31 '13 at 15:02






  • 7




    This has everything but the 'fix'. How can I resolve this issue?
    – Amal Murali
    Jan 18 '14 at 22:19






  • 5




    The fix may be to run sudo dpkg-reconfigure resolvconf as suggested in the last part of the answer.
    – jdthood
    Jan 20 '14 at 13:09










  • Thank you!!! I am not sure what happened to my system but running the sudo dpkg-reconfigure resolveconf seemed to work great!
    – meanbunny
    Nov 22 '14 at 15:29


















up vote
47
down vote













I made the change suggested on the link below (disabling dnsmasq). Now everything works great!
http://www.ubuntugeek.com/how-to-disable-dnsmasq-in-ubuntu-12-04precise.html



Open /etc/NetworkManager/NetworkManager.conf file.



sudo gedit /etc/NetworkManager/NetworkManager.conf


Comment out line as:



#dnsmasq deactivated
#dns=dnsmasq





share|improve this answer



















  • 4




    After commenting out dnsmasq, you need to restart network manager: sudo restart network-manager.
    – Don Kirkby
    Dec 17 '15 at 22:27






  • 2




    In my case (Xubuntu) the command is: sudo /etc/init.d/network-manager restart
    – aviram83
    Apr 26 '16 at 4:37










  • If you have this happening to you, even though there is no dnsmasq installed, and there is nothing to even comment out, add dns=default to the [main] section. NetworkManager has its own nasty dnsmasq plugin which it will use otherwise.
    – dstibbe
    Dec 15 '17 at 23:15








  • 1




    I need to do this restart network-manager - sudo service network-manager restart
    – Sungam
    Jan 18 at 21:35










  • One of my box had no dns after upgrade to 17.10 and it turns out the /etc/resolv.conf was not a symbolic link. Fixed it. Another box did not finish upgrading and I found a .dpkg-new file in the dir, diff them the main difference is dnsmasq. Copied it over and worked without restart any daemon
    – fchen
    Jan 21 at 21:22


















up vote
19
down vote













EDIT 2: Previous post was rightfully deleted by the moderation, I'm posting what I have found to be a solution. Sorry for that.



EDIT: I just found the answer and it's in this very page - sorry for my miopy. I posted my findings below, expanding the correct answer by Richard Lindstedt found in this page. I left my early rumbling for a bit of context. Please upvote Richard's answer, he deserves it.




It's actually really easy.



just open your interfaces conf file --> sudo vi /etc/network/interfaces




That sure did not help the OP and doesn't help me now. We don't want static addresses, we want to use the ones the DHCP server sends us. NetworkManager seems to recognise them, but Ubuntu bluntly ignores them:



# nmcli dev list iface wlan0 | grep IP4.DNS
IP4.DNS[1]: 10.*.*.*
IP4.DNS[2]: 10.*.*.*
IP4.DNS[3]: 8.8.8.8


But...



# dig microsoft.com
; <<>> DiG 9.9.5-4.3-Ubuntu <<>> microsoft.com
;; global options: cmd
;; connection timed out; no servers could be reached


And my /etc/network/interfaces is:



auto lo
iface lo inet loopback


which is a bit odd, I would expect all interfaces being declared here (or am I missing something?).



So, in short:




  • I did not mess with any file to start with

  • I have already run dpkg-reconfigure resolvconf

  • The right symlink is in place

  • NetworkManager retrieves the correct DNS servers from DHCP

  • Ubuntu DOES NOT use such addresses

  • The workaround is to put fixed 8.8.8.8 on /etc/network/interfaces WHICH I DON'T WANT

  • I want to use the DHCP-provided DNS servers in any and all situations.


Not opening another thread because it's the exact problem except I'm on 14.10 now (but this have been nagging me since de upgrade from 12.10 to 13.04).



SOLUTION



That last phrase got me on the right track, and only then I noticed Richard's answer.



The problem seems to be related to the conflicting dnsmasq and resolvconf packages. Until 12.10, dnsmasq was used. From 13.04 onwards, Ubuntu seemed to switch to a dnsmasq/resolvconf hybrid, where you have installed the packages dnsmasq-base and resolvconf, but not dnsmasq itself.



I can't say if it's a bug in the upgrade scripts for 13.04 or something else, because when upgrading (as in fresh installs) resolvconf is installed, dnsmasq-base is upgraded and dnsmasq is (correctly) uninstalled.



The catch is, the upgrade script fails to comment out the dns=dnsmasq line in /etc/NetworkManager/NetworkManager.conf. So, even though the dnsmasq daemon is not present anymore on the system, /etc/resolv.conf still expects it to be.






share|improve this answer





















  • THIS IS SO AWESOME!
    – metadings
    Oct 17 '15 at 23:33






  • 1




    OMG this solved my DNS problems I have had for the past 3 years! If you have dnsmasq and dnsmasq-base installed, NM will put 127.0.0.1 in /etc/resolv.conf instead of 127.0.1.1. I simply uninstalled dnsmasq (and enabled NM) and everything works just fine.
    – user1129682
    Oct 19 '15 at 12:11






  • 4




    Future Googlers should note that you have to sudo service network-manager restart for this to take effect.
    – timelmer
    Jan 23 '17 at 21:13


















up vote
7
down vote













It's actually really easy.



just open your interfaces conf file
--> sudo vi /etc/network/interfaces



and under your interface (probably eth0) you will see all the usual config.



address 192.168.22.71
netmask 255.255.255.0
gateway 192.168.22.1


After gateway just add 'dns-nameservers 8.8.8.8 8.8.8.9' or whatever nameserver you're going to use.



So your config should be:



address 192.168.22.71
netmask 255.255.255.0
gateway 192.168.22.1
dns-nameservers 8.8.8.8 8.8.8.9


then just do a 'sudo service networking restart' and you're good to go!






share|improve this answer




















    protected by Community Jan 14 '15 at 3:41



    Thank you for your interest in this question.
    Because it has attracted low-quality or spam answers that had to be removed, posting an answer now requires 10 reputation on this site (the association bonus does not count).



    Would you like to answer one of these unanswered questions instead?














    4 Answers
    4






    active

    oldest

    votes








    4 Answers
    4






    active

    oldest

    votes









    active

    oldest

    votes






    active

    oldest

    votes








    up vote
    82
    down vote



    accepted










    First you need to know a bit about how name resolving works in Ubuntu since Ubuntu 12.04.



    Stéphane Graber blogged some information about it last year here. The most important thing to know is that both Ubuntu Server and Ubuntu Desktop use resolvconf to manage the resolv.conf file. That means that you should no longer edit /etc/resolv.conf directly; instead you should configure your network interface configuration utility to provide the right information to resolvconf. For Ubuntu Server the network interface configuration utility is ifup and it is configured by the file /etc/network/interfaces. For Ubuntu Desktop the network interface configuration utility is NetworkManager. This is what you are using.



    NetworkManager is configured by means of Network indicator > Edit Connections. However, for network interfaces configured by DHCP it normally isn't necessary to change any settings manually. Normally what happens is that the (remote) DHCP server provides to NetworkManager both an IP address for the local interface and the address of a (remote) DNS nameserver to use. NetworkManager starts an instance of a forwarding nameserver that listens locally at 127.0.1.1. This address, 127.0.1.1, is sent to resolvconf which puts nameserver 127.0.1.1 in /etc/resolv.conf. NetworkManager also gives the (remote) IP address of the DHCP-provided DNS nameserver to the forwarding nameserver. Thus a program running on the local system asks the resolver to translate a host name into an IP address; the resolver queries the local forwarding nameserver at 127.0.1.1; the forwarding nameserver queries the remote nameserver(s) it has been told about, receives an answer and sends it back up the chain.



    NetworkManager communicates with the forwarding nameserver process over D-Bus. You can see what NetworkManager told the forwarding nameserver by running the command



    nmcli dev list iface eth0 | grep IP4.DNS


    Update arising from the comments:

    Note that resolvconf actually writes the file /run/resolvconf/resolv.conf to which /etc/resolv.conf is supposed to be a symbolic link. If /etc/resolv.conf is not a symbolic link then you need to recreate it. To do so you can run



    sudo dpkg-reconfigure resolvconf


    or



    sudo ln -sf /run/resolvconf/resolv.conf /etc/resolv.conf        





    share|improve this answer























    • Thank you very much for this info. In my case the command shows the correct DNS servers. But the resolf.conf file is not updated. It has the timestamp from when I have put my values there. So I will have to find out why resolvconf is not writing the file.
      – Witek
      Oct 31 '13 at 10:55






    • 15




      Resolvconf actually writes the file /run/resolvconf/resolv.conf and /etc/resolv.conf is supposed to be a symbolic link to /run/resolvconf/resolv.conf. If you deleted /etc/resolv.conf then you deleted the symbolic link. To recreate the symbolic link you can run sudo dpkg-reconfigure resolvconf or you can do mv /etc/resolv.conf /run/resolvconf/resolv.conf && ln -s ../run/resolvconf/resolv.conf /etc/resolv.conf
      – jdthood
      Oct 31 '13 at 15:02






    • 7




      This has everything but the 'fix'. How can I resolve this issue?
      – Amal Murali
      Jan 18 '14 at 22:19






    • 5




      The fix may be to run sudo dpkg-reconfigure resolvconf as suggested in the last part of the answer.
      – jdthood
      Jan 20 '14 at 13:09










    • Thank you!!! I am not sure what happened to my system but running the sudo dpkg-reconfigure resolveconf seemed to work great!
      – meanbunny
      Nov 22 '14 at 15:29















    up vote
    82
    down vote



    accepted










    First you need to know a bit about how name resolving works in Ubuntu since Ubuntu 12.04.



    Stéphane Graber blogged some information about it last year here. The most important thing to know is that both Ubuntu Server and Ubuntu Desktop use resolvconf to manage the resolv.conf file. That means that you should no longer edit /etc/resolv.conf directly; instead you should configure your network interface configuration utility to provide the right information to resolvconf. For Ubuntu Server the network interface configuration utility is ifup and it is configured by the file /etc/network/interfaces. For Ubuntu Desktop the network interface configuration utility is NetworkManager. This is what you are using.



    NetworkManager is configured by means of Network indicator > Edit Connections. However, for network interfaces configured by DHCP it normally isn't necessary to change any settings manually. Normally what happens is that the (remote) DHCP server provides to NetworkManager both an IP address for the local interface and the address of a (remote) DNS nameserver to use. NetworkManager starts an instance of a forwarding nameserver that listens locally at 127.0.1.1. This address, 127.0.1.1, is sent to resolvconf which puts nameserver 127.0.1.1 in /etc/resolv.conf. NetworkManager also gives the (remote) IP address of the DHCP-provided DNS nameserver to the forwarding nameserver. Thus a program running on the local system asks the resolver to translate a host name into an IP address; the resolver queries the local forwarding nameserver at 127.0.1.1; the forwarding nameserver queries the remote nameserver(s) it has been told about, receives an answer and sends it back up the chain.



    NetworkManager communicates with the forwarding nameserver process over D-Bus. You can see what NetworkManager told the forwarding nameserver by running the command



    nmcli dev list iface eth0 | grep IP4.DNS


    Update arising from the comments:

    Note that resolvconf actually writes the file /run/resolvconf/resolv.conf to which /etc/resolv.conf is supposed to be a symbolic link. If /etc/resolv.conf is not a symbolic link then you need to recreate it. To do so you can run



    sudo dpkg-reconfigure resolvconf


    or



    sudo ln -sf /run/resolvconf/resolv.conf /etc/resolv.conf        





    share|improve this answer























    • Thank you very much for this info. In my case the command shows the correct DNS servers. But the resolf.conf file is not updated. It has the timestamp from when I have put my values there. So I will have to find out why resolvconf is not writing the file.
      – Witek
      Oct 31 '13 at 10:55






    • 15




      Resolvconf actually writes the file /run/resolvconf/resolv.conf and /etc/resolv.conf is supposed to be a symbolic link to /run/resolvconf/resolv.conf. If you deleted /etc/resolv.conf then you deleted the symbolic link. To recreate the symbolic link you can run sudo dpkg-reconfigure resolvconf or you can do mv /etc/resolv.conf /run/resolvconf/resolv.conf && ln -s ../run/resolvconf/resolv.conf /etc/resolv.conf
      – jdthood
      Oct 31 '13 at 15:02






    • 7




      This has everything but the 'fix'. How can I resolve this issue?
      – Amal Murali
      Jan 18 '14 at 22:19






    • 5




      The fix may be to run sudo dpkg-reconfigure resolvconf as suggested in the last part of the answer.
      – jdthood
      Jan 20 '14 at 13:09










    • Thank you!!! I am not sure what happened to my system but running the sudo dpkg-reconfigure resolveconf seemed to work great!
      – meanbunny
      Nov 22 '14 at 15:29













    up vote
    82
    down vote



    accepted







    up vote
    82
    down vote



    accepted






    First you need to know a bit about how name resolving works in Ubuntu since Ubuntu 12.04.



    Stéphane Graber blogged some information about it last year here. The most important thing to know is that both Ubuntu Server and Ubuntu Desktop use resolvconf to manage the resolv.conf file. That means that you should no longer edit /etc/resolv.conf directly; instead you should configure your network interface configuration utility to provide the right information to resolvconf. For Ubuntu Server the network interface configuration utility is ifup and it is configured by the file /etc/network/interfaces. For Ubuntu Desktop the network interface configuration utility is NetworkManager. This is what you are using.



    NetworkManager is configured by means of Network indicator > Edit Connections. However, for network interfaces configured by DHCP it normally isn't necessary to change any settings manually. Normally what happens is that the (remote) DHCP server provides to NetworkManager both an IP address for the local interface and the address of a (remote) DNS nameserver to use. NetworkManager starts an instance of a forwarding nameserver that listens locally at 127.0.1.1. This address, 127.0.1.1, is sent to resolvconf which puts nameserver 127.0.1.1 in /etc/resolv.conf. NetworkManager also gives the (remote) IP address of the DHCP-provided DNS nameserver to the forwarding nameserver. Thus a program running on the local system asks the resolver to translate a host name into an IP address; the resolver queries the local forwarding nameserver at 127.0.1.1; the forwarding nameserver queries the remote nameserver(s) it has been told about, receives an answer and sends it back up the chain.



    NetworkManager communicates with the forwarding nameserver process over D-Bus. You can see what NetworkManager told the forwarding nameserver by running the command



    nmcli dev list iface eth0 | grep IP4.DNS


    Update arising from the comments:

    Note that resolvconf actually writes the file /run/resolvconf/resolv.conf to which /etc/resolv.conf is supposed to be a symbolic link. If /etc/resolv.conf is not a symbolic link then you need to recreate it. To do so you can run



    sudo dpkg-reconfigure resolvconf


    or



    sudo ln -sf /run/resolvconf/resolv.conf /etc/resolv.conf        





    share|improve this answer














    First you need to know a bit about how name resolving works in Ubuntu since Ubuntu 12.04.



    Stéphane Graber blogged some information about it last year here. The most important thing to know is that both Ubuntu Server and Ubuntu Desktop use resolvconf to manage the resolv.conf file. That means that you should no longer edit /etc/resolv.conf directly; instead you should configure your network interface configuration utility to provide the right information to resolvconf. For Ubuntu Server the network interface configuration utility is ifup and it is configured by the file /etc/network/interfaces. For Ubuntu Desktop the network interface configuration utility is NetworkManager. This is what you are using.



    NetworkManager is configured by means of Network indicator > Edit Connections. However, for network interfaces configured by DHCP it normally isn't necessary to change any settings manually. Normally what happens is that the (remote) DHCP server provides to NetworkManager both an IP address for the local interface and the address of a (remote) DNS nameserver to use. NetworkManager starts an instance of a forwarding nameserver that listens locally at 127.0.1.1. This address, 127.0.1.1, is sent to resolvconf which puts nameserver 127.0.1.1 in /etc/resolv.conf. NetworkManager also gives the (remote) IP address of the DHCP-provided DNS nameserver to the forwarding nameserver. Thus a program running on the local system asks the resolver to translate a host name into an IP address; the resolver queries the local forwarding nameserver at 127.0.1.1; the forwarding nameserver queries the remote nameserver(s) it has been told about, receives an answer and sends it back up the chain.



    NetworkManager communicates with the forwarding nameserver process over D-Bus. You can see what NetworkManager told the forwarding nameserver by running the command



    nmcli dev list iface eth0 | grep IP4.DNS


    Update arising from the comments:

    Note that resolvconf actually writes the file /run/resolvconf/resolv.conf to which /etc/resolv.conf is supposed to be a symbolic link. If /etc/resolv.conf is not a symbolic link then you need to recreate it. To do so you can run



    sudo dpkg-reconfigure resolvconf


    or



    sudo ln -sf /run/resolvconf/resolv.conf /etc/resolv.conf        






    share|improve this answer














    share|improve this answer



    share|improve this answer








    edited Jun 11 '17 at 13:18









    Zanna

    49.3k13126236




    49.3k13126236










    answered Oct 31 '13 at 9:45









    jdthood

    10.3k14161




    10.3k14161












    • Thank you very much for this info. In my case the command shows the correct DNS servers. But the resolf.conf file is not updated. It has the timestamp from when I have put my values there. So I will have to find out why resolvconf is not writing the file.
      – Witek
      Oct 31 '13 at 10:55






    • 15




      Resolvconf actually writes the file /run/resolvconf/resolv.conf and /etc/resolv.conf is supposed to be a symbolic link to /run/resolvconf/resolv.conf. If you deleted /etc/resolv.conf then you deleted the symbolic link. To recreate the symbolic link you can run sudo dpkg-reconfigure resolvconf or you can do mv /etc/resolv.conf /run/resolvconf/resolv.conf && ln -s ../run/resolvconf/resolv.conf /etc/resolv.conf
      – jdthood
      Oct 31 '13 at 15:02






    • 7




      This has everything but the 'fix'. How can I resolve this issue?
      – Amal Murali
      Jan 18 '14 at 22:19






    • 5




      The fix may be to run sudo dpkg-reconfigure resolvconf as suggested in the last part of the answer.
      – jdthood
      Jan 20 '14 at 13:09










    • Thank you!!! I am not sure what happened to my system but running the sudo dpkg-reconfigure resolveconf seemed to work great!
      – meanbunny
      Nov 22 '14 at 15:29


















    • Thank you very much for this info. In my case the command shows the correct DNS servers. But the resolf.conf file is not updated. It has the timestamp from when I have put my values there. So I will have to find out why resolvconf is not writing the file.
      – Witek
      Oct 31 '13 at 10:55






    • 15




      Resolvconf actually writes the file /run/resolvconf/resolv.conf and /etc/resolv.conf is supposed to be a symbolic link to /run/resolvconf/resolv.conf. If you deleted /etc/resolv.conf then you deleted the symbolic link. To recreate the symbolic link you can run sudo dpkg-reconfigure resolvconf or you can do mv /etc/resolv.conf /run/resolvconf/resolv.conf && ln -s ../run/resolvconf/resolv.conf /etc/resolv.conf
      – jdthood
      Oct 31 '13 at 15:02






    • 7




      This has everything but the 'fix'. How can I resolve this issue?
      – Amal Murali
      Jan 18 '14 at 22:19






    • 5




      The fix may be to run sudo dpkg-reconfigure resolvconf as suggested in the last part of the answer.
      – jdthood
      Jan 20 '14 at 13:09










    • Thank you!!! I am not sure what happened to my system but running the sudo dpkg-reconfigure resolveconf seemed to work great!
      – meanbunny
      Nov 22 '14 at 15:29
















    Thank you very much for this info. In my case the command shows the correct DNS servers. But the resolf.conf file is not updated. It has the timestamp from when I have put my values there. So I will have to find out why resolvconf is not writing the file.
    – Witek
    Oct 31 '13 at 10:55




    Thank you very much for this info. In my case the command shows the correct DNS servers. But the resolf.conf file is not updated. It has the timestamp from when I have put my values there. So I will have to find out why resolvconf is not writing the file.
    – Witek
    Oct 31 '13 at 10:55




    15




    15




    Resolvconf actually writes the file /run/resolvconf/resolv.conf and /etc/resolv.conf is supposed to be a symbolic link to /run/resolvconf/resolv.conf. If you deleted /etc/resolv.conf then you deleted the symbolic link. To recreate the symbolic link you can run sudo dpkg-reconfigure resolvconf or you can do mv /etc/resolv.conf /run/resolvconf/resolv.conf && ln -s ../run/resolvconf/resolv.conf /etc/resolv.conf
    – jdthood
    Oct 31 '13 at 15:02




    Resolvconf actually writes the file /run/resolvconf/resolv.conf and /etc/resolv.conf is supposed to be a symbolic link to /run/resolvconf/resolv.conf. If you deleted /etc/resolv.conf then you deleted the symbolic link. To recreate the symbolic link you can run sudo dpkg-reconfigure resolvconf or you can do mv /etc/resolv.conf /run/resolvconf/resolv.conf && ln -s ../run/resolvconf/resolv.conf /etc/resolv.conf
    – jdthood
    Oct 31 '13 at 15:02




    7




    7




    This has everything but the 'fix'. How can I resolve this issue?
    – Amal Murali
    Jan 18 '14 at 22:19




    This has everything but the 'fix'. How can I resolve this issue?
    – Amal Murali
    Jan 18 '14 at 22:19




    5




    5




    The fix may be to run sudo dpkg-reconfigure resolvconf as suggested in the last part of the answer.
    – jdthood
    Jan 20 '14 at 13:09




    The fix may be to run sudo dpkg-reconfigure resolvconf as suggested in the last part of the answer.
    – jdthood
    Jan 20 '14 at 13:09












    Thank you!!! I am not sure what happened to my system but running the sudo dpkg-reconfigure resolveconf seemed to work great!
    – meanbunny
    Nov 22 '14 at 15:29




    Thank you!!! I am not sure what happened to my system but running the sudo dpkg-reconfigure resolveconf seemed to work great!
    – meanbunny
    Nov 22 '14 at 15:29












    up vote
    47
    down vote













    I made the change suggested on the link below (disabling dnsmasq). Now everything works great!
    http://www.ubuntugeek.com/how-to-disable-dnsmasq-in-ubuntu-12-04precise.html



    Open /etc/NetworkManager/NetworkManager.conf file.



    sudo gedit /etc/NetworkManager/NetworkManager.conf


    Comment out line as:



    #dnsmasq deactivated
    #dns=dnsmasq





    share|improve this answer



















    • 4




      After commenting out dnsmasq, you need to restart network manager: sudo restart network-manager.
      – Don Kirkby
      Dec 17 '15 at 22:27






    • 2




      In my case (Xubuntu) the command is: sudo /etc/init.d/network-manager restart
      – aviram83
      Apr 26 '16 at 4:37










    • If you have this happening to you, even though there is no dnsmasq installed, and there is nothing to even comment out, add dns=default to the [main] section. NetworkManager has its own nasty dnsmasq plugin which it will use otherwise.
      – dstibbe
      Dec 15 '17 at 23:15








    • 1




      I need to do this restart network-manager - sudo service network-manager restart
      – Sungam
      Jan 18 at 21:35










    • One of my box had no dns after upgrade to 17.10 and it turns out the /etc/resolv.conf was not a symbolic link. Fixed it. Another box did not finish upgrading and I found a .dpkg-new file in the dir, diff them the main difference is dnsmasq. Copied it over and worked without restart any daemon
      – fchen
      Jan 21 at 21:22















    up vote
    47
    down vote













    I made the change suggested on the link below (disabling dnsmasq). Now everything works great!
    http://www.ubuntugeek.com/how-to-disable-dnsmasq-in-ubuntu-12-04precise.html



    Open /etc/NetworkManager/NetworkManager.conf file.



    sudo gedit /etc/NetworkManager/NetworkManager.conf


    Comment out line as:



    #dnsmasq deactivated
    #dns=dnsmasq





    share|improve this answer



















    • 4




      After commenting out dnsmasq, you need to restart network manager: sudo restart network-manager.
      – Don Kirkby
      Dec 17 '15 at 22:27






    • 2




      In my case (Xubuntu) the command is: sudo /etc/init.d/network-manager restart
      – aviram83
      Apr 26 '16 at 4:37










    • If you have this happening to you, even though there is no dnsmasq installed, and there is nothing to even comment out, add dns=default to the [main] section. NetworkManager has its own nasty dnsmasq plugin which it will use otherwise.
      – dstibbe
      Dec 15 '17 at 23:15








    • 1




      I need to do this restart network-manager - sudo service network-manager restart
      – Sungam
      Jan 18 at 21:35










    • One of my box had no dns after upgrade to 17.10 and it turns out the /etc/resolv.conf was not a symbolic link. Fixed it. Another box did not finish upgrading and I found a .dpkg-new file in the dir, diff them the main difference is dnsmasq. Copied it over and worked without restart any daemon
      – fchen
      Jan 21 at 21:22













    up vote
    47
    down vote










    up vote
    47
    down vote









    I made the change suggested on the link below (disabling dnsmasq). Now everything works great!
    http://www.ubuntugeek.com/how-to-disable-dnsmasq-in-ubuntu-12-04precise.html



    Open /etc/NetworkManager/NetworkManager.conf file.



    sudo gedit /etc/NetworkManager/NetworkManager.conf


    Comment out line as:



    #dnsmasq deactivated
    #dns=dnsmasq





    share|improve this answer














    I made the change suggested on the link below (disabling dnsmasq). Now everything works great!
    http://www.ubuntugeek.com/how-to-disable-dnsmasq-in-ubuntu-12-04precise.html



    Open /etc/NetworkManager/NetworkManager.conf file.



    sudo gedit /etc/NetworkManager/NetworkManager.conf


    Comment out line as:



    #dnsmasq deactivated
    #dns=dnsmasq






    share|improve this answer














    share|improve this answer



    share|improve this answer








    edited Mar 19 '17 at 17:36









    Sergio

    66069




    66069










    answered Mar 10 '14 at 18:37









    Richard Lindstedt

    47142




    47142








    • 4




      After commenting out dnsmasq, you need to restart network manager: sudo restart network-manager.
      – Don Kirkby
      Dec 17 '15 at 22:27






    • 2




      In my case (Xubuntu) the command is: sudo /etc/init.d/network-manager restart
      – aviram83
      Apr 26 '16 at 4:37










    • If you have this happening to you, even though there is no dnsmasq installed, and there is nothing to even comment out, add dns=default to the [main] section. NetworkManager has its own nasty dnsmasq plugin which it will use otherwise.
      – dstibbe
      Dec 15 '17 at 23:15








    • 1




      I need to do this restart network-manager - sudo service network-manager restart
      – Sungam
      Jan 18 at 21:35










    • One of my box had no dns after upgrade to 17.10 and it turns out the /etc/resolv.conf was not a symbolic link. Fixed it. Another box did not finish upgrading and I found a .dpkg-new file in the dir, diff them the main difference is dnsmasq. Copied it over and worked without restart any daemon
      – fchen
      Jan 21 at 21:22














    • 4




      After commenting out dnsmasq, you need to restart network manager: sudo restart network-manager.
      – Don Kirkby
      Dec 17 '15 at 22:27






    • 2




      In my case (Xubuntu) the command is: sudo /etc/init.d/network-manager restart
      – aviram83
      Apr 26 '16 at 4:37










    • If you have this happening to you, even though there is no dnsmasq installed, and there is nothing to even comment out, add dns=default to the [main] section. NetworkManager has its own nasty dnsmasq plugin which it will use otherwise.
      – dstibbe
      Dec 15 '17 at 23:15








    • 1




      I need to do this restart network-manager - sudo service network-manager restart
      – Sungam
      Jan 18 at 21:35










    • One of my box had no dns after upgrade to 17.10 and it turns out the /etc/resolv.conf was not a symbolic link. Fixed it. Another box did not finish upgrading and I found a .dpkg-new file in the dir, diff them the main difference is dnsmasq. Copied it over and worked without restart any daemon
      – fchen
      Jan 21 at 21:22








    4




    4




    After commenting out dnsmasq, you need to restart network manager: sudo restart network-manager.
    – Don Kirkby
    Dec 17 '15 at 22:27




    After commenting out dnsmasq, you need to restart network manager: sudo restart network-manager.
    – Don Kirkby
    Dec 17 '15 at 22:27




    2




    2




    In my case (Xubuntu) the command is: sudo /etc/init.d/network-manager restart
    – aviram83
    Apr 26 '16 at 4:37




    In my case (Xubuntu) the command is: sudo /etc/init.d/network-manager restart
    – aviram83
    Apr 26 '16 at 4:37












    If you have this happening to you, even though there is no dnsmasq installed, and there is nothing to even comment out, add dns=default to the [main] section. NetworkManager has its own nasty dnsmasq plugin which it will use otherwise.
    – dstibbe
    Dec 15 '17 at 23:15






    If you have this happening to you, even though there is no dnsmasq installed, and there is nothing to even comment out, add dns=default to the [main] section. NetworkManager has its own nasty dnsmasq plugin which it will use otherwise.
    – dstibbe
    Dec 15 '17 at 23:15






    1




    1




    I need to do this restart network-manager - sudo service network-manager restart
    – Sungam
    Jan 18 at 21:35




    I need to do this restart network-manager - sudo service network-manager restart
    – Sungam
    Jan 18 at 21:35












    One of my box had no dns after upgrade to 17.10 and it turns out the /etc/resolv.conf was not a symbolic link. Fixed it. Another box did not finish upgrading and I found a .dpkg-new file in the dir, diff them the main difference is dnsmasq. Copied it over and worked without restart any daemon
    – fchen
    Jan 21 at 21:22




    One of my box had no dns after upgrade to 17.10 and it turns out the /etc/resolv.conf was not a symbolic link. Fixed it. Another box did not finish upgrading and I found a .dpkg-new file in the dir, diff them the main difference is dnsmasq. Copied it over and worked without restart any daemon
    – fchen
    Jan 21 at 21:22










    up vote
    19
    down vote













    EDIT 2: Previous post was rightfully deleted by the moderation, I'm posting what I have found to be a solution. Sorry for that.



    EDIT: I just found the answer and it's in this very page - sorry for my miopy. I posted my findings below, expanding the correct answer by Richard Lindstedt found in this page. I left my early rumbling for a bit of context. Please upvote Richard's answer, he deserves it.




    It's actually really easy.



    just open your interfaces conf file --> sudo vi /etc/network/interfaces




    That sure did not help the OP and doesn't help me now. We don't want static addresses, we want to use the ones the DHCP server sends us. NetworkManager seems to recognise them, but Ubuntu bluntly ignores them:



    # nmcli dev list iface wlan0 | grep IP4.DNS
    IP4.DNS[1]: 10.*.*.*
    IP4.DNS[2]: 10.*.*.*
    IP4.DNS[3]: 8.8.8.8


    But...



    # dig microsoft.com
    ; <<>> DiG 9.9.5-4.3-Ubuntu <<>> microsoft.com
    ;; global options: cmd
    ;; connection timed out; no servers could be reached


    And my /etc/network/interfaces is:



    auto lo
    iface lo inet loopback


    which is a bit odd, I would expect all interfaces being declared here (or am I missing something?).



    So, in short:




    • I did not mess with any file to start with

    • I have already run dpkg-reconfigure resolvconf

    • The right symlink is in place

    • NetworkManager retrieves the correct DNS servers from DHCP

    • Ubuntu DOES NOT use such addresses

    • The workaround is to put fixed 8.8.8.8 on /etc/network/interfaces WHICH I DON'T WANT

    • I want to use the DHCP-provided DNS servers in any and all situations.


    Not opening another thread because it's the exact problem except I'm on 14.10 now (but this have been nagging me since de upgrade from 12.10 to 13.04).



    SOLUTION



    That last phrase got me on the right track, and only then I noticed Richard's answer.



    The problem seems to be related to the conflicting dnsmasq and resolvconf packages. Until 12.10, dnsmasq was used. From 13.04 onwards, Ubuntu seemed to switch to a dnsmasq/resolvconf hybrid, where you have installed the packages dnsmasq-base and resolvconf, but not dnsmasq itself.



    I can't say if it's a bug in the upgrade scripts for 13.04 or something else, because when upgrading (as in fresh installs) resolvconf is installed, dnsmasq-base is upgraded and dnsmasq is (correctly) uninstalled.



    The catch is, the upgrade script fails to comment out the dns=dnsmasq line in /etc/NetworkManager/NetworkManager.conf. So, even though the dnsmasq daemon is not present anymore on the system, /etc/resolv.conf still expects it to be.






    share|improve this answer





















    • THIS IS SO AWESOME!
      – metadings
      Oct 17 '15 at 23:33






    • 1




      OMG this solved my DNS problems I have had for the past 3 years! If you have dnsmasq and dnsmasq-base installed, NM will put 127.0.0.1 in /etc/resolv.conf instead of 127.0.1.1. I simply uninstalled dnsmasq (and enabled NM) and everything works just fine.
      – user1129682
      Oct 19 '15 at 12:11






    • 4




      Future Googlers should note that you have to sudo service network-manager restart for this to take effect.
      – timelmer
      Jan 23 '17 at 21:13















    up vote
    19
    down vote













    EDIT 2: Previous post was rightfully deleted by the moderation, I'm posting what I have found to be a solution. Sorry for that.



    EDIT: I just found the answer and it's in this very page - sorry for my miopy. I posted my findings below, expanding the correct answer by Richard Lindstedt found in this page. I left my early rumbling for a bit of context. Please upvote Richard's answer, he deserves it.




    It's actually really easy.



    just open your interfaces conf file --> sudo vi /etc/network/interfaces




    That sure did not help the OP and doesn't help me now. We don't want static addresses, we want to use the ones the DHCP server sends us. NetworkManager seems to recognise them, but Ubuntu bluntly ignores them:



    # nmcli dev list iface wlan0 | grep IP4.DNS
    IP4.DNS[1]: 10.*.*.*
    IP4.DNS[2]: 10.*.*.*
    IP4.DNS[3]: 8.8.8.8


    But...



    # dig microsoft.com
    ; <<>> DiG 9.9.5-4.3-Ubuntu <<>> microsoft.com
    ;; global options: cmd
    ;; connection timed out; no servers could be reached


    And my /etc/network/interfaces is:



    auto lo
    iface lo inet loopback


    which is a bit odd, I would expect all interfaces being declared here (or am I missing something?).



    So, in short:




    • I did not mess with any file to start with

    • I have already run dpkg-reconfigure resolvconf

    • The right symlink is in place

    • NetworkManager retrieves the correct DNS servers from DHCP

    • Ubuntu DOES NOT use such addresses

    • The workaround is to put fixed 8.8.8.8 on /etc/network/interfaces WHICH I DON'T WANT

    • I want to use the DHCP-provided DNS servers in any and all situations.


    Not opening another thread because it's the exact problem except I'm on 14.10 now (but this have been nagging me since de upgrade from 12.10 to 13.04).



    SOLUTION



    That last phrase got me on the right track, and only then I noticed Richard's answer.



    The problem seems to be related to the conflicting dnsmasq and resolvconf packages. Until 12.10, dnsmasq was used. From 13.04 onwards, Ubuntu seemed to switch to a dnsmasq/resolvconf hybrid, where you have installed the packages dnsmasq-base and resolvconf, but not dnsmasq itself.



    I can't say if it's a bug in the upgrade scripts for 13.04 or something else, because when upgrading (as in fresh installs) resolvconf is installed, dnsmasq-base is upgraded and dnsmasq is (correctly) uninstalled.



    The catch is, the upgrade script fails to comment out the dns=dnsmasq line in /etc/NetworkManager/NetworkManager.conf. So, even though the dnsmasq daemon is not present anymore on the system, /etc/resolv.conf still expects it to be.






    share|improve this answer





















    • THIS IS SO AWESOME!
      – metadings
      Oct 17 '15 at 23:33






    • 1




      OMG this solved my DNS problems I have had for the past 3 years! If you have dnsmasq and dnsmasq-base installed, NM will put 127.0.0.1 in /etc/resolv.conf instead of 127.0.1.1. I simply uninstalled dnsmasq (and enabled NM) and everything works just fine.
      – user1129682
      Oct 19 '15 at 12:11






    • 4




      Future Googlers should note that you have to sudo service network-manager restart for this to take effect.
      – timelmer
      Jan 23 '17 at 21:13













    up vote
    19
    down vote










    up vote
    19
    down vote









    EDIT 2: Previous post was rightfully deleted by the moderation, I'm posting what I have found to be a solution. Sorry for that.



    EDIT: I just found the answer and it's in this very page - sorry for my miopy. I posted my findings below, expanding the correct answer by Richard Lindstedt found in this page. I left my early rumbling for a bit of context. Please upvote Richard's answer, he deserves it.




    It's actually really easy.



    just open your interfaces conf file --> sudo vi /etc/network/interfaces




    That sure did not help the OP and doesn't help me now. We don't want static addresses, we want to use the ones the DHCP server sends us. NetworkManager seems to recognise them, but Ubuntu bluntly ignores them:



    # nmcli dev list iface wlan0 | grep IP4.DNS
    IP4.DNS[1]: 10.*.*.*
    IP4.DNS[2]: 10.*.*.*
    IP4.DNS[3]: 8.8.8.8


    But...



    # dig microsoft.com
    ; <<>> DiG 9.9.5-4.3-Ubuntu <<>> microsoft.com
    ;; global options: cmd
    ;; connection timed out; no servers could be reached


    And my /etc/network/interfaces is:



    auto lo
    iface lo inet loopback


    which is a bit odd, I would expect all interfaces being declared here (or am I missing something?).



    So, in short:




    • I did not mess with any file to start with

    • I have already run dpkg-reconfigure resolvconf

    • The right symlink is in place

    • NetworkManager retrieves the correct DNS servers from DHCP

    • Ubuntu DOES NOT use such addresses

    • The workaround is to put fixed 8.8.8.8 on /etc/network/interfaces WHICH I DON'T WANT

    • I want to use the DHCP-provided DNS servers in any and all situations.


    Not opening another thread because it's the exact problem except I'm on 14.10 now (but this have been nagging me since de upgrade from 12.10 to 13.04).



    SOLUTION



    That last phrase got me on the right track, and only then I noticed Richard's answer.



    The problem seems to be related to the conflicting dnsmasq and resolvconf packages. Until 12.10, dnsmasq was used. From 13.04 onwards, Ubuntu seemed to switch to a dnsmasq/resolvconf hybrid, where you have installed the packages dnsmasq-base and resolvconf, but not dnsmasq itself.



    I can't say if it's a bug in the upgrade scripts for 13.04 or something else, because when upgrading (as in fresh installs) resolvconf is installed, dnsmasq-base is upgraded and dnsmasq is (correctly) uninstalled.



    The catch is, the upgrade script fails to comment out the dns=dnsmasq line in /etc/NetworkManager/NetworkManager.conf. So, even though the dnsmasq daemon is not present anymore on the system, /etc/resolv.conf still expects it to be.






    share|improve this answer












    EDIT 2: Previous post was rightfully deleted by the moderation, I'm posting what I have found to be a solution. Sorry for that.



    EDIT: I just found the answer and it's in this very page - sorry for my miopy. I posted my findings below, expanding the correct answer by Richard Lindstedt found in this page. I left my early rumbling for a bit of context. Please upvote Richard's answer, he deserves it.




    It's actually really easy.



    just open your interfaces conf file --> sudo vi /etc/network/interfaces




    That sure did not help the OP and doesn't help me now. We don't want static addresses, we want to use the ones the DHCP server sends us. NetworkManager seems to recognise them, but Ubuntu bluntly ignores them:



    # nmcli dev list iface wlan0 | grep IP4.DNS
    IP4.DNS[1]: 10.*.*.*
    IP4.DNS[2]: 10.*.*.*
    IP4.DNS[3]: 8.8.8.8


    But...



    # dig microsoft.com
    ; <<>> DiG 9.9.5-4.3-Ubuntu <<>> microsoft.com
    ;; global options: cmd
    ;; connection timed out; no servers could be reached


    And my /etc/network/interfaces is:



    auto lo
    iface lo inet loopback


    which is a bit odd, I would expect all interfaces being declared here (or am I missing something?).



    So, in short:




    • I did not mess with any file to start with

    • I have already run dpkg-reconfigure resolvconf

    • The right symlink is in place

    • NetworkManager retrieves the correct DNS servers from DHCP

    • Ubuntu DOES NOT use such addresses

    • The workaround is to put fixed 8.8.8.8 on /etc/network/interfaces WHICH I DON'T WANT

    • I want to use the DHCP-provided DNS servers in any and all situations.


    Not opening another thread because it's the exact problem except I'm on 14.10 now (but this have been nagging me since de upgrade from 12.10 to 13.04).



    SOLUTION



    That last phrase got me on the right track, and only then I noticed Richard's answer.



    The problem seems to be related to the conflicting dnsmasq and resolvconf packages. Until 12.10, dnsmasq was used. From 13.04 onwards, Ubuntu seemed to switch to a dnsmasq/resolvconf hybrid, where you have installed the packages dnsmasq-base and resolvconf, but not dnsmasq itself.



    I can't say if it's a bug in the upgrade scripts for 13.04 or something else, because when upgrading (as in fresh installs) resolvconf is installed, dnsmasq-base is upgraded and dnsmasq is (correctly) uninstalled.



    The catch is, the upgrade script fails to comment out the dns=dnsmasq line in /etc/NetworkManager/NetworkManager.conf. So, even though the dnsmasq daemon is not present anymore on the system, /etc/resolv.conf still expects it to be.







    share|improve this answer












    share|improve this answer



    share|improve this answer










    answered Nov 21 '14 at 18:01









    Henrique

    55236




    55236












    • THIS IS SO AWESOME!
      – metadings
      Oct 17 '15 at 23:33






    • 1




      OMG this solved my DNS problems I have had for the past 3 years! If you have dnsmasq and dnsmasq-base installed, NM will put 127.0.0.1 in /etc/resolv.conf instead of 127.0.1.1. I simply uninstalled dnsmasq (and enabled NM) and everything works just fine.
      – user1129682
      Oct 19 '15 at 12:11






    • 4




      Future Googlers should note that you have to sudo service network-manager restart for this to take effect.
      – timelmer
      Jan 23 '17 at 21:13


















    • THIS IS SO AWESOME!
      – metadings
      Oct 17 '15 at 23:33






    • 1




      OMG this solved my DNS problems I have had for the past 3 years! If you have dnsmasq and dnsmasq-base installed, NM will put 127.0.0.1 in /etc/resolv.conf instead of 127.0.1.1. I simply uninstalled dnsmasq (and enabled NM) and everything works just fine.
      – user1129682
      Oct 19 '15 at 12:11






    • 4




      Future Googlers should note that you have to sudo service network-manager restart for this to take effect.
      – timelmer
      Jan 23 '17 at 21:13
















    THIS IS SO AWESOME!
    – metadings
    Oct 17 '15 at 23:33




    THIS IS SO AWESOME!
    – metadings
    Oct 17 '15 at 23:33




    1




    1




    OMG this solved my DNS problems I have had for the past 3 years! If you have dnsmasq and dnsmasq-base installed, NM will put 127.0.0.1 in /etc/resolv.conf instead of 127.0.1.1. I simply uninstalled dnsmasq (and enabled NM) and everything works just fine.
    – user1129682
    Oct 19 '15 at 12:11




    OMG this solved my DNS problems I have had for the past 3 years! If you have dnsmasq and dnsmasq-base installed, NM will put 127.0.0.1 in /etc/resolv.conf instead of 127.0.1.1. I simply uninstalled dnsmasq (and enabled NM) and everything works just fine.
    – user1129682
    Oct 19 '15 at 12:11




    4




    4




    Future Googlers should note that you have to sudo service network-manager restart for this to take effect.
    – timelmer
    Jan 23 '17 at 21:13




    Future Googlers should note that you have to sudo service network-manager restart for this to take effect.
    – timelmer
    Jan 23 '17 at 21:13










    up vote
    7
    down vote













    It's actually really easy.



    just open your interfaces conf file
    --> sudo vi /etc/network/interfaces



    and under your interface (probably eth0) you will see all the usual config.



    address 192.168.22.71
    netmask 255.255.255.0
    gateway 192.168.22.1


    After gateway just add 'dns-nameservers 8.8.8.8 8.8.8.9' or whatever nameserver you're going to use.



    So your config should be:



    address 192.168.22.71
    netmask 255.255.255.0
    gateway 192.168.22.1
    dns-nameservers 8.8.8.8 8.8.8.9


    then just do a 'sudo service networking restart' and you're good to go!






    share|improve this answer

























      up vote
      7
      down vote













      It's actually really easy.



      just open your interfaces conf file
      --> sudo vi /etc/network/interfaces



      and under your interface (probably eth0) you will see all the usual config.



      address 192.168.22.71
      netmask 255.255.255.0
      gateway 192.168.22.1


      After gateway just add 'dns-nameservers 8.8.8.8 8.8.8.9' or whatever nameserver you're going to use.



      So your config should be:



      address 192.168.22.71
      netmask 255.255.255.0
      gateway 192.168.22.1
      dns-nameservers 8.8.8.8 8.8.8.9


      then just do a 'sudo service networking restart' and you're good to go!






      share|improve this answer























        up vote
        7
        down vote










        up vote
        7
        down vote









        It's actually really easy.



        just open your interfaces conf file
        --> sudo vi /etc/network/interfaces



        and under your interface (probably eth0) you will see all the usual config.



        address 192.168.22.71
        netmask 255.255.255.0
        gateway 192.168.22.1


        After gateway just add 'dns-nameservers 8.8.8.8 8.8.8.9' or whatever nameserver you're going to use.



        So your config should be:



        address 192.168.22.71
        netmask 255.255.255.0
        gateway 192.168.22.1
        dns-nameservers 8.8.8.8 8.8.8.9


        then just do a 'sudo service networking restart' and you're good to go!






        share|improve this answer












        It's actually really easy.



        just open your interfaces conf file
        --> sudo vi /etc/network/interfaces



        and under your interface (probably eth0) you will see all the usual config.



        address 192.168.22.71
        netmask 255.255.255.0
        gateway 192.168.22.1


        After gateway just add 'dns-nameservers 8.8.8.8 8.8.8.9' or whatever nameserver you're going to use.



        So your config should be:



        address 192.168.22.71
        netmask 255.255.255.0
        gateway 192.168.22.1
        dns-nameservers 8.8.8.8 8.8.8.9


        then just do a 'sudo service networking restart' and you're good to go!







        share|improve this answer












        share|improve this answer



        share|improve this answer










        answered Mar 6 '14 at 18:36









        sprut

        7112




        7112

















            protected by Community Jan 14 '15 at 3:41



            Thank you for your interest in this question.
            Because it has attracted low-quality or spam answers that had to be removed, posting an answer now requires 10 reputation on this site (the association bonus does not count).



            Would you like to answer one of these unanswered questions instead?



            Popular posts from this blog

            How to change which sound is reproduced for terminal bell?

            Can I use Tabulator js library in my java Spring + Thymeleaf project?

            Title Spacing in Bjornstrup Chapter, Removing Chapter Number From Contents