haneWIN DNS Dokumentation

## haneWIN DNS Server
Version 2.0

Copyright 2002-2019, Herbert Hanewinkel, Neuried

> Aktualisiert: Feb 2019

> Übersicht
> Installation
> Benutzung
> Verfügbarkeit

> ### Übersicht

> Die Software implementiert einen DNS Server zum Einsatz auf Windows Rechnern und unterstützt dynamische DNS Updates nach RFC 2136.
> Der Server kann dabei für die zu verwaltende Domäne entweder als Erster Nameserver oder auch als Backup Nameserver konfiguriert werden.
> Der Server ist als "recursive DNS forwarder" mit Cache konzipiert. Anfragen zur nicht lokalen Domäne werden an externe Nameserveradressen weitergeleitet, wenn die Anfragen nicht aus dem lokalen Cache beantwortet werden können.
> Über eine konfigurierbare Liste können Namen oder komplette Domänen (z.B. Werbeanbieter, Nutzerverfolgung,...) gesperrt werden.
> Für die externe Weiterleitung unterstützt der Server DNS über TLS (RFC 7858) und DNS-Transport über TCP (RFC7766) mit Umsetzung von Clientanforderungen und Antworten zwischen UDP und TCP. DNS über TLS verwendet die Microsoft Windows TLS-Implementierung und ist unter Windows 7 und höheren Versionen verfügbar.

> Als optionale Zusatzfunktion kann der Dienst dazu verwendet werden, das Standard-Gateway des Computers von einem nicht privilegierten Benutzer zu kontrollieren. Das Entfernen des Standard-Gateways ist eine einfache Möglichkeit, die Verbindung zum Internet zu trennen, ohne den eigenen Computer von lokalen LAN / WLAN zu trennen.

> Der DNS Server ist für Windows 200x/XP/VISTA/7/8/10 als Dienst implementiert. Der Dienst kann über ein Kontrollfeld der Systemsteuerung überwacht werden.
> Der DNS Server wird zudem als Windows Anwendung bereitgestellt.

> Sowohl Dienst als auch Anwendung sind als 32- und 64-Bit Version implementiert.

> Die haneWIN DNS Server Software ist Shareware
> Sie erhalten das Recht die Software bis zu 30 Tage testen. Zur weiteren legalen Nutzung muss die Software lizenziert werden. Einzelheiten zur Registrierung finden Sie in bestell.txt.

> ### Installation

> Voraussetzungen

>   Windows 200x/XP/VISTA/7/8/10 Rechner mit konfiguriertem TCP/IP Protokoll.

> Installation des DNS Server Dienstes
>   1. Installieren Sie die Software über das Setup Programm. Der DNS Server Dienst wird installiert und gestartet.
>   2. Legen Sie für den DNS Server eine Firewallregel an. Ein Beispiel dazu finden Sie in der Datei firewall.bat.
>   3. Über das Kontrollfeld DNS Server kann der DNS Server Dienst konfiguriert und überwacht werden. Nur wenn das Kontrollfeld mit Administratorrechten ausgeführt wird und eine Verbindung zum Dienst herstellen kann, kann der DNS Server Dienst konfiguriert werden.
> Nutzung der DNS Server Anwendung
>   1. Extrahieren Sie aus dem zip-Archive den Ordner dns, starten Sie im Ordner dns die Anwendung für 32 oder 64 Bit.
>   2. Legen Sie für den DNS Server eine Firewallregel an. Ein Beispiel dazu finden Sie in der Datei firewall.bat.

> Wenn eine hosts Datei bereits existiert wird diese als Ausgangspunkt für eine Nameserverdatenbank geladen. Die lokale Domäne und der Computername werden aus den Windows Einstellungen übernommen. Weitere Einträge können über den Menüpunkt Eintrag hinzufügen angelegt werden. Eine automatisierte Anlage von Einträgen ist bei dem Dienst mit dem bereitgestellten Kommandozeilenprogramm DNSCMD.EXE möglich.

> ### Benutzung

> Die InfoBox wird nur beim Start der nicht registrierten Version angezeigt.

> #### Einsatz des Servers als Dienst unter Windows 200x/XP/VISTA/7/8/10

> Der DNS Server kann unter Windows 2000/XP/VISTA/7/8/10 als Dienst im Hintergrund laufen. Die Überwachung und Konfiguration erfolgt über das Kontrollfeld DNS Server der Systemsteuerung. Zur Konfiguration sind Administratorrechte erforderlich.
> Die Startmenüeinträge zur Installation/Entfernung des DNS Server Dienstes führen folgende Befehle aus.

