Zum Hauptinhalt springen

WireGuard Einrichtungsanleitung

Veröffentlicht am:
.
18 Minuten Lesezeit
.
Für die Englische Version

WireGuard ist ein schnelles und einfaches Virtual Private Network-Protokoll, das moderne Kryptographie nutzt. Es ist viel schneller als OpenVPN oder IPsec und hat zudem eine kleinere Codebasis, die einfacher zu überprüfen und zu warten ist. Für weitere Informationen über WireGuard verweisen Sie bitte auf unseren WireGuard-Leitfaden.

Das Arbeiten aus der Ferne ist zur gängigen Praxis geworden und wird nach der COVID-19-Pandemie von den meisten Organisationen weltweit als notwendig erachtet. Aber Remote-Arbeit birgt auch hohe Sicherheitsrisiken, insbesondere für Unternehmensnetzwerke. Um den Kollegen einen sichereren Internetzugang zu ermöglichen und die Unternehmensnetzwerke/-ressourcen sicherer zu machen, empfehlen wir die gemeinsame Nutzung des WireGuard-Protokolls und Zenarmor.

In diesem Tutorial werden wir eine einfache WireGuard-VPN-Verbindung zwischen einem Ubuntu 20.04 TLS-Server und einem Client konfigurieren. Der Client kann entweder Ihr lokaler Computer oder ein mobiles Gerät sein. Zuerst werden wir WireGuard auf Ubuntu 20.04 TLS als VPN-Server installieren und konfigurieren. Dann werden wir WireGuard sowohl auf einem Desktop-PC als auch auf einem Android-Gerät als Client konfigurieren. Der Desktop-PC kann ein Ubuntu-Desktop oder ein Windows 7/10 ausführen. Der Datenverkehr des Clients wird über den Ubuntu 20.04-Server geleitet.

WireGuard P2P VPN Topologie (WireGuard Ubuntu Server und Ubuntu/Android/Windows Clients)

Abbildung 1. WireGuard P2P VPN Topologie (WireGuard Ubuntu Server und Ubuntu/Android/Windows Clients)

Dieses Tutorial zeigt die Konfiguration von WireGuard VPN in einer Hub-and-Spoke-Topologie. Wenn Sie ein VPN möchten, das sowohl zuverlässig ist als auch mit erhöhten Anforderungen umgehen kann, sollten Sie die Installation und Einrichtung einer WireGuard Mesh VPN Infrastruktur in Betracht ziehen.

Diese Einrichtung kann Ihnen Schutz vor Man-in-the-Middle Angriffen bieten und Anonymität beim Surfen im Internet gewährleisten. Außerdem können Sie diese WireGuard-Konfiguration verwenden, um sicher von überall auf der Welt auf Ihr Unternehmensnetzwerk zuzugreifen.

tipp

Haben Sie versucht, Zenarmor auf Ihrem WireGuard VPN-Server zu installieren, um Ihr Netzwerk sicherer zu machen? Durch die Konfiguration der Zenarmor Free Edition und die Anwendung von Webfilterung und Anwendungssteuerung können Sie Sicherheitsbedrohungen, die von Ihrer WireGuard-Tunnel-Schnittstelle ausgehen, blockieren.

Die WireGuard-Konfiguration ist sehr einfach. Sie können den WireGuard-VPN-Tunnel einrichten, indem Sie einfach die folgenden 5 Hauptschritte befolgen:

  1. Laden Sie WireGuard für sowohl Server als auch Clients herunter und installieren Sie es.
  2. Erzeugen Sie kryptografische Schlüsselpaar (öffentliche und private Schlüssel) für sowohl Server als auch Clients.
  3. Konfigurieren Sie die WireGuard-Tunnel-Schnittstellen sowohl auf dem Server als auch auf den Clients.
  4. Konfigurieren Sie Firewall-Regeln auf Ihrem WireGuard VPN-Server
  5. Aktivieren Sie die WireGuard-Tunnel-Schnittstellen sowohl auf dem Server als auch auf den Clients.

Installation von WireGuard

Um dieser WireGuard-Einrichtungsanleitung zu folgen, benötigen Sie die unten aufgeführten Geräte:

  • Ubuntu 20.04 TLS Linux-Server, der als WireGuard VPN-Server konfiguriert wird.

  • Ubuntu Desktop oder Windows PC oder ein Android-Gerät werden als WireGuard VPN-Client konfiguriert.

warnung

Privilegierter Zugriff auf Ihr Linux-System als root oder über den sudo-Befehl.

Alle unten angegebenen Befehle sind mit root-Rechten auszuführen, entweder direkt als root-Benutzer oder durch Verwendung des sudo-Befehls.

Starten Sie noch heute kostenlos mit Zenarmor

WireGuard-Setup als VPN-Server auf Ubuntu

Bevor Sie mit der Installation von WireGuard beginnen, stellen Sie sicher, dass Ihr System auf dem neuesten Stand ist und die erforderlichen Pakete bereits installiert sind.

  1. Aktualisieren Sie Ihren lokalen Paketindex, indem Sie den folgenden Befehl ausführen:

    sudo apt update && sudo apt upgrade -y
  2. Installieren Sie IPTABLES, falls Ihr System es noch nicht hat.

    sudo apt install iptables -y

Installation von WireGuard auf Ubuntu

Ubuntu 20.04 wird mit dem Linux-Kernel 5.4 ausgeliefert, der ein integriertes WireGuard-Modul enthält. Daher können Sie WireGuard selbst und alle seine Abhängigkeiten ganz einfach installieren, indem Sie den folgenden Befehl ausführen:

sudo apt install wireguard wireguard-tools

Nachdem Sie WireGuard installiert haben, folgen Sie den untenstehenden Schritten, um Ihren Server weiter zu konfigurieren.

Generierung von privaten und öffentlichen Schlüsseln

Einer der Hauptvorteile von WireGuard ist, dass es auf modernsten kryptografischen Primitiven basiert. Es ermöglicht Ihnen einen sicheren VPN-Tunnel, indem es Ihre Verbindung mit einem Paar kryptografischer Schlüssel verschlüsselt. Jeder Peer muss seine eigenen privaten und öffentlichen Schlüssel haben, um eine sichere Kommunikation in beide Richtungen zu gewährleisten.Um WireGuard zu verwenden, muss jeder Server und Client sein eigenes Schlüsselpaar generieren und dann die öffentlichen Schlüssel austauschen.

