Proposal: DNS cache by default for ubuntu-desktop

Conn O'Griofa connogriofa at gmail.com
Wed Jun 2 08:50:00 UTC 2010


Hi Kurt,

> I've been using dnsmasq (a lightweight alternative) on my computers to do the job and it works great. By default, dnsmasq only replies to 127.0.0.1:53 request, so this wouldn't introduce security weakness.
>
> Besides having a DNS cache (like dnsmasq) installed by default, the dhclient add 127.0.0.1 as the first name server in /etc/resolv.conf.
>
> openSUSE is the only Linux distribution that has a DNS cache out of the box. They just provide the nscd package installed by default.
>
> This is a pretty easy, simple, powerful feature. I strongly recommend it to be implemented."
>
> How can I truly submit this proposal? My blueprint has been untouched and unread for the last yo years.

I would like to add my support for this idea. I (and I assume several
others) have problems with slow DNS lookups on my Ubuntu installations
when compared to Windows; see bug #94940 [1]. Perhaps a DNS caching
server such as dnsmasq would alleviate the symptoms of that bug.

However, if dnsmasq were to be integrated into the default
installation (and the package was pre-configured as per the dnsmasq
wiki's instructions [2]), there would be a conflict with
NetworkManager.

As you can see from the community instructions, you need to edit your
/etc/resolv.conf and add the local machine's address (127.0.0.1) as
your first nameserver. This is a problem because any changes to this
file will be overwritten by NetworkManager each time it initializes a
new connection (which is warned in the commented section of the file).
The only solution that I am aware of, is to edit your active network
connection in NetworkManager's applet, change the setting from
"Automatic (DHCP)" to "Automatic (DHCP) addresses only", and then
manually input your DNS servers like so: "127.0.0.1, <your regular DNS
server 1>, <your regular DNS server 1>".

If we are going to integrate dnsmasq into the default installation it
may serve us better to investigate the possibility of adding some kind
of autodetection of the presence of dnsmasq to NetworkManager itself.
We cannot expect users to manually edit their network connections for
each new installation (or indeed, each new wireless network profile
they create).

Let me also mention that dnsmasq has the capability of providing ICS
(internet connection sharing) [3]. This would be an excellent feature
to add to NetworkManager's graphical interface, which is yet another
feature that competing operating systems provide by default.

Thanks,
Conn

[1] https://bugs.launchpad.net/ubuntu/+source/nss-mdns/+bug/94940
[2] https://help.ubuntu.com/community/Dnsmasq
[3] https://help.ubuntu.com/community/Internet/ConnectionSharing




More information about the Ubuntu-devel-discuss mailing list