Sie können eine Website auf einem Heimsystem hosten, wenn Sie möchten. Es gibt jedoch eine Einschränkung. Einige Internetdienstanbieter (ISPs) erlauben ihren Kunden nicht, ihre eigenen Server zu hosten, während andere dies zulassen. Ein ISP, der Heimanwendern nicht erlaubt, ihre eigenen Server zu hosten, blockiert möglicherweise den Datenverkehr an den Ports, die üblicherweise von Servern verwendet werden. Beispielsweise kann jemand daran gehindert werden, seinen eigenen Mailserver zu betreiben, indem Verbindungen vom Internet zu Port 25 an den IP-Adressen blockiert werden, die er Privatbenutzern zuweist. Ebenso könnte es jemanden verhindern , von ihrem eigenen Web-Hosting - Server des Standardblockierungs Port für verwendet HTTP , Port 80, und der Standardport verwendet für HTTPS, Port 443. Jemand kann einen solchen Block möglicherweise umgehen, indem er einen Webserver auf einem nicht standardmäßigen Port ausführt. Wenn der Webserver beispielsweise so konfiguriert wurde, dass er auf Port 7080 auf HTTP-Verbindungen wartet, und Sie diese Portnummer allen Personen zur Verfügung stellen könnten, die Ihre Site besuchen, könnten sie dennoch Zugriff auf den Server erhalten. Anstatt http://www.example.com/sompage.html oder http://10.0.0.5/somepage.html zu verwenden , können Besucher der Website beispielsweise http://www.example.com:7080/ verwenden. somepage.html oder http://10.0.0.5/sompage.html . Obwohl selbst dieser Verkehr von einem ISP blockiert werden könnte.
Diese Lösung funktioniert möglicherweise, wenn Sie erwarten, dass Ihre Website nur von wenigen Freunden besucht wird, ist jedoch möglicherweise problematischer, wenn Sie hoffen, ein weltweites Internetpublikum für Ihre Website zu haben, da die meisten Benutzer es nicht gewohnt sind, beim Besuch eine Portnummer anzugeben eine Seite. Wenn Sie jedoch von anderen Websites aus auf Ihre Site verlinken, funktioniert der Link, solange die Portnummer enthalten ist.
Angenommen, der ISP hindert Sie nicht daran, Ihren eigenen Webserver zu hosten. Sie müssen Ihren Router so konfigurieren, dass Datenverkehr für den Standard-HTTP-Port und möglicherweise HTTPS, falls Sie dieses Protokoll ebenfalls verwenden, an die interne private IP-Adresse des Webservers in Ihrem lokalen Netzwerk (LAN) weitergeleitet wird . Dies ist erforderlich, da die meisten Heimanwender über einen Router verfügen, der die Netzwerkadressübersetzung für die Kommunikation zwischen Systemen hinter dem Router auf der LAN- Seite und Systemen auf der "äußeren", dem Internet zugewandten Seite des Routers, dh dem Wide Area Network (WAN), ausführt ) . Das heißt, sie haben eine externe öffentliche IP-Adresse für den Router, es können jedoch mehrere private IP-Adressen vorhanden seinfür Systeme hinter dem Router. Beispielsweise haben Sie möglicherweise einen Laptop mit einer Adresse von 192.168.0.4 und ein Desktop-System mit einer IP-Adresse von 192.168.0.5 hinter dem Router. Diese privaten IP-Adressen werden nicht über das Internet weitergeleitet. Ein Heimrouter führt normalerweise NAT durch, damit externe Systeme, die nur eine öffentliche IP-Adresse sehen, mit Systemen hinter einem Router mit privaten IP-Adressen kommunizieren können.
Die meisten Heimrouter bieten die Möglichkeit, Netzwerkadressen und Portadressen zu übersetzen, und die Einrichtung ist normalerweise recht einfach. Sie müssen nur wissen, dass Sie dies tun müssen. Einige Router verfügen möglicherweise über eine DMZ- Einstellung (Demilitarized Zone) , mit der Sie festlegen können, dass alle Verbindungen, die von außerhalb des Routers stammen, zu einem bestimmten System im Inneren des Routers führen. Wenn Sie möchten, dass auf Ihren Heimserver über NAT / PAT zugegriffen werden kann, müssen Sie ihm wahrscheinlich eine statische IP-Adresse zuweisen, anstatt eine, die sich möglicherweise ändert, da er über das DHCP (Dynamic Host Configuration Protocol) zugewiesen wird , damit der Router dies jederzeit kann Weiterleiten eingehender Verbindungen an das richtige System.
Zusätzlich zu der IP-Adresse von Systemen auf der internen Seite Ihres Routers, die sich möglicherweise ändert, weist Ihr ISP bei Verwendung einer Heimnetzwerkverbindung wahrscheinlich auch die externe IP-Adresse des Routers über DHCP zu. Angenommen, es ist xxx.xxx.10.250. Morgen kann es xxx.xxx.10.251 sein. Dies hängt von der "Lease-Zeit" ab, die der ISP verwendet, um seinen Kunden IP-Adressen über DHCP zuzuweisen. Die Lease-Zeit kann einige Stunden, einige Tage, einen Monat usw. betragen. Wenn Sie also Personen mitteilen, dass Ihr Webserver unter xxx.xxx.10.250 erreichbar ist, müssen Sie ihnen bei jeder Änderung die neue Adresse mitteilen. Bei einigen Systemen kann es sein, dass Ihr ISP Ihnen zwar keine statische, sondern eine dynamische IP-Adresse zur Verfügung stellt, diese jedoch unverändert bleibt, solange Sie den Router nicht ersetzen. Zum Beispiel für meinen Internetdienst zu Hause nichtMedia Access Control- Adresse von einem neuen Router.
Selbst wenn sich Ihre IP-Adresse häufig ändert, können Sie möglicherweise eine statische IP-Adresse vom ISP erwerben. Einige verkaufen eine statische IP-Adresse gegen eine monatliche Gebühr an Privatanwender, andere nicht.
Eine Lösung, die ich verwende, wenn ich zur Fehlerbehebung eine externe Verbindung zum System eines Heimanwenders herstellen oder einen Heimserver einrichten muss, ist die Verwendung des Dynamic Domain Name System . Auf diese Weise können Sie mit einem vollqualifizierten Domänennamen (FQDN) , z. B. martijn.example.com, auf einen Heimserver zugreifen, auch wenn die externe IP-Adresse des Routers variiert. Ich benutze No-IP.com , aber es gibt auch andere DDNS-Dienste. DDNS funktioniert so, dass Sie Software auf einem System auf der internen LAN-Seite des Routers installieren, das regelmäßig mit einem DDNS-Dienstanbietersystem kommuniziert, sodass der DDNS-Anbieter die aktuelle externe IP-Adresse kennt, von der aus das System kommuniziert . Der DDNS-Anbieter aktualisiert dann sein Domain Name System (DNS).Server, bei denen es sich um Server handelt, die vollqualifizierte Domänennamen wie martijn.example.com in IP-Adressen übersetzen, um die aktuelle externe IP-Adresse Ihres Routers wiederzugeben. Jeder, der martijn.example.com in seinen Browser einfügt, wird an die richtige IP-Adresse weitergeleitet. Einige Router verfügen über eine Konfigurationsoption, mit der Sie einen DDNS-Dienstanbieter angeben können, sodass Sie möglicherweise nicht einmal Software auf einem Heimsystem installieren müssen, damit dies funktioniert. Sie benötigen lediglich ein Konto bei einem DDNS-Anbieter.
DDNS-Anbieter berechnen Ihnen eine Gebühr für die Verwendung Ihres eigenen Domainnamens, z. B. martijn.com, wenn Sie Ihren eigenen Domainnamen erwerben möchten. Möglicherweise können Sie einen DDNS-Dienst sogar kostenlos nutzen, z. B. bietet No-IP einen kostenlosen Dienst an , wenn Sie bereit sind, einen vom DDNS-Anbieter bereitgestellten Domainnamen zu verwenden. Wenn der Anbieter beispielsweise example.com besitzt, können Sie martijn.example.com möglicherweise kostenlos verwenden, obwohl Sie für martijn.com bezahlen müssten. Das heißt, Sie können einen bestimmten Hostnamen angeben, z. B. martijn, der mit einem ihrer Domainnamen verwendet werden soll.
Ich habe eine solche Konfiguration seit vielen Jahren für eine Website zu Hause verwendet. Wenn Sie über eine ziemlich zuverlässige Internetverbindung verfügen und Ihr ISP den Zugriff auf Heimserver nicht blockiert, kann dies für Websites mit geringem Datenverkehr recht gut funktionieren. Zum Beispiel, wenn Sie nicht erwarten, dass Ihre Site jeden Tag mehr als ein paar hundert Besucher hat und Ihre verfügbare Bandbreite noch nicht voll ist. Es gibt jedoch einige Überlegungen, die Sie kennen müssen, z. B. die oben genannten, wenn Sie einen Heimserver einrichten, die einige dazu veranlassen können, die Verwendung eines Hosting-Dienstes zu empfehlen.
Obwohl eine solche Konfiguration sogar für kleine oder private Unternehmen verwendet werden kann, würde ich sie nicht für kleine oder private Unternehmen empfehlen, wenn der Zugriff auf Ihre Website kritisch ist und sich Ihre externe IP-Adresse häufig ändern kann, seit wann jemand Besuche Ihre Site Ihr System speichert Ihre IP-Adresse zwischen, sodass das System beim nächsten Besuch der Site die IP-Adresse, die zum Namen gehört, nicht erneut nachschlagen muss. Es gibt eine Zeit zum Leben (TTL)Wert für solche zwischengespeicherten DNS-Einträge, damit sie ablaufen und das System die IP-Adresse erneut nachschlägt. Möglicherweise bleiben sie jedoch viele Minuten oder sogar Stunden auf einem System. Auch andere DNS-Server zwischenspeichern Einträge. Angenommen, Mary ist eine Comcast-Kundin, deren System eine Verbindung zu martijn.example.com herstellt. Ihr System fragt möglicherweise die Comcast-DNS-Server ab, um die IP-Adresse für die Website zu erhalten. Jetzt kennen die Comcast-Server die IP-Adresse, die zum FQDN gehört. Ein anderer Comcast-Kunde, Bill, möchte ebenfalls Ihre Website besuchen. Er hat Ihre Site noch nie zuvor besucht, daher hat sein System die Übersetzung zwischen martijn.example.com und seiner IP-Adresse nicht zwischengespeichert. Wenn sein System jedoch einen Comcast-DNS-Server abfragt, wenn dieser Server die mit dem verknüpfte Adresse bereits kennt FQDN, es wird die Antwort aus seinem Cache liefern.
Wenn sich Ihre IP-Adresse ändert, obwohl Ihr Server oder Ihr Router innerhalb einer Minute die DNS-Server des DDNS-Anbieters aktualisieren, erhalten andere möglicherweise immer noch die alte IP-Adresse, sodass Ihre Website für sie erst zugänglich ist, wenn ihr System oder die DNS-Server ihres Internetdienstanbieters Ruft die neue, aktuelle IP-Adresse ab. Aufgrund des Caching und abhängig von der TTL-Einstellung ist es möglich, dass einige Systeme noch viele Stunden später oder sogar am nächsten Tag versuchen, eine Verbindung zur alten IP-Adresse herzustellen. Dies ist möglicherweise kein ernstes Problem, wenn Sie Ihre Website nur für Familie und Freunde zugänglich machen möchten. Wenn Sie jedoch ein Unternehmen betreiben, ist dies wahrscheinlich ein inakzeptables Problem.
Update zum Adresskommentar:
Wenn Sie einen Domainnamen von einem Domainnamen-Registrar kaufen , haben Sie häufig die Möglichkeit, eine IP-Adresse oder Adressen für Systeme anzugeben, auf die über den Domainnamen an diesen Adressen zugegriffen werden soll, oder Sie können den Namen vorübergehend "parken", sodass er darauf verweist zu Systemen des Registrars. Wenn Sie bereit sind, Ihre eigene IP-Adresse anzugeben, bieten Registrare normalerweise DNS-Dienste an, mit denen Sie die mit Domainnamen verknüpften IP-Adressen jederzeit ändern können. In vielen Fällen können Sie über ihren DNS-Dienst auch den TTL-Wert anpassen, dh die Zeit, die ein System die mit einem FQDN verbundene IP-Adresse zwischenspeichern sollte. Wenn Sie also der Meinung sind, dass Sie die IP-Adresse häufig ändern müssen, geben Sie eine kürzere TTL an. Der Registrar hat möglicherweise eine Mindest-TTL, die Sie angeben können, z. B. 5 Minuten oder 30 Minuten. Der Wert wird normalerweise in Sekunden angegeben, sodass eine TTL von 5 Minuten als 300 angezeigt wird.
Wenn Sie also den DNS-Dienst des Registrars verwenden, müssen Sie sich bei dem Registrar in Ihrem Konto anmelden und die IP-Adresse oder Adressen, die Ihrem Domain-Namen zugeordnet sind, bei jeder Änderung manuell ändern. Alternativ können Sie auch einen DDNS-Dienstanbieter verwenden, damit die Änderung der Übersetzung vom vollqualifizierten Domänennamen zur IP-Adresse automatisch erfolgt. Sie können den Domainnamen entweder über den DDNS-Dienstanbieter erwerben und daher standardmäßig dessen DNS-Server verwenden oder den Domänennamen von einem anderen Registrar erwerben und die IP-Adressen für die Nameserver des DDNS-Anbieters auf der Konfigurationsseite für Ihre von der Domain bereitgestellte Website angeben Namensregistrar
Eine andere Möglichkeit wäre, einen eigenen DNS-Server zu betreiben. Wenn Sie einen Domainnamen kaufen, können Sie die Nameserver angeben, die damit verwendet werden sollen, entweder die Nameserver des Registrars oder einige andere Nameserver. Sie könnten beispielsweise dasselbe System, das ein Webserver ist, als DNS-Server verwenden. Sie müssten sicherstellen, dass der Server über Port 53, den Standardport für DNS, für die UDP- und TCP- IP-Protokolle zugänglich ist . Sie können dann auf Ihrem Server ein Skript / Programm erstellen, das regelmäßig überprüft, welche externe IP-Adresse Ihrem Router zugewiesen ist, und die Zonendatei aktualisiertfür Ihren Domainnamen auf Ihrem DNS-Server. Das Einrichten eines DNS-Servers ist jedoch viel komplizierter als das Verlassen auf einen DDNS-Anbieter. Sie können Tutorials zum Einrichten eines DNS-Servers online finden, wenn Sie diesen komplizierteren Weg verfolgen möchten. BIND wird häufig für DNS-Dienste auf Linux-Systemen verwendet. Microsoft-Serverversionen von Windows, z. B. Windows Server 2012, verfügen über einen von Microsoft bereitgestellten DNS-Dienstdas kann auch verwendet werden. Ich würde vorschlagen, mit dem DNS-Dienst eines Registrars zu beginnen, der normalerweise kostenlos ist, wenn Sie einen Domainnamen vom Registrar gekauft haben, selbst wenn Sie dachten, Sie möchten diesen schwierigeren Weg einschlagen, um Ihren eigenen DNS-Server zu betreiben. Wenn jemand nicht wissen möchte, wie die Grundlagen des Internets wie DNS-Server funktionieren, ist es für die meisten Menschen wahrscheinlich der beste Weg, sich an einen Registrar oder die DNS-Server eines DDNS-Dienstanbieters zu halten. Sie können DNS-Dienste auch über Unternehmen erhalten, die sich auf DNS-Dienste spezialisiert haben, z. B. OpenDNS .
Beachten Sie jedoch, dass selbst wenn Sie einen kurzen TTL-Wert angeben und über automatische Aktualisierungen verfügen, zwischen dem Zeitpunkt, zu dem Sie eine neue IP-Adresse erhalten, und dem Zeitpunkt, zu dem alle Systeme im Internet die Verwendung einstellen, möglicherweise eine größere Verzögerung als bei der TTL besteht die alte IP-Adresse und verwenden Sie die neue. Siehe beispielsweise den GoDaddy-Artikel, Welche Faktoren beeinflussen die DNS-Ausbreitungszeit? (GoDaddy ist ein Domainnamen-Registrar), was erklärt, warum es möglicherweise bis zu 48 Stunden dauern kann, bis die neue Adresse für alle Systeme im Internet verfügbar ist. In dem Artikel heißt es beispielsweise: "Einige ISPs ignorieren die TTL-Einstellungen und aktualisieren ihre zwischengespeicherten Datensätze nur alle zwei bis drei Tage."