Das Akronym DNS steht für Domain Name System. Dieses hierarchische Benennungssystem für Netzwerke fungiert nicht nur als verteiltes System, sondern auch als Übersetzer für Domänennamen.
Edas System DNS Es ist eine der grundlegenden Technologien für das Funktionieren des Internets, wie wir es heute kennen. Dank dieses Systems können wir über das Internet auf die IP-Adresse des Servers zugreifen, auf den wir zugreifen möchten. Es verhält sich wie ein Telefonbuch oder eine Plattform, die die Namen einer Website in eine IP übersetzt, mit der der Webserver lokalisiert werden kann. Dadurch können Benutzer schnell und einfach auf Dienste zugreifen, die auf mit dem Internet verbundenen Servern gehostet werden. DNS werden auch als bezeichnet Nameserver oder Nameserver.
Wenn wir uns mit dem Internet verbinden, werden unsere ISP (Internetdienstanbieter) beauftragt uns a IP Adresse. Diese Adresse kann eine Reihe von 12 Zahlen sein (im Fall von IPv4) oder 32 Zeichen im Hexadezimalformat (im Fall von IPv6). In beiden Fällen kann ein PC diese Adressformate problemlos verarbeiten. Andererseits wäre dies für einen Menschen keine leichte Aufgabe.
Es ist sehr schwierig, sich beispielsweise eine Adresse wie zu merken 172.217.3.78, das ist die Adresse Google IPv4. Oder die Adresse 91.121.161.210, was der Adresse entspricht Bit4Me Academy IPv2. Komplizierter wird es, wenn wir als Nutzer auf verschiedene Websites und Dienste zugreifen. Und es wird eine ziemliche Herausforderung, wenn die Adressen dieser Dienste vorhanden sind dynamisch (Sie ändern sich im Laufe der Tage).
In dieser Situation ist es am besten, über eine Datenbank mit Domänennamen zu verfügen, die Sie einer IP-Adresse zuordnen. Domainnamen sind leichter zu merken und erleichtern uns die Navigation im Internet. Beispielsweise ist die Eingabe von Wikipedia.com nicht dasselbe wie die Eingabe von 208.80.154.224.
So funktioniert DNS
Die Betriebsinfrastruktur dieses Servertyps ist in eine Reihe von Schichten mit genau definierten Funktionen unterteilt. Diese Schichten sind für die Registrierung, Anforderung und Auflösung von Domänennamen verantwortlich.
Diese Betriebsebenen sind die folgenden:
Schicht Nr. 1: Clients oder Resolver
Dies ist die erste Ebene des DNS-Betriebs. Dies ist der nächstgelegene zu den Computern der Benutzer. Die Hauptfunktion von DNS-Clients besteht darin, Anfragen (Abfragen) zur Auflösung von Domänen an DNS-Server zu stellen.. Das heißt, sie sind dafür verantwortlich, die Informationen anzufordern, damit wir durch die Auflösung der Domänen im Internet navigieren können.
Jedes Betriebssystem mit der Möglichkeit, eine Verbindung zum Internet herzustellen, verfügt über diese Client-Funktionen. Dies soll das Surfen im Internet erleichtern. Die Aufgaben dieser Kunden sind:
- Fragen Sie den DNS-Server nach den Domänen, auf die der Benutzer zugreift.
- Interpretieren Sie die Antworten des DNS-Servers zu den angeforderten Domänen.
- Geben Sie die Informationen an das Programm zurück, das die Anfrage gestellt hat (Webbrowser, P2P-Programme, unter anderen).
Im Allgemeinen wenden diese Clients bestimmte Techniken wie DNS-Caching an, um das Surfen viel schneller zu machen. Denn die vom DNS-Server korrekt beantworteten Anfragen werden lokal gespeichert. Auf diese Weise nimmt die Namensauflösung viel weniger Zeit in Anspruch, als Informationen an einen Remote-Server zu senden und auf eine Antwort zu warten.
Weitere von diesen Kunden gezeigte Fähigkeiten sind DNS über TLS (DNS über TLS) Und DNSSEC (DNS-Sicherheitserweiterungen). Bei beiden handelt es sich um Sicherheitsebenen, die vom Zweiparteienbetrieb abhängen (Server und Client müssen die Optionen unterstützen). Dadurch soll verhindert werden, dass der DNS-Verkehr von böswilligen Dritten analysiert oder beschädigt wird. Im Fall von DNS-over-TLS verschlüsselt es die Verbindung des Clients zu Remote-Servern. Während DNSSEC dank eines asymmetrischen Verschlüsselungssystems die Antworten von DNS-Servern kryptografisch sichert.
Eine weitere Funktion der Clients besteht darin, als Cache für das DNS zu dienen. Mit dieser Funktion möchten Kunden Serveradressen schneller auflösen und Benutzern ein reibungsloseres Surferlebnis bieten.
Schicht Nr. 2: Server
DNS-Server sind Computer, die Sie beantworten Anfragen und lösen Domainnamen über ein baumstrukturiertes System auf. Diese Server verfügen über eine Datenbank mit Domänennamen und der entsprechenden registrierten IP-Adresse. Auf diese Weise empfängt der Server jedes Mal, wenn ein DNS-Client eine Anfrage (Abfrage) stellt, sucht in seiner Datenbank nach der betreffenden Domain und sendet eine Antwort. Diese Antwort ist die IP-Adresse der Domäne, von der der Client Informationen angefordert hat. Dank dieser Operation Wir können sicher im Internet surfen, indem wir einfache Namen in unseren Browser eingeben.
Im Allgemeinen sind diese Server über statische IP-Adressen mit dem Internet verbunden (sie ändern sich nie). Diese IP-Adressen werden normalerweise automatisch konfiguriert, wenn wir über unseren ISP eine Verbindung zum Internet herstellen. Wir können sie jedoch auch in Adressen anderer IP-Server unserer Wahl ändern. Ein Beispiel hierfür sind die IP-Adressen 8.8.8.8 und 8.8.4.4. Beide Adressen entsprechen dem DNS des Dienstes Google DNS. Es besteht auch die Möglichkeit, die Adressen 1.1.1.1 und 1.0.0.1 zu verwenden Cloudflare-DNS , letzteres mit Unterstützung für DNSSEC und DNS-over-TLS. Andererseits ist es auch wichtig hervorzuheben, dass es öffentliche und private DNS-Server gibt.
In diesem Fall können wir sehen, dass die Sicherheitsoptionen serverseitig bereitgestellt werden müssen, um sie zu haben. Es nützt uns nichts, einen DNS-Client mit DNSSEC-Unterstützung zu haben, wenn der Server keine Unterstützung dafür bietet. Dieser Mangel an Funktionen ist nur einer der vielen Mängel des Client-Server-Modells. Ein zentralisiertes Modell, das sich für Aktionen wie Spionage, Phishing oder Zensur eignet.
DNS-Server werden normalerweise mit sehr einfacher Software erstellt und verfügen daher nicht über ein grafisches Bedienfeld. Ziel ist es, eine widerstandsfähige Software mit sehr geringem Verbrauch zu schaffen, die eine große Anzahl von Anfragen pro Sekunde unterstützt.
Schicht Nr. 3: Autoritätszonen
Aufgrund der Baumstruktur, auf der das DNS-System basiert, kann es unterteilt werden. Jede dieser Abteilungen wird Autoritätszonen genannt. Eine Autoritätszone ist eine vollständige Datenbank für einen Unterbaum, der Teil des Stammbaums des DNS-Systems ist.
Jede Zone unterliegt einer Autorität und kann die Verwaltung eines Teils des Baums delegieren. Der Ursprung des DNS-Baums enthält die Root-Zone, die die Delegationen für die TLDs (Top-Level-Domain) enthält. Jede TLD würde wiederum eine DNS-Zone bilden, ebenso wie Second-Level-Domains und so weiter. Jeder dieser Bereiche kann einer anderen Behörde unterstehen. Diese Server oder Gruppen von ihnen sind diejenigen, die beispielsweise die Namensauflösung von Subdomains wie .es oder .org übernehmen. Kurz gesagt: Diese Zonen begrenzen die Arten von Datensätzen und Domänen auf einem DNS-Server.
Bedeutung von DNS in der Internetinfrastruktur
An dieser Stelle können wir sagen, dass der Nutzen und die Bedeutung von DNS unbestritten sind. Dank der DNS-Infrastruktur können wir das Internet und seine Dienste genießen. Die Erleichterung des Benutzerzugriffs auf die Plattformen ist der Schlüssel zu ihrer Massenvergrößerung, und DNS hat diese Prämisse zum jetzigen Zeitpunkt perfekt erfüllt. Die Tatsache, dass wir nur den Namen einer Domain eingeben müssen (z. B. bit2me.com) und auf die Website zugreifen müssen, ist sehr relevant. Vor allem, wenn es zunächst darum geht, eine Reihe von Zahlen oder eher kryptische Hexadezimalzeichen zu schreiben.
Darüber hinaus ermöglicht die Öffnung und Verbreitung des Systems ein kontinuierliches Wachstum des Internets. Beispielsweise kann ein Unternehmen einen DNS-Server erstellen, der zur Auflösung seiner internen Ressourcen verwendet werden kann. Gleichzeitig ist es jedoch in der Lage, die externen Ressourcen desselben Unternehmens (eigene oder nicht) abzuwickeln (oder auch nicht). Diese Flexibilität ist einzigartig und einer der Gründe für das weiterhin schnelle Wachstum des Netzwerks.
Trotz seiner Bedeutung hat das zentralisierte und autoritative System jedoch ernsthafte Probleme verursacht. Beispielsweise ist die Manipulation von DNS-Einträgen die häufigste Form der Zensur weltweit. Regierungen auf der ganzen Welt wenden es an, um den Zugriff auf bestimmte Websites oder Dienste aus einem bestimmten Gebiet zu verhindern. Angesichts dieser Situation verstehen wir, warum es auch wichtig ist, über dezentrale Optionen zu verfügen, die diese Art von Aktionen vermeiden. Nicht nur, um Freiheit zu gewähren, sondern auch, um mehr Transparenz und einen universelleren Zugang zu ermöglichen.
Dezentral oder verteilt?
Wir sagen oft, dass DNS „zentralisiert', weil es über eine zentralisierte Client-Server-Komponente verfügt. Es gibt auch einen zentralen Punkt, an dem es scheitern kann. Dieser Schwachpunkt liegt in der Verwaltung seiner Wurzelstruktur, die von durchgeführt wird IANA/ICANN.
Andererseits ist DNS auch ein System verteilt da es sich um eine Vielzahl von Computern auf der ganzen Welt handelt. Aus diesem Grund ist DNS, wie die meisten Netzwerke, ein verteiltes System.
Wie kann Blockchain dazu beitragen, sie zu verbessern?
Technologie Blockchain hat große Fähigkeiten bewiesen, verschiedene Szenarien in der heutigen Welt zu transformieren. Und genau eines dieser Szenarien ist die Technologie hinter DNS. Die zentralisierte, autoritätsbasierte und kryptografisch schwache Struktur des aktuellen Systems hat sich als unzureichend erwiesen. Die Leichtigkeit, Angriffe durchzuführen Verweigerung von Dienstleistungen Es ist erschreckend. Aber es ist nicht das Einzige, was getan werden kann. Die Tatsache, dass beispielsweise die Anfragen unserer Teams normalerweise im Klartext und ohne die Verwendung von gestellt werden Kryptographie, es ist schon besorgniserregend. Jeder mit Kenntnissen kann ausspionieren, was wir mit unserer Ausrüstung (Computer oder Smartphones) machen. Tatsächlich können sie unser Surfen auf Websites umleiten, die die Möglichkeit haben, unsere Daten zu stehlen, ohne dass wir es merken, bis es zu spät ist. Angesichts dieser Situation stellt die Blockchain eine Möglichkeit dar, diese Probleme endgültig zu lösen.
Ein DNS-Dienst auf der Blockchain wäre kryptografisch sicher, dezentral, autoritätsfrei, angriffsresistent, unveränderlich und unzensierbar. Das ist bei weitem besser als das, was wir jetzt mit dem aktuellen DNS-Dienst haben. Ein gutes Beispiel für diese Art von System ist in zu sehen Namecoin, eine Blockchain, die sich zum Ziel gesetzt hat, ein DNS-System zu werden, das auf Blockchain-Technologie läuft.
Vor diesem Hintergrund ist es verständlich, dass die Blockchain-Technologie zur Verbesserung der DNS-Technologie beitragen kann. Verbesserungen für Sicherheit, Datenschutz und Nichtzensur durch mächtige Gruppen.
Vorteile und Nachteile
Vorteil
- Das System ist einfach zu implementieren und zu skalieren. Die Fähigkeit, Replikate zu erstellen, Netzwerklasten auszugleichen und fehlertolerant zu sein, hat DNS zu einem Grundpfeiler des Internets gemacht.
- Benötigt wenig Rechenleistung. Das Empfangen und Beantworten von DNS-Clients ist keine rechenintensive Aufgabe. Aus diesem Grund ist der Hardwarebedarf für die Einrichtung massiver DNS-Dienste gering.
- Die Auswirkungen auf die Navigation sind minimal. Normalerweise benötigt ein gut konfigurierter DNS-Dienst weniger als 1 Sekunde, um zu antworten. Dadurch wird der Zeitaufwand für den Verbindungsaufbau zwischen Nutzer und Endgerät auf ein Minimum reduziert.
- Es bietet einen Dienst, der den Zugang zu Diensten im Internet „stabilisiert“. Viele Server im Internet bieten ihre Dienste über dynamische IP-Adressen an. Das bedeutet, dass sich Ihre IP-Adressen nach einigen Stunden oder Tagen ändern. Trotzdem kann der Dienst die IP-Einträge einer Domain aktualisieren. Dadurch verweist der Domänenname auf die neue IP und wir können weiterhin mit derselben IP darauf zugreifen.
Nachteile
- Sein zentralisiertes System macht es besonders anfällig. Ein böswilliger Akteur kann beispielsweise die Kommunikation zwischen dem Client und dem Server abfangen und verändern. Auf diese Weise gelingt es ihm, den Client (Benutzer) dorthin umzuleiten, wo er möchte, und möglicherweise Daten zu stehlen.
- Das System sendet Informationen standardmäßig im Klartext ohne Verschlüsselung. Als DNS geboren wurde, waren die Sicherheitsbedenken minimal und der Einsatz von Verschlüsselung vorbehalten. Aus diesem Grund ist DNS ein Protokoll, das Informationen im Klartext sendet und empfängt. Jeder kann die Kommunikation abfangen und erfahren, wonach wir (als Clients) fragen und worauf der Server reagiert.
- Es ist nicht dezentralisiert und seine kryptografische Sicherheit ist komplex zu implementieren. Dies bedeutet beispielsweise, dass das System nicht resistent gegen Denial-of-Service-Angriffe ist. Darüber hinaus ist seine Schutzkapazität komplex, was einer breiten Anwendung entgegensteht. Dies ist der Hauptgrund, warum DNS-over-TLS und DNSSEC nicht weit verbreitet sind.