Wie man das Netzwerkerlebnis bei selbstgehosteten DNS-Diensten verbessert
Categories:
Netzwerkqualität und Netzerlebnis
Ohne etwas zu tun, erhält man das beste Netzwerkerlebnis
Es ist wichtig zu klären, dass hier „Netzwerkqualität“ und „Netzwerkerlebnis“ zwei verschiedene Konzepte sind. Kommunikation ist ein Prozess, der mehrere Geräte umfasst. Wir können die Up-/Downlink-Leistung einzelner Geräte als „Netzwerkqualität“ bezeichnen, während die Ende-zu-Ende-Kommunikationsleistung als „Netzwerkerlebnis“ bezeichnet wird.
Wie man Netzwerkqualität misst
Die Bewertung der Netzwerkqualität umfasst normalerweise mehrere Kennzahlen und Methoden. Hier sind einige gängige Methoden und Kennzahlen zur Bewertung der Netzwerkqualität:
- Bandbreite (Bandwidth): Die Bandbreite bezeichnet die Fähigkeit des Netzwerks, Daten zu übertragen, und wird normalerweise in Bit pro Sekunde gemessen. Höhere Bandbreite bedeutet normalerweise bessere Netzwerkqualität.
- Latenz (Latency): Die Latenz ist die Zeit, die Daten benötigen, um vom Sender zum Empfänger zu gelangen. Niedrige Latenz bedeutet schnellere Datenübertragung und schnellere Netzwerkreaktion.
- Paketverlustrate (Packet Loss Rate): Die Paketverlustrate ist der Anteil der verlorenen Datenpakete während der Übertragung. Eine niedrigere Paketverlustrate bedeutet normalerweise bessere Netzwerkqualität.
- Jitter: Jitter bezeichnet die Variation oder Schwankung der Datenpakete während der Übertragung. Geringerer Jitter bedeutet höhere Netzwerkstabilität.
- Durchsatz (Throughput): Der Durchsatz ist die tatsächliche Datenmenge, die im Netzwerk übertragen wird, und wird normalerweise in Datenmenge pro Zeiteinheit gemessen. Höherer Durchsatz bedeutet bessere Netzwerkqualität.
- Netzwerktopologie (Network Topology): Die Netzwerktopologie beschreibt die Verbindungsweise und Struktur der Knoten im Netzwerk. Eine vernünftige Netzwerktopologie kann die Netzwerkleistung und -qualität verbessern.
- Qualitätssicherung (Quality of Service, QoS): QoS ist eine Reihe von Technologien und Mechanismen, die sicherstellen, dass im Netzwerk eine akzeptable Dienstqualität bei der Datenübertragung erreicht wird. QoS kann auf verschiedene Weise realisiert werden, z. B. durch Traffic-Controlling und Prioritätswarteschlangen.
- Netzwerkprotokollanalyse (Protocol Analysis): Durch die Analyse von Netzwerkprotokollen und Datenpaketen kann man die Netzwerkleistungskennzahlen und -probleme verstehen, z. B. mithilfe von Netzwerkanalysewerkzeugen wie Wireshark.
Durch die umfassende Nutzung dieser Kennzahlen und Methoden kann man die Netzwerkqualität ganzheitlich bewerten und die Stärken und Verbesserungsmöglichkeiten der Netzwerkleistung bestimmen. Diese Kennzahlen sind jedoch eher für Betreiber relevant. Für normale Benutzer reicht es aus, einen Router im passenden Preisbereich zu kaufen. Moderne Router verfügen normalerweise über Funktionen zur automatischen Netzwerkqualitätsanpassung.
Wie man das Netzwerkerlebnis misst
Zunächst ist die Zugänglichkeit wichtig. Zugang ist die wichtigste Grundlage. Daher müssen Domainnamensauflösungsdienste grundlegende Fähigkeiten erfüllen:
- Vollständigkeit: Der übergeordnete DNS-Dienst muss autoritativ sein und mehr Domainnamen auflösen können.
- Richtigkeit: Die Auflösungsergebnisse müssen korrekt sein und dürfen keine falschen Auflösungen enthalten. Einige DNS-Anbieter führen bei bestimmten Domainnamen eine Umleitung oder Verschmutzung durch und leiten auf Werbeseiten weiter.
- Aktualität: Nach einer IP-Adressänderung müssen die Auflösungsergebnisse rechtzeitig aktualisiert werden, anstatt alte IP-Adressen zurückzugeben.
Als nächstes kommt die Netzwerkqualität, die von den IP-Adressen bereitgestellt wird, die von der DNS-Auflösung erhalten werden.
Die Netzwerkqualität von Internetdiensten hängt normalerweise stark von der Region ab. Je näher der Server und der Client geografisch beieinander liegen, desto besser ist die Servicequalität.
Viele kostenpflichtige DNS-Auflösungsanbieter unterstützen die Auflösung verschiedener IP-Adressen nach Region. Hier ist beispielsweise ein Teil der von Alibaba Cloud angebotenen Dienste:
(1) Betreiberleitung: Unterstützt intelligente Auflösung nach China Unicom, China Telecom, China Mobile, Bildungsnetz, Penge-Dr. und Kabelnetz, detailliert bis zur Provinz.
(2) Auslandsregionen: Unterstützt, detailliert bis Kontinent und Land.
(3) Alibaba Cloud-Leitung: Unterstützt, detailliert bis zu den verschiedenen Regionen.
(4) Benutzerdefinierte Leitung: Unterstützt benutzerdefinierte IP-Bereiche für intelligente Auflösung.

