Das Herumhantieren mit dem DNS-Server für cloudflare und der Hinweis zu DANE hat mich daran erinnert, dass ich vor einiger Zeit mal einen lokalen Cache für DNS-Anfragen haben wollte. Nach dieser Anleitung ist das mit dnsmasq auch nicht zu schwierig.
Zuerst installieren:
sudo apt-get install dnsmasq
Dann muss die /etc/dnsmasq.conf bearbeitet werden, um Anfragen nur vom eigenen PC zu erlauben:
listen-address=127.0.0.1
Außerdem soll dnsmasq nur DNS anbieten, also:
no-dhcp-interface=eth2
eth2 entsprechend anpassen.
In der /etc/dhcp3/dhclient.conf dann noch diese Zeile einkommentieren:
prepend domain-name-servers 127.0.0.1;
Ich war mir nicht sicher, ob wicd die /etc/resolv.conf in Ruhe lässt. Daher habe ich in dessen Konfiguration für die Kabelverbindung ebenfalls die DNS-Server eingetragen, mit 127.0.0.1 als ersten Server.
Schließlich noch dnsmasq neustarten und es sollte laufen:
sudo service dnsmasq restart
Ob es wirklich funktioniert, kann man mit dig testen:
onli@Fallout:~$ dig www.google.de
; <<>> DiG 9.9.5-3-Ubuntu <<>> www.google.de
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 11671
;; flags: qr rd ra ad; QUERY: 1, ANSWER: 2, AUTHORITY: 0, ADDITIONAL: 0
;; QUESTION SECTION:
;www.google.de. IN A
;; ANSWER SECTION:
www.google.de. 288 IN A 74.125.230.248
www.google.de. 288 IN A 74.125.230.247
;; Query time: 0 msec
;; SERVER: 127.0.0.1#53(127.0.0.1)
;; WHEN: Wed Oct 08 17:14:49 CEST 2014
;; MSG SIZE rcvd: 63
Ich hatte das vorher mit dem Paket dnscache-run versucht, was aber leider kaputt ist - zumindest bekam ich es nicht zum Laufen.