Führen Sie den folgenden Befehl auf dem Ubuntu-Server aus, um ein öffentliches/privates Schlüsselpaar zu erstellen, das im Verzeichnis /etc/wireguard/ gespeichert wird.

$ wg genkey | sudo tee /etc/wireguard/server_private.key | wg pubkey | sudo tee /etc/wireguard/server_public.key

[sudo] password for alp:

hRhduFU4Jl2VlTNtYN4IXgqnw5DN6c4pKxAIvpr9+Do=

Dies wird sowohl die privaten als auch die öffentlichen Schlüssel im Verzeichnis /etc/wireguard speichern.

warnung

Der private Schlüssel sollte niemals mit jemandem geteilt werden und sollte immer sicher aufbewahrt werden.

info

Wireguard unterstützt auch einen vorab geteilten Schlüssel. Um das Sicherheitsniveau in Ihrem VPN-Tunnel zu erhöhen, können Sie diesen optionalen Schlüssel verwenden, der für jedes Peer-Paar einzigartig sein muss.

Sie können den Inhalt der WireGuard-Schlüsseldateien mit cat oder less anzeigen.

$ sudo cat /etc/wireguard/server_private.key

aIfECLKHoeCHsSr3qYfOgqm9BiNFEqQgYiDJQdUlJV8=
tipp

Bitte notieren Sie das Schlüsselpaar, das in den folgenden Schritten zur Aktualisierung der WireGuard-Konfigurationsdatei verwendet wird.

$ sudo cat /etc/wireguard/server_public.key

hRhduFU4Jl2VlTNtYN4IXgqnw5DN6c4pKxAIvpr9+Do=

Der nächste Schritt besteht darin, das Tunnelgerät zu konfigurieren, das den VPN-Verkehr leiten wird.

Generierung der WireGuard-Serverkonfigurationsdatei

Sie können das WireGuard-Tunnelgerät auf zwei verschiedene Arten konfigurieren:

  • Verwendung der ip- und wg-Befehle in der CLI

  • Erstellen der Konfigurationsdatei mit einem Texteditor

In diesem Leitfaden werden wir die letzte Methode verwenden.

Lassen Sie uns den WireGuard-Server konfigurieren, indem wir eine neue Konfigurationsdatei namens wg0.conf im Ordner /etc/wireguard erstellen und die unten angegebene Konfigurationszeile hinzufügen.

Öffnen Sie zunächst die Datei wg0.conf mit dem Nano-Editor.

sudo nano /etc/wireguard/wg0.conf

tipp

Sie können die WireGuard-Schnittstelle nach Belieben benennen. Aber es wird empfohlen, etwas wie wg0 zu verwenden.

Die folgende Konfiguration wird Ihren WireGuard-Server dazu bringen, Verbindungen auf 51820 zu akzeptieren und einem Client mit dem öffentlichen Schlüssel, der dem oben erstellten privaten Schlüssel entspricht, zu erlauben.

Zweitens, fügen Sie die folgenden Direktiven zur Konfigurationsdatei hinzu.

[Interface]

PrivateKey = <contents-of-server-privatekey>

Address = 10.10.10.1/24

PostUp = iptables -A FORWARD -i ens18 -o wg0 -j ACCEPT; iptables -A FORWARD -i wg0 -j ACCEPT; iptables -t nat -A POSTROUTING -o ens18 -j MASQUERADE; ip6tables -A FORWARD -i wg0 -j ACCEPT; ip6tables -t nat -A POSTROUTING -o ens18 -j MASQUERADE; ufw route allow in on wg0 out on ens18; ufw route allow in on ens18 out on wg0; ufw allow proto udp from any to any port 51820

PostDown = iptables -D FORWARD -i ens18 -o wg0 -j ACCEPT; iptables -D FORWARD -i wg0 -j ACCEPT; iptables -t nat -D POSTROUTING -o ens18 -j MASQUERADE; ip6tables -D FORWARD -i wg0 -j ACCEPT; ip6tables -t nat -D POSTROUTING -o ens18 -j MASQUERADE; ufw route delete allow in on wg0 out on ens18; ufw route delete allow in on ens18 out on wg0; ufw delete allow proto udp from any to any port 51820


ListenPort = 51820
  • PrivateKey: Der private Schlüssel des VPN-Servers, der in der Datei /etc/wireguard/server_private.key auf dem Server zu finden ist.

  • Address: definiert die privaten IPv4- und IPv6-Adressen für den WireGuard-Server. Jeder Peer im VPN-Netzwerk sollte eine eindeutige IP-Adresse haben.

  • ListenPort: gibt an, welchen Port WireGuard für eingehende Verbindungen verwenden wird. kann frei aus dem Bereich der hohen Ports ausgewählt werden. Wenn kein Port angegeben ist, ist es standardmäßig 51820/UDP.

  • PostUp und PostDown: definieren Schritte, die nach dem Einschalten oder Ausschalten der Schnittstelle ausgeführt werden sollen. In diesem Fall wird iptables verwendet, um Linux-IP-Masquerade-Regeln festzulegen, damit alle Clients die IPv4- und IPv6-Adresse des Servers teilen können. Die Regeln werden dann gelöscht, sobald der Tunnel heruntergefahren wird.

Dann Save und Close Sie die Datei.

Installieren Sie einen DNS-Resolver auf dem Server

Da wir den VPN-Server als DNS-Server für die Clients festlegen werden, müssen wir einen DNS-Resolver auf dem VPN-Server ausführen. Wir können den bind9 DNS-Server installieren.

sudo apt install bind9

Sobald es installiert ist, wird BIND automatisch gestartet. Sie können den Status mit folgendem Befehl überprüfen:

systemctl status bind9

Beispielausgabe:

? named.service - BIND Domain Name Server

Loaded: loaded (/lib/systemd/system/named.service; enabled; vendor preset: enabled)

Active: active (running) since Mon 2021-06-28 07:14:24 UTC; 16s ago

Docs: man:named(8)

Main PID: 1568 (named)

Tasks: 5 (limit: 10387)

Memory: 15.1M

CGroup: /system.slice/named.service

??1568 /usr/sbin/named -f -u bind


Jun 28 07:14:25 myfirsfw named[1568]: network unreachable resolving './DNSKEY/IN': 2001:500:2::c#53

Jun 28 07:14:25 myfirsfw named[1568]: network unreachable resolving './NS/IN': 2001:500:2::c#53

Jun 28 07:14:25 myfirsfw named[1568]: network unreachable resolving './DNSKEY/IN': 2001:500:1::53#53