Der Mechanismus zur Auflösung verschiedener IP-Adressen nach Region bedeutet, dass Benutzer aus verschiedenen Regionen beim Zugriff auf denselben Domainnamen unterschiedliche Auflösungsergebnisse erhalten. Natürlich werden dadurch die nächstgelegenen Server-IP-Adressen bevorzugt aufgelöst, was zu einem besseren Netzwerkerlebnis führt.
Die Optimierung des Netzerlebnisses der Benutzer wird normalerweise von den Anbietern von Internetdiensten auf der Grundlage der echten IP-Adresse der Benutzer vorgenommen. Das bedeutet für die meisten Benutzer, dass „ohne etwas zu tun das beste Netzwerkerlebnis erzielt wird“.
Wie wählt man beim selbstgehosteten DNS-Dienst den upstream DNS-Dienst aus
Alle im chinesischen Internet gefundenen Materialien empfehlen autoritative DNS-Anbieter wie Alibaba Cloud, Tencent Cloud, Cloudflare, Google usw. Diese DNS-Dienste können die „Zugänglichkeit“ von Netzwerkdiensten erfüllen, weil sie vollständig, korrekt und aktuell sind. Allerdings liefern sie nicht unbedingt die nächstgelegenen Server-IP-Adressen.
Die Empfehlungen großer Unternehmen im Internet haben historische Gründe.
Früher konnten chinesische ISP-Betreiber allein durch DNS-Umleitung und Man-in-the-Middle-Angriffe über HTTP den Datenverkehr der Benutzer umleiten und so Werbung ausliefern. Heutzutage ist diese Art der Umleitung aufgrund der Verbreitung von HTTPS selten geworden, obwohl sie in einigen Wohngebieten mit Breitband immer noch vorkommen kann. Bei DNS-Umleitung ist es tatsächlich sinnlos, die DNS-IP zu ändern, da die Umleitung auf Port 53 erfolgen kann, während die meisten DNS-Anfragen unverschlüsselt sind.
Außerdem möchten einige spezielle Benutzer auf besondere Websites zugreifen, und einige DNS-Anbieter haben das Problem der IP-Verschmutzung, bei dem die Domainnamen besonderer Websites auf falsche IP-Adressen aufgelöst werden, was den Zugriff verhindert. Autoritative DNS-Anbieter haben dieses Problem hingegen selten.
Daher müssen drei Fragen berücksichtigt werden:
- IP-Verschmutzung
- DNS-Umleitung
- Optimale Serviceerfahrung
Autoritative DNS-Anbieter können Problem 1 lösen, und Verschlüsselungsprotokolle (DoT/DoH/QUIC) können Problem 2 lösen.
Um Problem 3 zu lösen, müssen Sie den Standard-DNS-Dienst Ihres Breitbandanbieters verwenden, wie zu Beginn dieses Artikels erwähnt: „Ohne etwas zu tun erhält man das beste Netzwerkerlebnis“.
Wenn Sie jedoch jemand sind, der Ansprüche hat, oder ein besonderer Benutzer sind, wird im Folgenden die Konfiguration von zwei Tools, AdguardHome und Clash, beschrieben, um diese drei Probleme gleichzeitig zu lösen.
Autoritärer und intelligenter DNS-Dienst
AdguardHome-Konfiguration
AdguardHome, im Folgenden als ADG bezeichnet, ist eine Software zur Netzwerkwerbungsunterdrückung und zum Datenschutz sowie ein DNS-Dienst. Er unterstützt benutzerdefinierte upstream DNS-Dienste und benutzerdefinierte DNS-Regeln.
Die Standardmethode von ADG, um DNS-Anfragen an upstream zu senden, ist „Lastverteilung“. Der Benutzer kann mehrere upstream-Dienste einstellen, und ADG wählt basierend auf dem gewichteten Durchschnitt der historischen DNS-Abfragegeschwindigkeit den schnellsten upstream-DNS aus. Kurz gesagt wählt ADG mit höherer Wahrscheinlichkeit den schnelleren DNS upstream aus, um Domains aufzulösen, und mit geringerer Wahrscheinlichkeit den nicht optimalen DNS upstream.
Wir können die dritte Option „schnellste IP-Adresse“ wählen.

