Woher wissen Webserver, ob Sie direkten IP-Adresszugriff verwenden oder nicht?

Inhaltsverzeichnis:

Video: Woher wissen Webserver, ob Sie direkten IP-Adresszugriff verwenden oder nicht?

Video: Woher wissen Webserver, ob Sie direkten IP-Adresszugriff verwenden oder nicht?
Video: Top 5 - Die besten Sonos Tipps 2024, März
Woher wissen Webserver, ob Sie direkten IP-Adresszugriff verwenden oder nicht?
Woher wissen Webserver, ob Sie direkten IP-Adresszugriff verwenden oder nicht?
Anonim
Normalerweise geben wir einfach die Adresse einer Website ein, die wir anzeigen möchten, aber würde ein Webserver tatsächlich "wissen", wenn wir stattdessen die direkte IP-Adresse verwenden? Der heutige Q & A-Beitrag von SuperUser enthält die Antwort auf eine verwirrte Leserfrage.
Normalerweise geben wir einfach die Adresse einer Website ein, die wir anzeigen möchten, aber würde ein Webserver tatsächlich "wissen", wenn wir stattdessen die direkte IP-Adresse verwenden? Der heutige Q & A-Beitrag von SuperUser enthält die Antwort auf eine verwirrte Leserfrage.

Die heutige Question & Answer-Sitzung wird von SuperUser zur Verfügung gestellt - einer Unterteilung von Stack Exchange, einer Community-basierten Gruppierung von Q & A-Websites.

Foto mit freundlicher Genehmigung von Cory M. Grenier (Flickr).

Die Frage

SuperUser-Leser Joseph A. möchte wissen, wie Webserver erkennen können, ob Sie direkten IP-Adresszugriff verwenden oder nicht:

Some web servers, when accessed using their IP address, return an error that direct IP address access is not allowed. I have been wondering for some time how this works.

Does a browser always resolve the IP address and connect to it? Direct IP address access is just skipping DNS altogether, right? How does a remote server even know that you skipped DNS?

Woher wissen Webserver, ob Sie direkten IP-Adresszugriff verwenden oder nicht?

Die Antwort

SuperUser-Mitwirkender iAdjunct hat die Antwort für uns:

To answer your question of how it knows, it has to do with what your browser sends the web server. You are right that the system always resolves it to an IP address, but the browser sends the URL you attempted to access in the HTTP header.

Here is a sample header that I found online, modified to look as though you used Firefox on Windows and typed apple.com into the address bar:

Here is what the header would look like if you used its IP address:
Here is what the header would look like if you used its IP address:
Both of these would be sent to the same IP address over a socket, but the browser tells the web server what it accessed. Why? Because web servers with the same IP address may host multiple websites and give different pages for each. It cannot distinguish who wants which page by IP address because they all have the same one, but it can distinguish them by the HTTP header.
Both of these would be sent to the same IP address over a socket, but the browser tells the web server what it accessed. Why? Because web servers with the same IP address may host multiple websites and give different pages for each. It cannot distinguish who wants which page by IP address because they all have the same one, but it can distinguish them by the HTTP header.

Haben Sie etwas zur Erklärung hinzuzufügen? Ton aus in den Kommentaren. Möchten Sie mehr Antworten von anderen technisch versierten Stack Exchange-Benutzern lesen? Hier geht es zum vollständigen Diskussionsthread.

Empfohlen: