Ich kann nicht per IP auf die Website zugreifen, aber ich kann über eine vollqualifizierte Domäne zugreifen

801
catalin

Es scheint also, dass ich eine Website nicht nach IP durchsuchen kann, aber ich kann ihren Hostnamen verwenden.

C:\Users\c>nslookup www.example.com Non-authoritative answer: Name: cx-cdn-bre.gss.consultix.net Addresses: 62.168.203.241 62.168.202.241 

Beim Versuch, auf 62.168.203.241 zuzugreifen, wird ein "nginx Internal Server Error" angezeigt. Wenn ich jedoch auf www.example.com zugreifen, wird die Seite geladen. Wie ist das möglich?

0
Es ist wahrscheinlich, dass mehrere Domänen von demselben Server bereitgestellt werden. In diesem Fall ist der Server auf die Header der Anforderung angewiesen, um anzugeben, welche Website bedient werden soll. Wenn kein Standard konfiguriert ist, wird ein Serverfehler ausgegeben. Worthwelle vor 6 Jahren 6
Apache, Nginx und IIS untersagen den direkten Zugriff auf Websites über IP-Adressen, um bösartige Lösungen zu verhindern. Im Allgemeinen dürfen Websites nicht direkt über IP-Adressen zugreifen. Einige Websites beschränken den Zugriff nicht auf IP-Adressen. Wenn IP-Adressen für den Zugriff auf Websites verwendet werden, werden IP-Adressen an die entsprechenden Domänennamen weitergeleitet. Natürlich können Sie an Apache, Nginx und IIS Anpassungen vornehmen, um bestimmten Websites den direkten Zugriff über IP-Adressen zu ermöglichen. S.Leon vor 6 Jahren 0

3 Antworten auf die Frage

5
Keltari

Dafür gibt es verschiedene Gründe. Hier sind nur ein paar:

  • Hostheader - Kurz gesagt, der Webserver kann mehrere Websites auf einer einzigen IP-Adresse hosten. Ohne den Domänennamen kann die richtige Website nicht angezeigt werden.

  • Load Balancing oder ähnliches Gerät - Die IP-Adresse ist möglicherweise nicht für eine Website bestimmt, sondern für einen Load Balancer, der die Netzwerklast auf andere Geräte verteilt.

  • Namensauflösung - Die Namensauflösung in IP wurde geändert. Angenommen, die Adresse der Website hat sich geändert und Sie haben sie manuell in Ihre HOSTS-Datei eingegeben, um zur richtigen IP-Adresse zu gelangen.

Ist der Load-Balancer-Fall nicht immer dasselbe "Host-Header-Problem"? grawity vor 6 Jahren 1
@ grawity Ich führe nur verschiedene Gründe aus. Keltari vor 6 Jahren 0
Du hast recht. Es liegt an den Headern und der virtuellen Host-Konfiguration. Grundsätzlich sendete der Hostheader beim Anfordern der GET-Methode die IP-Adresse, und der Server erwartete den Hostnamen. Daher lehnte die virtuelle Host-Konfiguration des Servers meine Anfrage ab und warf mir einen "internen Serverfehler". Ich konnte es mit BurpSuite testen. Ich habe die IP angefordert und den Hostnamen im Hostheader übergeben, und die Seite wurde erfolgreich geladen. Ich habe auch das Gegenteil getestet, den FQDN angefordert und den Hostheader mit der IP geändert, und ich habe den gleichen "internen Serverfehler" erhalten. catalin vor 6 Jahren 0
4
ivanivan

Sowohl Apache als auch nginx (nicht sicher über andere ...) können mehrere Sites von derselben IP-Adresse aus bedienen, basierend auf dem Hostnamen, der zum Verbinden und Anfordern der Datei (en) verwendet wird.

Wenn Sie jedoch über die IP-Adresse auf den Server zugreifen, muss ein virtueller Host definiert sein, um den verwendeten Namen (die IP-Adresse) zu bedienen. Die Tatsache, dass der Server einen Fehler generiert, zeigt an, dass in der Konfiguration des Servers etwas "Falsches" vorliegt. Entweder ist er nicht dazu eingerichtet, auf die IP zu reagieren, oder ob er reagiert und ein PHP oder ein anderes Skript bereitstellt Dieses Skript hat Probleme eines bestimmten Typs.

Du hast recht. Es ist die virtuelle Hostkonfiguration. Grundsätzlich sendete der Hostheader beim Anfordern der GET-Methode die IP-Adresse, und der Server erwartete den Hostnamen. Daher lehnte die virtuelle Host-Konfiguration des Servers meine Anfrage ab und warf mir einen "internen Serverfehler". Ich konnte es mit BurpSuite testen. Ich habe die IP angefordert und den Hostnamen im Hostheader übergeben, und die Seite wurde erfolgreich geladen. Ich habe auch das Gegenteil getestet, den FQDN angefordert und den Hostheader mit der IP geändert, und ich habe den gleichen "internen Serverfehler" erhalten. catalin vor 6 Jahren 0
-3
FollowerOfLelouch

Die IP könnte zwar auf den Server verweisen, aber der Hostname verweist lediglich auf eine Domäne, bei der es sich um eine Unterdomäne handeln könnte, die eine andere IP-Adresse haben könnte.

Eine Domain hat 132.21.12.21 als IP-Adresse (z. B. wird die Nummer gebildet). Eine Subdomain (dh sie hat den gleichen Haupt-Hostnamen und dann etwas hinzugefügt) könnte insgesamt eine andere IP-Adresse haben und sich daher auf einem anderen Server befinden.

Auch Domains können es auch machen, so dass Sie beispielsweise aus Sicherheitsgründen nur durch ihre vorgesehenen Orte in diese einsteigen können.

Sie müssen darüber nachdenken, wie Minengebäude aus verschiedenen Blöcken bestehen.

Bearbeitet, um dem Fragesteller einen Gedanken hinzuzufügen: Sie wissen, dass es Inhalte gibt, die flüchtig und in verschiedenen Teilen richtig sind? Zum Beispiel Peer-to-Peer, Bittorrent usw. Es gibt sogar Botnets, die Peer-to-Peer-Programme verwenden, die nirgends und überall gleichzeitig sind, und Websites, auf denen der Inhalt durch Peer-to-Peer-Inhalte angezeigt wird. Ich kann nur die Antwort angeben, die Sie möchten.

@FollowerOfLelouch - Sie sollten Ihre Antwort bearbeiten und verbessern, anstatt Kommentare abzugeben. Ramhound vor 6 Jahren 3
@FollowerOfLelouch: Die Sache ist, deine "Erklärungen" wiederholen immer dasselbe _von OPs Frage aus. _ Warum sagt Fastly "unbekannte Domäne"? Das ist keine Erklärung. so war das OP schon _asking_. grawity vor 6 Jahren 1