Anmerkungen

Anmerkungen

Szenario

Ich habe eine kleine Website auf einem Windows 10 Pro N-PC mit (z. B.) öffentlicher IP: 123.456.78 Wenn ich diese IP von irgendwo eingebe, wird die Website problemlos geöffnet.

Jetzt habe ich auch 2 Domänennamen gekauft, z. B. www.somewebsiteOne.combei www.somewebsiteTwo.org2 verschiedenen Domänenverkäufern. Und ich bin abhängig von einem DNS-Dienst, der www.somewebsiteTwo.ddns.netan weiterleitet 123.456.78. Bei den Domänenverkäufern kann ich dann www.somewebsiteTwo.organ weiterleiten www.somewebsiteTwo.ddns.net. Meine Absicht ist es, die Abhängigkeit vom DNS-Server durch meinen selbstgehosteten Open-Source-DNS-Server mit Technitium zu ersetzen.

Um zu überprüfen, ob mein eigener DNS-Server funktioniert, muss ich Folgendes tun:

  1. Öffnen Sie Powershell auf einem anderen Computer in einem anderen Netzwerk.
  2. Geben Sie ein: nslookup www.somewebsiteTwo.org 123.456.78
  3. Das gibt tatsächlich die IP-Adresse 123.456.78 zurück

Problem

Wenn ich jetzt versuche, die IP-Adresse dieses DNS-Servers bei einem der beiden Domänenverkäufer einzugeben, muss ich Folgendes eingeben:

  • Hostname
  • IP Adresse

Wo kann ich für den Hostnamen etwas wie www.somewebsiteTwo.ddns.net„(das ist ein DNS-Server, der www.somewebsiteTwo.organ 123.456.78 und für die IP-Adresse weiterleitet 123.456.78.)“ eingeben? Nachdem ich mit einem der beiden telefoniert hatte, wurde mir erklärt, dass sie den Hostnamen und nicht die IP-Adresse verwenden, um meinen persönlichen öffentlichen DNS-Server zu finden, nicht die IP-Adresse.

Das bedeutet im Wesentlichen, dass ich einen DNS-Server brauche, der einen Hostnamen für meinen persönlichen öffentlichen DNS-Server an die IP-Adresse meines DNS-Servers weiterleitet. Das widerspricht meinen Absichten. Daher habe ich Folgendes:

Frage

Wie kann ich einen funktionierenden Hostnamen ermitteln und verwenden, der auf meinen persönlichen öffentlichen DNS-Server unter verweist 123.456.78?

Versuche

  • Ich habe versucht, den Hostnamen meines PCs einzugeben, z. B. den, der in cmd bei command zurückgegeben wird hostname. Aber das wird nicht als gültiger Hostname angesehen.
  • Ich habe versucht, dies einzugeben 123.456.78, aber dies wird nicht als gültiger Hostname angesehen.
  • Ich habe versucht, einzutreten http://123.456.78/, aber es funktioniert nicht.
  • Die IP-Adressen funktionieren aus folgenden Gründen nicht als Hostname für die Bezugnahme auf einen DNS-Server:

Der für einen DNS-Server und bei der Registrierung und Verwendung einer DNS-(Sub-)Domäne zu verwendende Hostname muss ein gültiger, vollqualifizierter DNS-Hostname sein, wie zum Beispiel ns1.example.com. oder customer-5363.dsl-users.isp.example.net . Das Protokoll erlaubt keine IP-Adresse. Wenn Sie einen DNS-Eintrag wie ns1.example.com verwenden möchten, um die Domäne example.com zu registrieren, muss Ihr Registrar zuerst den richtigen Verbindungseintrag einrichten

Antwort1

Nachdem ich mit einem der beiden telefoniert hatte, wurde mir erklärt, dass sie zum Auffinden meines persönlichen öffentlichen DNS-Servers den Hostnamen und nicht die IP-Adresse verwenden, nicht die IP-Adresse.

Das bedeutet im Wesentlichen, dass ich einen DNS-Server brauche, der einen Hostnamen für meinen persönlichen öffentlichen DNS-Server an die IP-Adresse meines DNS-Servers weiterleitet. Was meinen Absichten zuwiderläuft.

Das ist nicht ganz richtig.

Es stimmt, dass NS-Einträge, die für Domänendelegierungen verwendet werden,nurNehmen Sie Hostnamen und keine Rohadressen.

Allerdings dürfen Sie tatsächlich einen Hostnamen angeben, der sich unter Ihrer eigenen Domain befindet, und deshalb gibt es daneben IP-Adressfelder: Sie ermöglichen Ihnendefinierenden Hostnamen und verwenden Sie ihn gleichzeitig. Darauf bezieht sich die Support-Nachricht tatsächlich, wenn sie „Glue Records“ erwähnt, die diese Art von „Schleife“ ermöglichen.

(Beachten Sie, dass Sie genau dieselben Hostnamendefinitionen auch in Ihrem eigenen DNS-Server hinzufügen müssen – die Glue-Records beim Registrar gelten als Kopie und die auf Ihrem Server als maßgebliche Version.)


