DNS-Server auf Raspberry Pi
- DNS-Server auf Raspberry Pi
- Richten Sie eine statische IP-Adresse auf dem Raspberry Pi ein
- Richten Sie den DNS-Server auf dem Raspberry Pi ein
- Testen Sie den DNS-Server auf Raspberry Pi
In diesem Tutorial wird die Verwendung von DNS behandelt, um IP-Adressen in benutzerfreundliche Domänennamen auf dem Raspberry Pi umzuwandeln und die Rechenzeit von DNS-Anfragen eines Computers zu verbessern.
DNS-Server auf Raspberry Pi
DNS oder Domain Name System wandelt computerlesbare IP-Adressen von einem menschenlesbaren Domainnamen wie 192.168.0.1
in etwas wie webname.com
um. Wenn wir eine Website öffnen möchten, geben wir ihren Namen in die Suchleiste ein, aber der Computer versteht ihn nicht und verwendet DNS, um den Domänennamen in eine IP-Adresse umzuwandeln, die der Computer verstehen kann.
Wir können DNS auf einem Raspberry Pi verwenden, um unsere IP-Adresse in einen Domänennamen umzuwandeln, und es wird auch die Rechenzeit von DNS-Anfragen auf einem Computer verbessern. Wir können unsere Computer oder Mobiltelefone mit dem DNS-Server auf Raspberry Pi verbinden, und jedes Mal, wenn wir eine DNS-Anfrage stellen, ermittelt der DNS-Server von Raspberry Pi die IP-Adresse dieser Anfrage und speichert die Antwort im Cache-Speicher.
Das heißt, wenn wir dieselbe Domain erneut anfordern, gibt der Raspberry Pi DNS die Antwort aus dem Cache zurück, was die Rechenzeit verkürzt. Unser Computer tut dasselbe; Wenn wir eine Anwendung zum ersten Mal öffnen und schließen, speichert der Computer sie im Cache-Speicher, und wenn wir sie erneut ausführen, führt der Computer die Anwendung aus dem Cache-Speicher aus, wodurch die Öffnungszeit der Anwendung verkürzt wird.
Richten Sie eine statische IP-Adresse auf dem Raspberry Pi ein
Bevor wir den DNS-Server auf dem Raspberry Pi installieren und einrichten, müssen wir auf unserem Raspberry Pi eine statische IP-Adresse verwenden, da sich eine dynamische IP-Adresse ändern kann und wir eine IP-Adresse benötigen, die immer gleich bleibt. Führen Sie die folgenden Schritte aus, um eine statische IP-Adresse auf dem Raspberry Pi einzurichten.
Wir können die DHCP-Client-Domäne verwenden, die die IP-Adressen verwaltet, um unseren Raspberry Pi zu zwingen, eine statische IP-Adresse zu verwenden. Wir müssen einige Einstellungen in der DHCPCD-Konfigurationsdatei in Raspberry Pi ändern.
Zuerst müssen wir einige Informationen erhalten, wie die IP-Adresse des Routers und des Raspberry Pi. Um die IP-Adresse des Routers zu überprüfen, müssen wir den folgenden Befehl im Terminal ausführen.
ip r | grep default
Ausgang:
default via 10.0.2.2 dev eth0 proto dhcp src 10.0.2.15 metric 202
Die erste IP-Adresse ist die IP-Adresse des Routers, in diesem Fall 10.0.2.2
, die wir uns notieren müssen, da sie später verwendet wird.
Als nächstes müssen wir die aktuelle IP-Adresse des DNS-Servers mit dem folgenden Befehl abrufen.
sudo nano /etc/resolv.conf
Ausgang:
domain Home
nameserver 127.0.0.1
Der obige Code öffnet die Konfigurationsdatei, die mit CTRL+x auf der Tastatur geschlossen werden kann. Die IP-Adresse im obigen Code ist die IP-Adresse des DNS-Servers, also 127.0.0.1
, und wir müssen sie auch notieren.
Jetzt können wir die Datei dhcpcd.conf
mit dem folgenden Befehl öffnen, um sie zu ändern.
sudo nano /etc/dhcpcd.conf
Der obige Befehl öffnet die Konfigurationsdatei von DHCPCD
, und wir müssen die folgenden Codezeilen am Ende der Datei eingeben.
interface <eth0 or wlan0>
static ip_address=<static IP>/24
static routers=<router IP>
static domain_name_servers=<dns server IP>
In die erste Zeile des obigen Codes müssen wir je nach Netzwerk unseres Raspberry Pi eth0
für Ethernet oder wlan0
für WIFI schreiben. In der zweiten Zeile müssen wir die statische IP mit der IP-Adresse ändern, die wir dem Raspberry Pi zuweisen möchten.
In der dritten Zeile müssen wir die IP-Adresse des Routers hinzufügen, die wir oben abgerufen haben, die 10.0.2.2
war. In der vierten Zeile müssen wir die IP-Adresse des DNS-Servers hinzufügen, die die gleiche sein kann, die wir in den obigen Schritten gefunden haben, nämlich 127.0.0.1
oder eine andere DNS-IP-Adresse wie 8.8.8.8
von Google .
Danach müssen wir die Änderungen, die wir an der Konfigurationsdatei vorgenommen haben, mit CTRL+x und dann y und dann ENTER speichern . Wir müssen unseren Raspberry Pi mit dem Befehl sudo reboot
neu starten, damit die neuen Einstellungen geladen werden und sich der Raspberry Pi mit der neuen statischen IP-Adresse mit dem Router verbindet.
Richten Sie den DNS-Server auf dem Raspberry Pi ein
Nach dem Festlegen einer statischen IP-Adresse müssen wir das Raspberry Pi-Betriebssystem aktualisieren und den DNS-Server mit den folgenden Befehlen auf dem Terminal installieren.
sudo apt update
sudo apt upgrade
sudo apt install dnsmasq
Wir müssen die obigen Befehle einzeln ausführen und wenn Sie um Erlaubnis gebeten werden, geben Sie y ein, um ein Paket zu installieren. Als nächstes müssen wir die Datei dnsmasq.conf
öffnen, um einige Einstellungen mit den folgenden Befehlen zu ändern.
sudo nano /etc/dnsmasq.conf
Der obige Befehl öffnet eine Konfigurationsdatei, und wir müssen einige Zeilen finden und ersetzen. Wir können CTRL+W verwenden, um die Suchleiste zu öffnen und die folgende Codezeile zu durchsuchen und sie zu ersetzen.
Wir können Text in die Suchleiste schreiben und sie dann finden, indem wir ENTER drücken.
Finden:
#domain-needed
Ersetzen mit:
domain-needed
Der obige Befehl erlaubt dem DNS-Server, die Namen weiterzuleiten, die kein .
enthalten. oder .com
in ihnen und behalte die Namen innerhalb des lokalen Netzwerks wie localhost
.
Finden:
#bogus-priv
Ersetzen mit:
bogus-priv
Der obige Befehl verhindert, dass der DNS-Server die umgekehrten Abfragen an die Upstream-Server sendet, und die IP-Adresse des lokalen Netzwerks wird nicht an die DNS-Server gesendet.
Finden:
#no-resolv
Ersetzen mit:
no-resolv
Die obigen Befehle hindern den DNS daran, die Konfigurationsdatei für Upstream-Server zu lesen.
Finden:
#server=/localnet/192.168.0.1
Ersetzen mit:
server=8.8.8.8
server=8.8.4.4
Der obige Befehl veranlasst den DNS-Server, den Google-DNS-Server für Upstream-Server zu verwenden.
Finden:
#cache-size=150
Ersetzen mit:
cache-size=1000
Die obigen Befehle erhöhen die Cache-Größe und erhöhen die Anzahl der Anfragen, die der DNS-Server im Cache-Speicher speichert. Jetzt müssen wir die Änderungen, die wir an der Konfigurationsdatei vorgenommen haben, mit CTRL+X und Eingabe von y und dann ENTER</ speichern. kbd> über die Tastatur.
Wir müssen den DNS-Server neu starten und seinen Status mit den folgenden Befehlen überprüfen.
sudo systemctl restart dnsmasq
sudo systemctl status dnsmasq
Wir müssen die obigen Befehle nacheinander im Terminal ausführen, und der zweite Befehl zeigt so etwas wie Active: active (running)
zusammen mit anderen Informationen, was bedeutet, dass der DNS-Server aktiv ist und läuft.
Testen Sie den DNS-Server auf Raspberry Pi
Um den DNS-Server zu testen, können wir das Tool dig
verwenden, das mit dem folgenden Befehl installiert werden kann.
sudo apt install dnsutils
Nach der Installation können wir den folgenden Befehl verwenden, um unseren DNS-Server zu testen.
dig ammar.com @localhost
Im obigen Befehl verwenden wir den @localhost
mit dem dig
-Befehl, der ihn für die DNS-Suche verwendet und die folgende Ausgabe zurückgibt.
Wenn wir den obigen Befehl erneut ausführen, verringert sich die Abfragezeit im obigen Bild, was bedeutet, dass die vorherige Anfrage im Cache-Speicher gespeichert wurde.