Jun 28 07:14:25 myfirsfw named[1568]: network unreachable resolving './NS/IN': 2001:500:1::53#53

Jun 28 07:14:25 myfirsfw named[1568]: network unreachable resolving './DNSKEY/IN': 2001:500:200::b#53

Jun 28 07:14:25 myfirsfw named[1568]: network unreachable resolving './NS/IN': 2001:500:200::b#53

Jun 28 07:14:25 myfirsfw named[1568]: network unreachable resolving './DNSKEY/IN': 2001:500:12::d0d#53

Jun 28 07:14:25 myfirsfw named[1568]: network unreachable resolving './DNSKEY/IN': 2001:7fd::1#53

Jun 28 07:14:25 myfirsfw named[1568]: managed-keys-zone: Initializing automatic trust anchor management for zone '.'; DNSKEY ID 20326 is>

Jun 28 07:14:25 myfirsfw named[1568]: resolver priming query complete

Wenn es nicht läuft, können Sie es mit den folgenden Befehlen starten:

sudo systemctl start bind9

Bearbeiten Sie die Konfigurationsdatei des BIND DNS-Servers.

sudo nano /etc/bind/named.conf.options

Fügen Sie die folgende Zeile hinzu, um VPN-Clients das Senden von rekursiven DNS-Abfragen zu ermöglichen.

allow-recursion { 127.0.0.1; 10.10.10.0/24; };

Erlauben von VPN-Clients, rekursive DNS-Abfragen zu senden

Abbildung 2. Erlauben von VPN-Clients, rekursive DNS-Abfragen zu senden

Save und Close Sie die Datei.

Starten Sie BIND9 neu, damit die Änderungen wirksam werden.

sudo systemctl restart bind9

So richten Sie WireGuard-Firewall-Regeln auf einem Ubuntu-Server ein

Sie sollten auch eine Firewall konfigurieren, um WireGuard-Clients den Zugriff auf Ihren WireGuard-Server und andere gewünschte Dienste wie DNS und SSH zu ermöglichen. Die Konfiguration einer Firewall wird unerwünschte Verbindungen blockieren und Ihren Server sichern. Sie können die folgenden Schritte befolgen:

  1. Installieren Sie die ufw, die Uncomplicated Firewall, mit dem folgenden Befehl.

    sudo apt install ufw
  2. Fügen Sie die folgenden Regeln hinzu, um WireGuard-Verbindungen zu ermöglichen.

    sudo ufw allow 51820/udp
  3. Fügen Sie die folgenden Regeln hinzu, um VPN-Clients den Zugriff auf den DNS-Dienst zu ermöglichen.

    sudo ufw allow 53/tcp

    sudo ufw allow 53/udp
  4. Fügen Sie die folgenden Regeln hinzu, um SSH-Verbindungen zuzulassen. (Dieser Schritt ist optional.) Sie können auch andere Verbindungen zulassen, die Sie benötigen, wie z.B. https/443.

    sudo ufw allow 22
  5. Aktivieren Sie die Firewall mit dem nächsten Befehl.

    sudo ufw enable
  6. Bestätigen Sie den Befehl, wenn Sie dazu aufgefordert werden.

    Command may disrupt existing ssh connections. Proceed with operation (y|n)? Y

Die Firewall ist aktiv und beim Systemstart aktiviert.

  1. Danach verwenden Sie den folgenden Befehl, um die aktiven Firewall-Regeln zu überprüfen.

    sudo ufw status verbose

    Status: active

    Logging: on (low)

    Default: deny (incoming), allow (outgoing), disabled (routed)

    New profiles: skip
    To Action From

    -- ------ ----

    51820/udp ALLOW IN Anywhere

    53/tcp ALLOW IN Anywhere

    53/udp ALLOW IN Anywhere

    22/tcp ALLOW IN Anywhere

    51820/udp (v6) ALLOW IN Anywhere (v6)

    53/tcp (v6) ALLOW IN Anywhere (v6)

    53/udp (v6) ALLOW IN Anywhere (v6)

    22/tcp (v6) ALLOW IN Anywhere (v6)

Herzlichen Glückwunsch. Der Ubuntu-Peer, der als Server fungieren wird, wurde konfiguriert.

Aktivierung des Zugriffs für Clients auf das Internet/LAN über den WireGuard VPN-Server

Indem wir den Clients den Zugriff auf den WireGuard-Port ermöglichen, haben wir ein Peer-to-Peer-VPN-Netzwerk für unseren Ubuntu-Server und -Client eingerichtet und konfiguriert. Sie möchten jedoch möglicherweise allen VPN-Clients über den WireGuard-Server Zugang zum Internet oder zu Ihrem Unternehmensnetzwerk/LAN gewähren. Zu diesen Zwecken müssen Sie die Firewall-Regeln konfigurieren, einschließlich IP-Weiterleitung und NAT.

IP-Weiterleitung

Damit der VPN-Server Pakete zwischen VPN-Clients und dem Internet/LAN weiterleiten kann, müssen Sie IP-Forwarding auf dem WireGuard-Server aktivieren. Sie können den unten aufgeführten Anweisungen folgen:

  1. Öffnen Sie die Systemvariablen-Datei zur Bearbeitung.

    sudo nano /etc/sysctl.conf
  2. Fügen Sie die folgende Zeile hinzu oder kommentieren Sie sie aus, indem Sie das # am Anfang der Zeile entfernen.

    net.ipv4.ip_forward=1
  3. Save Sie die Datei und beenden Sie den Editor.

  4. Öffnen Sie /etc/ufw/sysctl.conf und entfernen Sie das Kommentarzeichen bei diesen Zeilen:

    net/ipv4/ip_forward=1

    net/ipv6/conf/default/forwarding=1

    net/ipv6/conf/all/forwarding=1
  5. Wenden Sie die Änderungen mit dem folgenden Befehl an. Die -p Option lädt die sysctl-Einstellungen aus der Datei /etc/sysctl.conf. Dieser Befehl wird unsere Änderungen nach einem Systemneustart beibehalten.

    sudo sysctl -p

IP-Masquerading auf dem Server konfigurieren

Sie müssen IP-Masquerading in der Server-Firewall einrichten, damit der Server zu einem virtuellen Router für VPN-Clients wird. Die PostUP- und PostDown-Definitionen in der oben genannten WireGuard-Konfigurationsdatei (/etc/wireguard/wg0.conf) aktivieren automatisch die UFW-Konfiguration, wenn Sie die WireGuard-Schnittstelle aktivieren. So sind Ihre VPN-Clients vor der Außenwelt verborgen, und jedes Gerät im Internet kann nur die WAN-IP Ihres WireGuard-VPN-Servers sehen.