Wenn Sie beispielsweise den Nameserver eingeben ns1.somewebsite.com, veröffentlicht der Registrar diesen DNS-Eintrag:

somewebsite.com. NS ns1.somewebsite.com.

Da der Hostname des Nameservers unter der Domain liegt, die er hostet, würde dies offensichtlich nicht so funktionieren, da es eine Schleife erzeugen würde. SieAuchSie müssen die IP-Adresse des Servers in das entsprechende Feld eingeben. Dadurch kann der Registrar einen zweiten DNS-Eintrag (den „Glue“-Eintrag) veröffentlichen:

somewebsite.com. NS ns1.somewebsite.com.
ns1.somewebsite.com. A 12.34.56.78

Wenn ein Resolver versucht, die Nameserver für Ihre Domäne abzufragen, werden ihre IP-Adressen aus den Glue-Records immer an dieselbe Antwort angehängt, wodurch das Loop-Problem vermieden wird.

Antwort2

In meiner Frage war der Hostname einfach eine beliebige Zeichenfolge, normalerweise ns1gefolgt ns2von <website without the http://www.> z. B. wenn Ihre Website ist, swag.orgkönnen Sie ns1.swag.orgin Ihren eigenen DNS-Servereinstellungen erstellen und dann den „Hostnamen“ ns1.swag.orgin Ihrem Registrar eingeben. Sie benötigen (normalerweise) 2 DNS-Server, also erstellen Sie einen weiteren „Hostnamen“ ns2.swag.orgund geben diesen ebenfalls ein. Dann geben Sie bei der IP einfach die öffentliche IP-Adresse Ihres PCs ein, auf dem der DNS-Server gehostet wird (die Sie auch bei dem ns1.swag.orgEintrag in den Technitium/DNS-Einstellungen eingegeben haben).

Unten sehen Sie ein Beispiel, wie Sie dies alles mit Bildern erledigen können.

Überprüfte Einstellungen zum Hosten Ihres eigenen DNS-Servers:

  1. Kurz gesagt, Sie geben diese Einstellungen in Ihr Technitium-Einstellungsfenster ein (ersetzen Sie das your ipdurch die öffentliche IP-Adresse Ihres Computers/Hosts/des Geräts, auf dem Sie Ihre Website hosten). (Das A ns1.<yourwebsite>` ist ein Verbindungseintrag, der dem Computer, der die Leute mit Ihrer Website verbindet, mitteilt: „Wenn Sie nach diesem Hostnamen/dieser Website suchen, können Sie sich diese IP ansehen, um den Hostnamen/die Website zu finden.“ (Dann würde es jedoch in eine Endlosschleife geraten, also sagen Sie ihm: „OK, hör hier auf, du hast die Website unter dieser IP gefunden.“)

Die DNS-Einstellungen auf Ihrem PC in Ihrem Technitium-Host.

  1. Erstellen Sie dann den benutzerdefinierten DNS-Eintrag bei Ihrem Domain-Registrar. Dies wird bei jedem Domain-Verkäufer anders gemacht. Dies ist das Beispiel für Namecheap. Kurz gesagt, Sie möchten den Hostnamen Ihres DNS-Servers eingeben (wenn Sie ns1.<yourwebsite adres>ihn in Technitium eingeben, geben Sie diesen zusammen mit der öffentlichen IP-Adresse Ihres Computers ein).

Eintragen Ihres DNS-Servers in Ihrem Registrar

  1. Sie können überprüfen, ob Ihr DNS-Server/Glue-Eintrag für die IP korrekt eingegeben wurde, indem Sie nach folgendem suchen: ns1oder ns2(wenn Sie Folgendes eingegeben haben ns1.<yourwebsite>):

Überprüfen Sie, ob Ihre DNS-Server korrekt eingegeben wurden

  1. Vergessen Sie nicht, in den Website-Einstellungen auch Ihren eigenen benutzerdefinierten DNS auszuwählen. Andernfalls haben Sie auf Ihrem lokalen DNS-Server alles richtig konfiguriert und dem Registrar gesagt: „Hey, beim benutzerdefinierten DNS schaut euch diese IP für meinen eigenen DNS-Server an.“ Am Ende sucht der Registrar jedoch immer noch auf seinem eigenen Standard-DNS-Server (wo er Ihre IP nicht findet, dafür müssen Sie bezahlen).

Wählen Sie Ihren persönlichen/benutzerdefinierten DNS-Server in Ihren Registrareinstellungen

Anmerkungen

  1. Diese Einstellungen erlauben noch nicht https://www.yourwebsite.something. Dafür braucht man ein SSL-Zertifikat, das bekommt man kostenlos bei openssl und Technitium unterstützt zwar https. Das habe ich allerdings noch nicht implementiert.
  2. Eine detailliertere und ausführlichere Anleitung finden Sie unter:https://github.com/at-0/DnsServerzusammen mit dem Open Source-DNS-Server Technitium, der von jemand anderem erstellt wurde, habe ich ihn einfach geforkt und Anweisungen hinzugefügt.

verwandte Informationen