Der Vorteil dieser Option ist, dass ADG die IP-Auflösungsergebnisse der upstream DNS selbst testet und die IP mit der geringsten Latenz an die downstream-Clients zurückgibt. Im Folgenden sehen Sie das normale Auflösungsergebnis für bilibili.

Wie Sie sehen können, gibt es sehr viele IP-Adressen. Wenn ADG die IP-Auflösungsergebnisse nicht testet und alle IP-Adressen an den Client zurückgibt, was wird der Client tun?
Einige Clients wählen die erste IP-Adresse, andere die letzte IP-Adresse und wieder andere wählen zufällig eine IP-Adresse. Egal welche Wahl getroffen wird, es ist nicht unbedingt die optimale Entscheidung.
Nachdem die Option „schnellste IP-Adresse“ aktiviert wurde, sehen Sie hier das optimierte Auflösungsergebnis für bilibili. Dieser Schritt wird das „Netzwerkerlebnis“ verbessern.

Warum ist „schnellste IP-Adresse“ nicht die Standardwahl? Warum wird diese nützliche Funktion nicht standardmäßig aktiviert?
Weil der Preis dafür das „Warten auf die IP-Auflösungsergebnisse aller upstream DNS“ ist. Wenn Sie mehrere DNS-Anbieter als upstream konfigurieren, wird die Abfragezeit von ADG an upstream von dem langsamsten bestimmt. Zum Beispiel, wenn Ihr upstream sowohl Alibaba mit einer durchschnittlichen Servicezeit von 50 ms als auch Google mit einer durchschnittlichen Servicezeit von 500 ms enthält, wird die Abfragezeit von ADG an upstream 500 ms + betragen.
Daher muss der Benutzer bei der Konfiguration dieser Option die Servicequalität und Anzahl der upstream DNS abwägen und nicht gierig sein.
Hier empfehle ich, zwei upstream-Dienste einzurichten: einen autoritativen (https://dns.alidns.com/dns-query) und einen Betreiber-DNS.
Die IP-Adressen der Betreiber-DNS unterscheiden sich von Region zu Region. Sie können hier die Betreiber-DNS Ihrer Region einsehen.
Alternativ können Sie die vom Betreiber empfohlene DNS im Router-Verwaltungsinterface einsehen:

Clash-Konfiguration
Benutzer mit besonderen Anforderungen legen Wert auf DNS-Umleitung und IP-Verschmutzung, möchten jedoch das optimale Serviceerlebnis nicht aufgeben und können das dns-Modul von Clash verwenden.
Die nameserver-policy kann festlegen, dass verschiedene Domains verschiedene DNS-Anbieter verwenden. Hier ist ein Beispiel für eine Konfiguration:
dns:
default-nameserver:
- tls://223.5.5.5:853
- tls://1.12.12.12:853
nameserver:
- https://dns.alidns.com/dns-query
- https://one.one.one.one/dns-query
- https://dns.google/dns-query
nameserver-policy:
"geosite:cn,private,apple":
- 202.103.24.68 # DNS Ihres Wohnorts
- https://dns.alidns.com/dns-query
"geosite:geolocation-!cn":
- https://one.one.one.one/dns-query
- https://dns.google/dns-query
Die Bedeutung ist:
- default-nameserver: Dient zur Auflösung der IP-Adressen der DNS-Dienste in der Konfiguration
nameserver. - nameserver: Dient zur Auflösung der Domainnamen von Netzwerkanfragen.
- nameserver-policy: Basierend auf der Strategie werden verschiedene Domains mit verschiedenen DNS-Diensten aufgelöst.
Danke fürs Lesen
Wenn Ihnen dieser Artikel hilfreich war, freuen wir uns über einen Daumen hoch. Kommentare und Diskussionen sind ebenfalls herzlich willkommen.