Starten des WireGuard-Servers und Aktivieren beim Booten

Wir sind bereit, den Server zu starten, jetzt wo wir die Konfiguration abgeschlossen haben. WireGuard hat einen praktischen Wrapper namens wg-quick, der verwendet werden kann, um neue Schnittstellen zu starten, ohne in die Konfigurationsdetails eintauchen zu müssen. Wie Sie die WireGuard-Schnittstelle mit dem wg-quick-Tool verwalten können, wird unten gezeigt:

Um den WireGuard-Dienst zu starten und die WireGuard-Schnittstelle (wg0) hochzufahren, führen Sie den folgenden Befehl auf dem Server aus:

sudo wg-quick up wg0

Dies lädt die Konfigurationsdatei /etc/wireguard/wg0.conf. und Sie sollten eine Ausgabe wie unten sehen, nachdem Sie die Schnittstelle erfolgreich gestartet haben:

[#] ip link add wg0 type wireguard

[#] wg setconf wg0 /dev/fd/63

[#] ip -4 address add 10.10.10.1/24 dev wg0

[#] ip link set mtu 1420 up dev wg0

[#] iptables -A FORWARD -i ens18 -o wg0 -j ACCEPT; iptables -A FORWARD -i wg0 -j ACCEPT; iptables -t nat -A POSTROUTING -o ens18 -j MASQUERADE; ip6tables -A FORWARD -i wg0 -j ACCEPT; ip6tables -t nat -A POSTROUTING -o ens18 -j MASQUERADE; ufw route allow in on wg0 out on ens18; ufw route allow in on ens18 out on wg0; ufw allow proto udp from any to any port 51820

Rule added

Rule added (v6)

Um es zu stoppen, lauf.

sudo wg-quick down wg0

Sie können auch den systemd-Dienst verwenden, um WireGuard zu starten.

sudo systemctl start [email protected]

Sie können den Zustand und die Konfiguration von WireGuard mit den folgenden Befehlen überprüfen. Sein Status sollte aktiv sein. (exited).

sudo wg show wg0

interface: wg0

public key: hRhduFU4Jl2VlTNtYN4IXgqnw5DN6c4pKxAIvpr9+Do=

private key: (hidden)

listening port: 51820

Sie können auch ip a show wg0 ausführen, um den Status der Schnittstelle zu überprüfen:

ip a show wg0



6: wg0: <POINTOPOINT,NOARP,UP,LOWER_UP> mtu 1420 qdisc noqueue state UNKNOWN group default qlen 1000

link/none

inet 10.10.10.1/24 scope global wg0

valid_lft forever preferred_lft forever

Um die WireGuard-Schnittstelle beim Systemstart automatisch zu aktivieren, führen Sie den folgenden Befehl aus:

sudo systemctl enable wg-quick@wg0

Created symlink /etc/systemd/system/multi-user.target.wants/wg-quick@wg0.service ? /lib/systemd/system/wg-quick@.service.

Jetzt, da der WireGuard-Server läuft, ist er bereit, Client-Verbindungen zu akzeptieren.

WireGuard-Setup als VPN-Client auf Ubuntu Desktop

Sobald Ihr WireGuard-Server läuft, müssen Sie Ihr Client-Gerät konfigurieren. Sie bieten Software für die meisten Betriebssysteme an, um eine Verbindung zu Ihren Windows-, Linux- oder macOS- und Android- oder iOS-Geräten herzustellen.

Bevor Sie mit der Installation von WireGuard auf Ihrem Ubuntu-Desktop beginnen, stellen Sie sicher, dass Ihr System auf dem neuesten Stand ist und die erforderlichen Pakete bereits installiert sind.

Aktualisieren Sie Ihren lokalen Paketindex, indem Sie den folgenden Befehl ausführen:

sudo apt update && sudo apt upgrade -y

Beachten Sie, dass Sie auch das openresolv-Paket auf dem Client installieren müssen, um den DNS-Server zu konfigurieren.

sudo apt install openresolv

WireGuard-Installation auf Ubuntu

Das Verfahren zur Einrichtung eines WireGuard-Clients auf Ubuntu Desktop ist nahezu identisch mit dem zur Installation des Servers.

Sie können WireGuard selbst und alle seine Abhängigkeiten ganz einfach installieren, indem Sie den folgenden Befehl ausführen:

sudo apt install wireguard wireguard-tools

Nachdem Sie WireGuard installiert haben, folgen Sie den untenstehenden Schritten, um Ihren Server weiter zu konfigurieren.

Generieren Sie ein Public/Private Keypair für den Client

Um ein öffentliches/privates Schlüsselpaar zu erstellen, führen Sie den folgenden Befehl auf dem VPN-Client aus.

wg genkey | sudo tee /etc/wireguard/client_private.key | wg pubkey | sudo tee /etc/wireguard/client_public.key

Erstellen Sie eine WireGuard-Client-Konfigurationsdatei auf Ubuntu

Verwenden Sie einen textbasierten Editor wie Nano, um eine WireGuard-Konfigurationsdatei auf Ihrem Ubuntu-VPN-Client zu erstellen. wg0 wird der Name der WireGuard-Netzwerkschnittstelle auf dem Client sein.

sudo nano /etc/wireguard/wg0.conf

Kopieren Sie den folgenden Text und fügen Sie ihn in Ihre Konfigurationsdatei ein. Sie müssen Ihren eigenen privaten Client-Schlüssel und den öffentlichen Server-Schlüssel verwenden.

[Interface]

Address = 10.10.10.2/24

DNS = 10.10.10.1

PrivateKey = MCzL/mO/L6Ak8HRp16aWPwefXpg+RoukBHG/LwiKcks=

[Peer]

PublicKey = hRhduFU4Jl2VlTNtYN4IXgqnw5DN6c4pKxAIvpr9+Do=

AllowedIPs = 0.0.0.0/0

Endpoint = 22.33.44.55:51820

PersistentKeepalive = 25

Wo:

  • Adresse: Geben Sie die private IP-Adresse des VPN-Clients an.

  • DNS: Geben Sie 10.10.10.1 (VPN-Server) als den DNS-Server an. Es wird über den Befehl resolvconf konfiguriert. Zur Redundanz können Sie auch mehrere DNS-Server angeben, wie zum Beispiel: DNS = 10.10.10.1 8.8.8.8

  • PrivateKey: Der private Schlüssel des Clients, der in der Datei /etc/wireguard/client_private.key auf dem Client-Computer zu finden ist.

  • PublicKey: Der öffentliche Schlüssel des Servers, der in der Datei /etc/wireguard/server_public.key auf dem Server zu finden ist.

  • AllowedIPs: 0.0.0.0/0 repräsentiert das gesamte Internet, was bedeutet, dass der gesamte Verkehr ins Internet über das VPN geleitet werden sollte. Wenn Sie WireGuard nur für bestimmte Ziele verwenden möchten, geben Sie deren IP-Adressbereiche in der Liste durch Kommas getrennt an.

  • Endpoint: Die öffentliche/WAN-IP-Adresse und Portnummer des VPN-Servers. Ersetzen Sie 22.33.44.55 durch die tatsächliche öffentliche IP-Adresse Ihres Servers.

  • PersistentKeepalive: Senden Sie alle 25 Sekunden ein authentifiziertes leeres Paket an den Peer, um die Verbindung aufrechtzuerhalten. Wenn PersistentKeepalive nicht aktiviert ist, könnte der VPN-Server möglicherweise den VPN-Client nicht anpingen.

Save und Close Sie die Datei.

Wenn Sie zusätzliche Clients konfigurieren müssen, wiederholen Sie einfach die gleichen Schritte mit einer anderen privaten IP-Adresse.

Hinzufügen des VPN-Client-Peers zum Server

Um den öffentlichen Schlüssel und die IP-Adresse des Clients zum Server hinzuzufügen, können Sie entweder:

  • führen Sie den folgenden Befehl auf dem Ubuntu-Server aus:

    sudo wg set wg0 peer CLIENT_PUBLIC_KEY allowed-ips 10.10.10.2
  • Or add the following lines to the /etc/wireguard/wg0.conf file

    [Peer]

    PublicKey = <contents-of-client-publickey>

    AllowedIPs = 10.10.10.2/32
    • PublicKey: Der öffentliche Schlüssel des VPN-Clients, der in der Datei /etc/wireguard/client_public.key auf dem Client-Computer zu finden ist.

    • AllowedIPs: IP-Adressen, die der VPN-Client verwenden darf. In diesem Beispiel kann der Client nur die IP-Adresse 10.10.10.2 innerhalb des VPN-Tunnels verwenden.und speichern Sie die Datei.

Starten Sie als Nächstes den Dienst erneut, führen Sie aus:

sudo systemctl start wg-quick@wg0

Sobald dies erledigt ist, gehen Sie zurück zur Client-Maschine und starten Sie die Tunneling-Schnittstelle.

Starten des WireGuard-Dienstes auf dem Client

Wir sind bereit, den Dienst zu starten, jetzt wo wir die Konfiguration abgeschlossen haben. Die Befehlszeilentools wg und wg-quick ermöglichen es Ihnen, die WireGuard-Schnittstellen zu konfigurieren und zu verwalten.

Führen Sie den folgenden Befehl aus, um die Schnittstelle zu aktivieren und die Verbindung zu starten:

sudo wg-quick up wg0

Sie sollten die Ausgabe ähnlich der unten angegebenen sehen:

[#] ip link add wg0 type wireguard

[#] wg setconf wg0 /dev/fd/63

[#] ip -4 address add 10.10.10.2/24 dev wg0

[#] ip link set mtu 1420 up dev wg0

[#] resolvconf -a wg0 -m 0 -x

[#] wg set wg0 fwmark 51820

[#] ip -4 route add 0.0.0.0/0 dev wg0 table 51820

[#] ip -4 rule add not fwmark 51820 table 51820

[#] ip -4 rule add table main suppress_prefixlength 0

[#] sysctl -q net.ipv4.conf.all.src_valid_mark=1

[#] iptables-restore -n

Sie können auch den Systembefehl verwenden, um WireGuard als Dienst zu starten.

sudo systemctl start wg-quick@wg0

Sie können den automatischen Start beim Systemstart aktivieren.

sudo systemctl enable [email protected]

Sie können den Status überprüfen:

systemctl status [email protected]

Jetzt sollten Sie mit dem Ubuntu-Server verbunden sein, und der Datenverkehr von Ihrem Client-Gerät sollte über ihn geleitet werden. Sie können die Verbindung überprüfen mit:

sudo wg

interface: wg0

public key: LxHDQokGy422z1byrSC6sO7HRo13KudzgE4w/ycxpCc=

private key: (hidden)

listening port: 51229

fwmark: 0xca6c



peer: hRhduFU4Jl2VlTNtYN4IXgqnw5DN6c4pKxAIvpr9+Do=

endpoint: Server-WAN-IP:51820

allowed ips: 0.0.0.0/0

latest handshake: 2 minutes, 16 seconds ago

transfer: 248.02 KiB received, 189.02 KiB sent

persistent keepalive: every 25 seconds

Wenn Sie sich trennen möchten, verwenden Sie einen der folgenden Befehle, je nachdem, welche Methode Sie zum Starten verwendet haben.

sudo wg-quick down wg0

oder

sudo systemctl stop wg-quick@wg0

WireGuard wird sich dann vom Server trennen und die zugehörigen Netzwerkeinstellungen entfernen.

Hinzufügen weiterer VPN-Clients

Wenn Sie das WireGuard-VPN auch auf anderen Geräten verwenden möchten, können Sie weitere Clients zu Ihrem Server hinzufügen. Das Hinzufügen von Clients ist wirklich einfach und unkompliziert.

Zuerst installieren Sie WireGuard auf Ihren neuen Client-Geräten wie zuvor und erstellen Sie ein einzigartiges privates/öffentliches Schlüsselpaar für jeden Client.

WireGuard ist so konzipiert, dass eine IP-Adresse mit einem VPN-Client verknüpft wird. Um weitere VPN-Clients hinzuzufügen, müssen Sie sie in der Konfigurationsdatei des Servers erstellen.

Dann bearbeiten Sie die wg0.conf-Datei auf Ihrem WireGuard-Server.

sudo nano /etc/wireguard/wg0.conf

Fügen Sie den folgenden Eintrag am Ende der Datei hinzu, um die öffentlichen Schlüssel der Clients einzuschließen und die IP-Adressen für jeden Client festzulegen.

[Peer]

PublicKey = <content-of-client2-publickey>

AllowedIPs = 10.10.10.2/32

[Peer]

PublicKey = <content-of-client3-publickey>

AllowedIPs = 10.10.10.3/32

[Peer]

PublicKey = <content-of-client4-publickey>

AllowedIPs = 10.10.10.4/32

Fügen Sie den folgenden Eintrag am Ende der Datei hinzu, um die öffentlichen Schlüssel der Clients einzuschließen und die IP-Adressen für jeden Client festzulegen.

sudo systemctl restart wg-quick@wg0

Jeder VPN-Client wird eine statische private IP-Adresse haben. (10.10.10.2, 10.10.10.3, 10.10.10.4, etc).

Dann fügen Sie wie gewohnt die WireGuard-Konfiguration auf jedem VPN-Client hinzu.

Alles erledigt! Sie können sich dann mit den neuen Clients verbinden, wie Sie es zuvor getan haben.

WireGuard VPN-Client-Setup unter Windows

WireGuard für Windows unterstützt Windows 7, 8, 8.1, 10, 2012, 2016 und 2019 und ist in einer 64-Bit- und einer 32-Bit-Version erhältlich. In diesem Abschnitt werden wir erläutern, wie man den WireGuard Windows-Client installiert und sich über VPN mit einem WireGuard Virtual Private Server (VPS) verbindet.

Um WireGuard als VPN-Client auf einer Windows-Plattform zu installieren und zu konfigurieren, können Sie die folgenden Anweisungen befolgen:

Windows WireGuard-Client herunterladen und installieren

Laden Sie den Windows-Installer von der WireGuard-Website herunter und installieren Sie ihn. Dies wählt die neueste Version für Ihre Hardware aus, lädt sie herunter und installiert sie.

Herunterladen des WireGuard Windows-Installers

Abbildung 3. Herunterladen des WireGuard Windows-Installers

Nach der Installation sollten Sie das WireGuard-Symbol im Benachrichtigungsbereich der Taskleiste sehen.

WireGuard-Symbol in der Taskleiste

Abbildung 4. WireGuard-Symbol in der Taskleiste

Konfiguration des Windows WireGuard-Clients

Starten Sie die WireGuard-Anwendung und klicken Sie auf den nach unten zeigenden Pfeil neben der Schaltfläche Add Tunnel im Tab Tunnels.

Konfiguration von WireGuard auf dem Windows-Client

Abbildung 5. Konfiguration von WireGuard auf Windows-Client

Klicken Sie auf Add empty tunnel, wie im Bild unten gezeigt:

Leeren Tunnel hinzufügen

Abbildung 6. Leeren Tunnel hinzufügen

Dies wird automatisch ein öffentliches/privates Schlüsselpaar erstellen und auf dem Bildschirm anzeigen.

Erstellen eines neuen WireGuard-Tunnels auf einem Windows-Client

Abbildung 7. Erstellen eines neuen WireGuard-Tunnels auf dem Windows-Client

Geben Sie einen Namen mit alphanumerischen Zeichen (keine Leerzeichen oder Satzzeichen) für den Tunnel ein und bearbeiten Sie die Konfiguration wie folgt:

[Interface]

PrivateKey = CLIENT_PRIVATE_KEY

Address = 10.10.10.3/24

DNS = 10.10.10.1

[Peer]

PublicKey = SERVER_PUBLIC_KEY

Endpoint = SERVER_IP_ADDRESS:51820

AllowedIPs = 0.0.0.0/0

Erklärungen der Felder im Abschnitt der Schnittstelle sind unten angegeben:

  • PrivateKey: Privater Schlüssel dieses Clients

  • Adresse: VPN-IP-Adresse dieses Clients. Es muss unter allen Clients einzigartig sein.

  • DNS: IP-Adresse eines DNS-Servers. In diesem Fall verwende ich den DNS-Server, der auf dem WireGuard-Server läuft.

Erklärungen der Felder im Peer-Bereich sind unten angegeben:

  • PublicKey: Der öffentliche Schlüssel des Ubuntu WireGuard-Servers (/etc/wireguard/publickey-Datei).

  • Endpunkt: Die öffentliche/echte IP-Adresse des Ubuntu-Servers, gefolgt von einem Doppelpunkt und dem WireGuard-Port (51820).

  • AllowedIPs: 0.0.0.0/0 : Gibt an, welche IP-Adressen über das VPN geroutet werden sollen. 0.0.0.0/0 ist eine Alleskonfiguration und leitet alles über das VPN.

Option "Nicht getunnelten Verkehr blockieren" (Kill Switch)

Im Fenster "Tunnel bearbeiten" gibt es eine Option "Nicht getunnelten Verkehr blockieren". Sie können diese Option aktivieren, wenn Ihre Konfiguration genau einen [Peer]-Abschnitt hat und AllowedIPs auf eine Catch-All-Adresse eingestellt ist.

Wenn die Option aktiviert ist, fügt der WireGuard-Client Windows-Firewall-Regeln hinzu, um allen Verkehr zu blockieren, der weder zur noch von der Tunnel-Schnittstelle geht. Damit es verhindert, dass versehentlich IP-Pakete außerhalb des VPN gesendet werden.

WireGuard Tunnel-Konfiguration auf Windows-Client

Abbildung 8. WireGuard-Tunnelkonfiguration auf Windows-Client

Sobald Sie fertig sind, klicken Sie auf die Schaltfläche Save.

Fügen Sie den Client-Peer zum Server hinzu

Um den öffentlichen Schlüssel und die IP-Adresse des Clients zum Server hinzuzufügen, können Sie entweder:

  • Führen Sie den folgenden Befehl auf dem Ubuntu-Server aus:
sudo wg set wg0 peer CLIENT_PUBLIC_KEY allowed-ips 10.10.10.3
  • Oder fügen Sie die folgenden Zeilen zur Datei /etc/wireguard/wg0.conf hinzu:
[Peer]

PublicKey = <contents-of-client-publickey>

AllowedIPs = 10.10.10.3/32

Save und schließen Sie die Datei. Starten Sie als Nächstes den Dienst erneut, führen Sie aus:

sudo systemctl start wg-quick@wg0

Sie können den Status der wg0-Schnittstelle überprüfen:

sudo wg

interface: wg0

public key: hRhduFU4Jl2VlTNtYN4IXgqnw5DN6c4pKxAIvpr9+Do=

private key: (hidden)

listening port: 51820

peer: LxHDQokGy422z1byrSC6sO7HRo13KudzgE4w/ycxpCc=

allowed ips: 10.10.10.2/32


peer: U14mlsR8wV23KO7vxqhiy4gcsqzF6i1nrpba1M4X4iw=

allowed ips: 10.10.10.3/32

Kehr zurück zur Windows-Client-Maschine und aktiviere die Tunneling-Schnittstelle.

Aktivieren/Deaktivieren der WireGuard-Tunnel-Schnittstelle auf dem Windows-Client

Nach der Installation und Konfiguration von WireGuard auf dem Windows-Client klicken Sie auf die Schaltfläche Activate. Sobald die Peers verbunden sind, ändert sich der Tunnelstatus auf Aktiv:

Aktivierung des WireGuard-Tunnels auf dem Windows-Client

Abbildung 9. Aktivierung des WireGuard-Tunnels auf dem Windows-Client

Deaktivierung des WireGuard-Tunnels auf dem Windows-Client

Abbildung 10. Deaktivierung des WireGuard-Tunnels auf dem Windows-Client

Um die VPN-Verbindung zu schließen, klicken Sie auf die Schaltfläche Deaktivieren.

Installation von WireGuard als Client auf einem Android-Gerät

Bevor Sie den WireGuard-Client auf Ihrem Android-Gerät installieren und konfigurieren, können Sie Client-Schlüsselpaar und QR-Code für Android auf Ihrem Ubuntu WireGuard-Server generieren. Damit Sie die WireGuard-Anwendung auf Ihrem mobilen Gerät einfach konfigurieren können, um sich mit dem VPN zu verbinden.

QR-Code generieren

Um den QR-Code zu generieren, benötigen Sie das qrencode-Paket, das auf Ihrem Ubuntu 20.04 TLS WireGuard-Server installiert ist. Um das qrencode-Paket zu installieren, geben Sie den folgenden Befehl auf Ihrem VPN-Server ein:

sudo apt install qrencode

Erstellen von Client-Privat-/Öffentlichkeits-Schlüsselpaaren

Im Gegensatz zu Windows- und Ubuntu/Linux-WireGuard-Clients werden wir die Schlüsselpaar auf dem Ubuntu 20.04 TLS WireGuard-Server für unser Android-Gerät generieren. Um die privaten/öffentlichen Schlüsselpaaren für den Client zu erstellen, können Sie die folgenden Schritte ausführen:

  1. Erstellen Sie ein Verzeichnis namens clients unter /etc/wireguard.

    sudo mkdir /etc/wireguard/clients
  2. Erstellen Sie ein Schlüsselpaar mit dem Namen `android

    wg genkey | sudo tee /etc/wireguard/clients/android_private.key | wg pubkey | sudo tee /etc/wireguard/clients/android_public.key
    ```
    Dies wird die Client-Schlüsselpaar für Ihr Android im Verzeichnis `/etc/wireguard/clients` erstellen.


  3. Sie können die Schlüsselpaaren mit cat anzeigen.

    sudo cat /etc/wireguard/clients/android_private.key

    eDUqYVRI0BmCBkAjER2wmgVeqUaGW5Ihnh2meVbKDGg=

    sudo cat /etc/wireguard/clients/android_public.key1O4+y9FsExnNlqbG4qR6Tdf3JQJx9200uF92TWF03gw=

Erstellung der Client-Konfigurationsdatei Erstellen der Client-Konfigurationsdatei

Sie müssen dann eine Client-Konfigurationsdatei erstellen, die in einen QR-Code codiert wird.

  1. Erstellen Sie eine Client-Konfigurationsdatei mit nano.

    sudo nano /etc/wireguard/clients/android.conf
  2. Kopieren Sie die folgenden Zeilen in die WireGuard-Client-Konfigurationsdatei.

    [Interface]

    PrivateKey = eDUqYVRI0BmCBkAjER2wmgVeqUaGW5Ihnh2meVbKDGg=

    Address = 10.10.10.4/24

    DNS = 10.10.10.1, 8.8.8.8

    [Peer]

    PublicKey = YOUR_SERVER_PUBLIC_KEY

    AllowedIPs = 0.0.0.0/0

    Endpoint = YOUR_SERVER_WAN_IP:51820

    Erklärungen der Felder im Abschnitt Benutzeroberfläche sind unten aufgeführt:

    • PrivateKey: Privater Schlüssel dieses Clients (er befindet sich in /etc/wireguard/clients/android_private.key)

    • Adresse: IP-Adresse dieses Clients. Es muss unter allen Clients einzigartig sein.

    • DNS: IP-Adresse eines DNS-Servers. In diesem Fall verwende ich den DNS-Server, der auf dem WireGuard-Server läuft.

    Erklärungen der Felder im Abschnitt Benutzeroberfläche sind unten aufgeführt:

    • PublicKey: Der öffentliche Schlüssel des Ubuntu WireGuard-Servers (/etc/wireguard/publickey-Datei).

    • Endpunkt: Die öffentliche/echte IP-Adresse des Ubuntu-Servers, gefolgt von einem Doppelpunkt und dem WireGuard-Port (51820).

    • AllowedIPs: 0.0.0.0/0 : Gibt an, welche IP-Adressen über das VPN geroutet werden sollen. 0.0.0.0/0 ist eine Alleskonfiguration und leitet alles über das VPN.

QR-Code generieren

Sie können jetzt mit dem folgenden Befehl als root einen QR-Code generieren:

qrencode -t ansiutf8 < /etc/wireguard/clients/android.conf

Es wird ein QR-Code-Bild wie dieses generieren:

WireGuard QR-Code für Android VPN-Client

Abbildung 11. WireGuard QR-Code für Android VPN-Client

Sie können einen Screenshot machen und ihn sicher an Ihren Android-Client senden.

Fügen Sie den Client-Peer zum Server hinzu

Um den öffentlichen Schlüssel und die IP-Adresse des Clients zum Server hinzuzufügen, können Sie entweder:

  • Führen Sie den folgenden Befehl auf dem Ubuntu-Server aus:
sudo wg set wg0 peer CLIENT_PUBLIC_KEY allowed-ips 10.10.10.4
  • Oder fügen Sie die folgenden Zeilen zur Datei /etc/wireguard/wg0.conf hinzu
[Peer]

PublicKey = <contents-of-client-publickey>

AllowedIPs = 10.10.10.4/32

Save und schließen Sie die Datei.

Starten Sie als Nächstes den Dienst erneut, führen Sie aus:

sudo systemctl start wg-quick@wg0

Sie können den Status der wg-Schnittstelle überprüfen.

sudo wg

interface: wg0

public key: hRhduFU4Jl2VlTNtYN4IXgqnw5DN6c4pKxAIvpr9+Do=

private key: (hidden)

listening port: 51820

peer: LxHDQokGy422z1byrSC6sO7HRo13KudzgE4w/ycxpCc=

allowed ips: 10.10.10.2/32

peer: U14mlsR8wV23KO7vxqhiy4gcsqzF6i1nrpba1M4X4iw=

allowed ips: 10.10.10.3/32

peer: 1O4+y9FsExnNlqbG4qR6Tdf3JQJx9200uF92TWF03gw=

allowed ips: 10.10.10.4/32

WireGuard-Anwendung auf Android-Gerät herunterladen und installieren

Sie können die offizielle Anwendung aus dem Google Play Store auf Ihrem Android-Gerät herunterladen und installieren.

Installation der WireGuard Android-Anwendung aus dem Playstore

Abbildung 12. Installation der WireGuard Android-Anwendung aus dem Playstore

Konfiguration des WireGuard-Clients auf Android

Sobald die WireGuard-Anwendung installiert ist, müssen wir eine neue Konfigurationsdatei für den VPN-Tunnel hinzufügen. Klicken Sie auf die blaue Schaltfläche mit dem +-Symbol.

Hinzufügen eines WireGuard-Tunnels für den Android-Client

Abbildung 13. Hinzufügen eines WireGuard-Tunnels für den Android-Client

Dies öffnet eine neue Ansicht auf Ihrem Gerät, um den Tunnel zu konfigurieren. Tippen Sie auf Von QR-Code scannen.

Tunnelkonfiguration durch Scannen des QR-Codes importieren

Abbildung 14. Importieren der Tunnelkonfiguration durch Scannen des QR-Codes

Nachdem Sie der Kamera die Erlaubnis erteilt haben, können Sie Ihren QR-Code scannen.

WireGuard die Erlaubnis erteilen

Abbildung 15. WireGuard die Erlaubnis erteilen

Geben Sie den Name des VPN-Tunnels ein und klicken Sie auf die Schaltfläche Create Tunnel. Dies wird die WireGuard-Client-Konfiguration aus dem QR-Code importieren.

WireGuard die Erlaubnis erteilen

Abbildung 16. Benennung des WireGuard-Tunnels auf dem Android-Client

Sie werden aufgefordert, die Verbindungsanfrage zu bestätigen, tippen Sie auf OK.

WireGuard-Verbindungsanfrage auf Android-Client

Abbildung 17. WireGuard-Verbindungsanfrage auf Android-Client

Verbinden/Trennen des WireGuard Android-Clients

Sie können Ihr Android-Gerät ganz einfach mit dem VPN-Server verbinden, indem Sie die WireGuard-Anwendung starten und sie einschalten.

Aktivieren/Deaktivieren des WireGuard-Tunnels auf dem Android-Client

Abbildung 18. Aktivierung/Deaktivierung des WireGuard-Tunnels auf dem Android-Client

Um die Verbindung zum WireGuard-VPN-Tunnel zu trennen, schalten Sie den Kippschalter neben der VPN-Verbindung aus.

Testen der WireGuard-Verbindung

Sie können Ihre WireGuard-Verbindung testen, indem Sie die folgenden Anweisungen befolgen:

1. Ping-Test

Sie sollten Ihren WireGuard-Server vom Client aus anpingen und umgekehrt erfolgreich:

ping 10.10.10.1
sudo wg

Die letzten beiden Zeilen der Ausgabe des Ausführens des wg-Befehls sollten ähnlich sein wie:

latest handshake: 1 minute, 17 seconds ago

transfer: 98.86 KiB received, 43.08 KiB sent

Dies zeigt an, dass Sie jetzt eine private Verbindung zwischen dem Server und dem Client haben. Sie können auch den Client vom Server aus anpingen, um zu überprüfen, ob die Verbindung in beide Richtungen funktioniert.

2. IP-Kontrolle

Auf Ihrem Client-Computer gehen Sie auf diese Website https://www.whatismyip.com, um Ihre öffentliche IP-Adresse zu überprüfen. Wenn Ihr WireGuard-Tunnel gut funktioniert, sollten Sie die öffentliche IP-Adresse Ihres VPN-Servers anstelle der öffentlichen IP-Adresse Ihres Client-Computers im Browser sehen.

3. Traceroute-Test

Sie sollten die IP-Adresse des WireGuard-Server-VPN im Ausgabeergebnis des Traceroute-Befehls sehen:

traceroute 8.8.8.8

1 10.10.10.1 (10.10.10.1) 0.391 ms 0.348 ms 0.349 ms

2 _gateway (192.168.0.1) 0.641 ms 0.606 ms 0.625 ms

3 * * *

15 * * *

16 142.250.212.20 (142.250.212.20) 27.320 ms 74.125.37.238 (74.125.37.238) 29.852 ms 216.239.49.198 (216.239.49.198) 30.107 ms

17 142.251.52.83 (142.251.52.83) 34.252 ms 34.216 ms 38.622 ms

18 sof02s44-in-f4.1e100.net (142.250.187.100) 38.637 ms 38.542 ms 38.593 ms

4. DNS-Dienst-Test

Ihre DNS-Abfragen sollten von Ihrem WireGuard-VPN-Server beantwortet werden.

dig -p 53 www.google.com 10.10.10.1


; <<>> DiG 9.16.1-Ubuntu <<>> -p 53 www.google.com 10.10.10.1

;; global options: +cmd

;; Got answer:

;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 77

;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 1



;; OPT PSEUDOSECTION:

; EDNS: version: 0, flags:; udp: 65494

;; QUESTION SECTION:

;www.google.com. IN A



;; ANSWER SECTION:

www.google.com. 216 IN A 142.250.187.100



;; Query time: 24 msec

;; SERVER: 127.0.0.53#53(127.0.0.53)

;; WHEN: Mon Jun 28 10:52:12 UTC 2021

;; MSG SIZE rcvd: 59



;; Got answer:

;; ->>HEADER<<- opcode: QUERY, status: NXDOMAIN, id: 35631

;; flags: qr rd ra; QUERY: 1, ANSWER: 0, AUTHORITY: 0, ADDITIONAL: 1



;; OPT PSEUDOSECTION:

; EDNS: version: 0, flags:; udp: 65494

;; QUESTION SECTION:

;10.10.10.1. IN A



;; Query time: 44 msec

;; SERVER: 127.0.0.53#53(127.0.0.53)

;; WHEN: Mon Jun 28 10:52:12 UTC 2021

;; MSG SIZE rcvd: 39