The previous poster wrote: "But prior to Ubuntu 12.04, NM didn't start a
local nameserver at all; no DNS lookups were done externally and
/etc/hosts wasn't respected then either."

IMO this is not true. I've got no instance of dnsmasq running and
entries in /etc/hosts are respected when e.g. letting Firefox (or any
other application I've access to) resolve URLs.

AFAIK /etc/hosts is in not directly linked to dnsmasq and it doesn't
matter whether DNS lookups are done externally or not. The hosts
mechanism is much older than dnsmasq. For backwards compatibility it has
always been maintained as a first layer of resolving host names. IMO it
is most unusual for a Linux distribution to provide a default
configuration that does not respect /etc/hosts. To my knowledge there's
no other operating system distribution (including Mac + Windows) that
does so.

Of course you are free to configure default Ubuntu as you like. But it
would be great to respect published upgrade policy. What happened is
that the upgrade to 12.04 silently changed the configuration in a way
that broke all working /etc/hosts configurations. It is basic
Debian/Ubuntu policy that such a thing should not happen without at
least consulting the user and giving him/her a choice or a heads up.

-- 
You received this bug notification because you are a member of Desktop
Packages, which is subscribed to network-manager in Ubuntu.
https://bugs.launchpad.net/bugs/993298

Title:
  Please make NetworkManager-controlled dnsmasq respect /etc/hosts

Status in “network-manager” package in Ubuntu:
  Confirmed

Bug description:
  Since 12.04 NetworkManager uses the dnsmasq plugin by default to
  resolve DNS requests. Unfortunately the dnsmasq plug-in has --no-
  hosts, etc. hard coded [1] which means (among other things) that after
  the upgrade to 12.04 /etc/hosts will no longer be used to resolve DNS
  requests. This changes the prior behavior of NetworkManager without
  any visible warning to the end user. AFAICS there's no other way to
  work around this problem as to manually revert the change and disable
  the dnsmasq plug-in in the NetworkManager config, see [2,3]:

  "To turn off dnsmasq in Network Manager, you need to edit
  /etc/NetworkManager/NetworkManager.conf and comment the 'dns=dnsmasq'
  line then do a 'sudo restart network-manager'."

  This is of course not a bug in the NetworkManager which just behaves
  as intended. The problem is in the change of the configuration of the
  Ubuntu packaging which will probably leave many wondering why their
  /etc/hosts suddenly no longer works. This cost me considerable time to
  debug and probably is a usability problem for others, too.

  Maybe you could provide a more visible documentation than that in [3]?
  E.g., *including a comment in /etc/hosts that explains the change* and
  how to work around it would have saved me a lot of time. It would have
  automatically alerted me on upgrade as manual changes to /etc/hosts
  would then have triggered a prompt while leaving those users with
  standard /etc/hosts in peace.

  Probably similar problems arise with other disabled config files and
  could be alerted to the users? Thinking of resolv.conf, etc.

  [1] 
http://cgit.freedesktop.org/NetworkManager/NetworkManager/tree/src/dnsmasq-manager/nm-dnsmasq-manager.c,
 line 285
  [2] i.e. http://ubuntuforums.org/showthread.php?t=1968061
  [3] http://www.stgraber.org/2012/02/24/dns-in-ubuntu-12-04/

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/network-manager/+bug/993298/+subscriptions

-- 
Mailing list: https://launchpad.net/~desktop-packages
Post to     : desktop-packages@lists.launchpad.net
Unsubscribe : https://launchpad.net/~desktop-packages
More help   : https://help.launchpad.net/ListHelp

Reply via email to