Jack Wallen zeigt Ihnen, wie Sie den Unbound DNS-Resolver installieren, um die DNS-Auflösung auf Ihrem Linux-Desktop oder Ihren Serverinstanzen zu beschleunigen.
Unbound ist ein kostenloser und rekursiver Open-Source-DNS-Caching-Server, der DNS-over-TLS und DNS-over-HTTPS zum Verschlüsseln von Verbindungen verwendet. Unbound ist viel schneller als Bind9 und kann dazu beitragen, die Ladezeit von Webseiten und anderen Aufrufen zu reduzieren, die eine DNS-Auflösung erfordern. Unbound unterstützt auch die DNSSEC-Validierung, sodass es als Vertrauensanker in Ihrem Netzwerk dienen kann.
Ich möchte Ihnen zeigen, wie Sie Unbound unter Ubuntu 22.04 installieren. Dies kann entweder auf Ubuntu Server oder Desktop installiert werden und Sie erhalten eine erhebliche DNS-Auflösungsgeschwindigkeit gegenüber der Standardeinstellung.
Was Sie brauchen
Die einzigen Dinge, die Sie dafür benötigen, sind eine laufende Instanz von Ubuntu – obwohl es auch auf RHEL-basierten Distributionen installiert werden kann – und ein Benutzer mit sudo-Berechtigungen. Das ist es:Lassen Sie uns die DNS-Auflösung beschleunigen.
So installieren Sie Unbound
Glücklicherweise ist Unbound in den Standard-Repositories zu finden, also melden Sie sich zur Installation bei Ihrem Ubuntu-Rechner an und geben Sie den Befehl ein:
sudo apt-get install unbound -y
Wenn Sie an einer RHEL-basierten Distribution arbeiten, wäre diese Installation:
sudo dnf install unbound -y
So konfigurieren Sie Unbound
Pflichtlektüre für Entwickler
Sobald Unbound installiert ist, müssen wir eine neue Konfigurationsdatei erstellen. Erstellen Sie diese Datei mit dem Befehl:
nano /etc/unbound/unbound.conf.d/myunbound.conf
Fügen Sie in diese Datei Folgendes ein:
server:
port: 53
verbosity: 0
num-threads: 2
outgoing-range: 512
num-queries-per-thread: 1024
msg-cache-size: 32m
interface: 0.0.0.0
rrset-cache-size: 64m
cache-max-ttl: 86400
infra-host-ttl: 60
infra-lame-ttl: 120
access-control: 127.0.0.0/8 allow
access-control: 0.0.0.0/0 allow
username: unbound
directory: "/etc/unbound"
logfile: "/var/log/unbound.log"
use-syslog: no
hide-version: yes
so-rcvbuf: 4m
so-sndbuf: 4m
do-ip4: yes
do-ip6: no
do-udp: yes
do-tcp: yes
remote-control:
control-enable: yes
control-port: 953
control-interface: 0.0.0.0
Sie können die obige Konfiguration bearbeiten, aber Sie sollten wissen, dass sie so funktionieren sollte, wie sie ist. Speichern und schließen Sie die Datei.
Als nächstes müssen wir mit dem Befehl:
eine Protokolldatei für Unbound erstellen
sudo touch /var/log/unbound.log
Geben Sie der Protokolldatei die richtigen Berechtigungen mit:
sudo chown unbound:unbound /var/log/unbound.log
Starten Sie abschließend den Unbound-Dienst mit:
sudo systemctl enable --now unbound
So testen Sie Unbound
Geben Sie unmittelbar nach dem Start des Dienstes den folgenden Befehl aus:
dig google.com @localhost
Sie sollten eine Ausgabe ähnlich der folgenden sehen:
; <<>> DiG 9.18.1-1ubuntu1.1-Ubuntu <<>> google.com @localhost
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 56042
;; flags: qr rd ra; QUERY: 1, ANSWER: 6, AUTHORITY: 0, ADDITIONAL: 1
;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 1232
;; QUESTION SECTION:
;google.com. IN A
;; ANSWER SECTION:
google.com. 300 IN A 142.251.111.138
google.com. 300 IN A 142.251.111.113
google.com. 300 IN A 142.251.111.101
google.com. 300 IN A 142.251.111.100
google.com. 300 IN A 142.251.111.102
google.com. 300 IN A 142.251.111.139
;; Query time: 108 msec
;; SERVER: 127.0.0.1#53(localhost) (UDP)
;; WHEN: Thu Jun 16 13:30:12 UTC 2022
;; MSG SIZE rcvd: 135
Beachten Sie die Abfragezeit von 108 ms. Das ist ziemlich schnell. Lassen Sie uns den Befehl jedoch erneut ausführen:
dig google.com @localhost
Ihre Abfragezeit sollte erheblich kürzer sein. Beim zweiten Versuch erhielt ich eine Abfragezeit von 4 ms und beim dritten null.
Herzlichen Glückwunsch, Ihre DNS-Abfragen sind jetzt dank des Open-Source-Unbound-DNS-Resolvers schneller. Sie könnten diesen Server sogar als Ihren LAN-basierten DNS-Server verwenden, wenn Sie möchten.