> 1. Der Dienst wird mit dem Befehl
>    `DNS4NT -install`
>    installiert und wird dann automatisch gestartet. Über das Kontrollfeld Dienste kann der Dienst jederzeit gestoppt und neu gestartet werden.
> 2. Mit dem Befehl
>    `DNS4NT -remove`
>    wird der Dienst beendet und entfernt.

> #### Menüs

> Datei
> Dienst
>   mit Start/Stop kann der Dienst gestartet oder beendet werden.
> Statistik
>   zeigt die Benutzungsstatistik für den DNS Server.
> Protokoll
>   zeigt das Transaktions- und Fehlerprotokoll an, wenn die Option zur Protokollierung ausgewählt wurde.
> Beenden
>   beendet das Kontrollfeld/Programm. Der DNS Server Dienst bleibt weiter aktiv.
> Optionen
> Einstellungen
>   Allgemein
>     - Protokolldatei erstellen. Eine neue Protokolldatei kann täglich oder monatlich angelegt werden.
>     - Blockieren von Namen zulassen: Aktiviert die konfigurierbare Sperrliste für unerwünschte Domänen um Tracking zu erschweren und Werbung zu unterdrücken.
>     - Schnittstellen: Standardmäßig wird der Server auf allen lokalen Schnittstellen gestartet. Wenn der Server nur auf ausgewählten lokalen Schnittstellen gestartet werden soll können diese hier über ihre IP-Adresse ausgewählt werden.
>   Server
>     - Der Server kann als Backup Nameserver seine Daten von einem anderen Nameserver übernehmen. In diesem Fall muss die IP-Adresses des ersten Nameservers vorgegeben werden.
>     - Es können bis zu vier IP-Adressen von externen Nameservern eingetragen werden. Anfragen zu Namen, die nicht in der lokalen Domäne liegen und die nicht beantwortet werden können, werden an diese Nameserver weitergeleitet.
>     - DNS über TLS kann zur Verbesserung der Sicherheit ausgewählt werden. Bei DNS über TLS wird eine Verbindung zum Server auf TCP Port 853 hergestellt.
>       Die Software verwendet die Microsoft TLS-Implementierung. Je nach Windows Betriebssystem benötigt TLS 1.2 möglicherweise ein Update der Implementierung. DNS über TLS wurde mit einer Reihe von Servern erfolgreich getestet. Unabhängig vom Windows-Betriebssystem konnte keine Verbindung zum google.dns (8.8.8.8 und 8.8.4.4) über TLS hergestellt werden. (Jan-2021: funktioniert nun mit TLS unter Windows 10) Es funktioniert mit quad9.net, cloudflare-dns.com und anderen Anbietern von DNS über TLS.
>     - Das Zertifikat des letzten TLS-Handshakes mit einem Server kann angezeigt werden. Wenn der Name des Servers eingetragen ist, wird der Name mit dem CN-Namen des Zertifikats verglichen. Ohne Name wird jeder Server akzeptiert.
>   Cache

>     In der aktuellen Implementierung werden A, NS, CNAME und MX Einträge gespeichert. Die Software kann den TTL Wert (Gütigkeitsdauer eines Eintrages) zur Verbesserung der Netz- und Cache Leistung modifizieren. Ohne Angaben von TTL Werten werden die erhaltenen TTL Werte zu den Einträgen nicht verändert.

>     - Mit der minimalen Server TTL kann die Gütigkeitsdauer von erhaltenen Einträgen im Cache verlängert werden. Damit lässt sich eine bessere Cacheleistung erreichen, es könnte aber in seltenen Fällen zu fehlerhaften Einträgen führen. z.B. Es gibt Server, die Einträge mit einer TTL in der Grössenordung 10 Sekunden mitteilen. Diese lassen sich nicht mehr sinnvoll cachen. Mit einer minimalen Server TTL von z.B. 300s (5min) lässt sich eine drastische Verbesserung erreichen.
>     - Mit der maximalen Client TTL kann die Gütigkeitsdauer von Einträgen für die Klienten begrenzt oder ein Caching im Klienten vollständig verhindert werden. Eine Zwischenspeicherung kann damit auf den zentralen Cache des DNS Servers beschränkt werden.
>     - Die maximale Anzahl der Einträge im Cache kann zur Begrenzung des Speicherbedarfs vorgegeben werden. Wenn die maximale Anzahl überschritten wird werden die am wenigsten genutzten Einträge ersetzt.
>     - Der Cacheinhalt kann mit Beendigung in eine Datei CACHE.DMP gespeichert werden. Bei einem erneuten Start des Programms wird das Cache dann mit dem Inhalt von CACHE.DMP initialisiert.
>     - Mit Cache löschen wird der gesamte Cacheinhalt gelöscht.
>   Gateway
>     Dies ist eine von DNS unabhängige Funktion.
>     Um die Verbindung zum Internet vorübergehend zu trennen, kann man normalerweise das WLAN trennen oder die LAN-Verbindung deaktivieren. Damit ist man aber auch vom vom lokalen Netzwerk getrennt. Die Verbindung zum Internet kann getrennt werden, ohne dass die Verbindung zum lokalen Netzwerk getrennt werden muss indem Sie das Standard-Gateway entfernen. Das Entfernen oder Setzen des Standard-Gateways erfordert aber Administratorrechte unter Windows.
>     - Durch Aktivieren der Option kann ein Benutzer ein vordefiniertes Standard-Gateway entfernen oder setzen.
>     - Um das Standard-Gateway zu ändern, klicken Sie entweder mit der rechten Maustaste auf das Taskleistensymbol und wählen Sie den Setzen / Entfernen-Befehl oder geben Sie in einer Befehlszeile ein:
>       dnscmd -gateway (entfernt das Standard-Gateway)
>       dnscmd gateway (setzt das Standard-Ggateway)
>     Um einen Computer vom Internet getrennt zu starten und manuell später eine Verbindung zum Internet herzustellen.
>     - Aktivieren Sie für DHCP zugewiesene IP-Adressen die zweite Option.
>     - Bei Computern mit festen IP-Adressen kann das Standard-Gateway in der die TCP / IP-Konfiguration leer bleiben und hier konfiguriert.
> Sicherheit

