DNS cache by default for ubuntu-desktop

Registered by Kurt Kraut

Many OSes take the advantage of having a local DNS cache, like Windows and MacOS. Mostly, DNS entries hardly change and they have their own Time To Live value, so re-requesting each time the IP address of an address is pretty an unnecessary process. Setting up a DNS cache for Ubuntu Desktop by default would enhance the desktop experience, save bandwith and speed up internet noticebly.

This has a huge impact on the performance noticed by the user mainly whem web browsing because to render a single HTML page, there are several DNS queries, many of them quite repeated (like Google Analitycs or static.sitedomain.com). And the web browser has to wait each DNS query to be completed to request web content, what could be cached and speeded up. This affect so much the user experience that MacOS and Windows have both a DNS cache by default.

I've been using dnsmasq (a lighweight 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 weakiness.

So, to implement my proposal, the following simple tasks should be done:

1) Add dnsmasq or nscd as a package to be installed by default in Ubuntu
2) Change a single line in /etc/dhcp3/dhclient.conf to add 127.0.0.1 as the first nameserver.

And voi lá! DNS cache by default. There are several blogs in the internet
teaching how to manually create a DNS cache. I'll point
http://embraceubuntu.com/2006/08/02/local-dns-cache-for-faster-browsing/ as
an example.

Blueprint information

Status:
Not started
Approver:
None
Priority:
Undefined
Drafter:
Kurt Kraut
Direction:
Needs approval
Assignee:
None
Definition:
New
Series goal:
Proposed for natty
Implementation:
Not started
Milestone target:
milestone icon natty-alpha-3

Related branches

Whiteboard

dnsmasq seems to be on by default in precise, so perhaps this can be closed.

No, dnsmasq is on but with caching turned off.

This appears to be still pending for UDS-Jaunty, perhaps it got lost somewhere? --rarkenin

(?)

Work Items

This blueprint contains Public information 
Everyone can see this information.