W jaki sposób serwery internetowe wiedzą, czy korzystasz z bezpośredniego dostępu do adresu IP, czy nie?
Zwykle wpisujemy adres strony internetowej, którą chcemy wyświetlić, ale czy serwer internetowy rzeczywiście "wie", gdybyśmy zamiast tego używali bezpośredniego adresu IP? Dzisiejszy post z pytaniami i odpowiedziami dla SuperUser zawiera odpowiedź na pytanie zagubionego czytelnika.
Dzisiejsza sesja pytań i odpowiedzi przychodzi do nas dzięki uprzejmości SuperUser - poddziału Stack Exchange, opartego na społecznościach grupowania witryn z pytaniami i odpowiedziami.
Zdjęcie dzięki uprzejmości Cory M. Grenier (Flickr).
Pytanie
Czytnik SuperUser Joseph A. chce wiedzieć, w jaki sposób serwery internetowe mogą stwierdzić, czy korzystasz z bezpośredniego dostępu do adresu IP, czy nie:
Niektóre serwery WWW, do których uzyskuje się dostęp za pomocą adresu IP, zwracają błąd, że bezpośredni dostęp do adresu IP jest niedozwolony. Od jakiegoś czasu zastanawiam się, jak to działa.
Czy przeglądarka zawsze rozpoznaje adres IP i łączy się z nim? Bezpośredni dostęp do adresu IP to właśnie pomijanie DNS, prawda? W jaki sposób zdalny serwer wie, że pominieliśmy DNS?
W jaki sposób serwery internetowe wiedzą, czy korzystasz z bezpośredniego dostępu do adresu IP, czy nie?
Odpowiedź
SuperUser contributor iAdjunct ma dla nas odpowiedź:
Aby odpowiedzieć na twoje pytanie o to, jak wie, ma to związek z tym, co przeglądarka wysyła do serwera. Masz rację, że system zawsze rozpoznaje adres IP, ale przeglądarka wysyła adres URL, do którego próbujesz uzyskać dostęp w nagłówku HTTP.
Oto przykładowy nagłówek znaleziony online, zmodyfikowany tak, aby wyglądał, jakbyś używał przeglądarki Firefox w systemie Windows i wpisał apple.com na pasku adresu:
Oto jak wyglądałby nagłówek, gdybyś użył jego adresu IP:
Oba te elementy zostaną wysłane na ten sam adres IP przez gniazdo, ale przeglądarka poinformuje serwer internetowy o tym, do czego uzyskał dostęp. Czemu? Ponieważ serwery WWW o tym samym adresie IP mogą hostować wiele stron internetowych i udostępniać różne strony dla każdego z nich. Nie może rozróżnić, kto chce, która strona po adresie IP, ponieważ wszystkie mają tę samą, ale może je odróżnić przez nagłówek HTTP.
Czy masz coś do dodania do wyjaśnienia? Dźwięk w komentarzach. Chcesz przeczytać więcej odpowiedzi od innych użytkowników Stack Exchange, którzy znają się na technologii? Sprawdź cały wątek dyskusji tutaj.