>   Es können getrennte Zugriffrechte für Anfragen, Zonentransfers und Updates angelegt werden.

>   - Anfragen sind normale DNS Anfragen zur Auflösung eines Namens.
>   - Ein Zonentransfer wird von Backup-Nameservern zur Aktualisierung seiner Daten vom ersten Nameserver verwendet.
>   - Updates werden von DHCP Servern oder DHCP Klienten versandt um automatisch einem Namen im Server zu registrieren. Ein Update sollte immer an den ersten Server versandt werden.

>   Wenn der Zugriff auf bestimmte IP-Adressbereiche begrenzt wird, sollte im Normalfall auch 127.0.0.1 mit aufgenommen werden. Ansonsten kann der DNS Client des Computers keine Anfragen mehr an den DNS Server richten.

> Lokale Domäne
>   allgemeine Angaben zur lokalen Domäne. Bei jeder Änderung der Datenbankeinträge wird die Versionsnummer der Datenbank automatisch erhöht. Bei einem Backup Nameserver werden alle Einträge vom ersten Nameserver übernommen. Mit der Option vom 1. Nameserver aktualisieren kann bei einem Backup Nameserver eine sofortige Auffrischung vom ersten Nameserver gestartet werden.
> Eintrag hinzufügen
>   zum Anlegen neuer Adress-, Nameserver- oder MX-(Mail-) einträge. Zum Entfernen von Einträgen erscheint nach dem Anklicken eines Eintrages mit der rechten Maustaste ein Kontextmenü.
>   Einträge sollten nur auf dem ersten Nameserver angelegt werden, da sie auf einem Backup Nameserver mit einer Aktualisierung wieder verloren gehen.
> Namen blockieren
>   Unerwünschte Namen und Domänen können mit einem Eintrag blockiert werden. Anfragen werden dann mit einer IP-Adresse 127.0.0.1 beantwortet. Die Einträge werden in der Datei "domains.blk" gespeichert. Zur Reduktion der Anzahl der Einträge sind Ersetzungen möglich.
>   Zusätzlich wird eine Sperrliste im Format einer hosts Datei unter dem Namen "hosts.blk" im Programmverzeichnis ausgewertet. Die Enträge werden während des Ladens für eine schnelle Auswertung sortiert. Damit lassen sich auch lange Sperrlisten verwenden.
> Ansicht
> Datenbank
>   zeigt die aktuelle Datenbank an.
> Cache
>   zeigt den aktuellen Inhalt des Cachespeichers an.
> Blockierte Namen
>   zeigt die Sperrliste an. Blockierte Zugriffe werden für jeden Eintrag gezählt.
> Hilfe
> Inhalt
>   startet den HTML-Browser mit der Dokumentation
> Registrieren
>   über diesen Dialog wird die Software registriert. Geben Sie bitte dort den Lizenzschlüssel und die Lizenzkennung ein. Nach erfolgreicher Registrierung wird unter Hilfe-Über... die Lizenzkennung angezeigt.
> Lizenzbedingungen anzeigen
>   zeigt die Lizenzbedingungen an.
> Infomationen
>   zeigt Version und Urheberrecht an.

> ### Verfügbarkeit

> Die jeweils aktuelle Version der haneWIN DNS Software ist unter www.hanewin.net zu finden. Bitte senden Sie Kommentare, Anregungen und beobachtete Probleme zum Programm an
> .