Ako dokážu webové servery vedieť, či používate priamy prístup k adresám IP alebo nie?
Zvyčajne len zadáme adresu webovej stránky, ktorú chceme zobraziť, ale webový server by skutočne "vedel", ak by sme použili priamu IP adresu? Dnešný príspevok SuperUser Q & A má odpoveď na otázku zmeteného čitateľa.
Dnešná relácia otázok a odpovedí sa k nám pridelí zdvorilosťou SuperUser - podskupiny Stack Exchange, zoskupenia webových stránok typu Q & A.
Foto s láskavým dovolením Cory M. Grenier (Flickr).
Otázka
Čítačka SuperUser Joseph A. chce vedieť, ako môžu webové servery zistiť, či používate priamy prístup k IP adresám alebo nie:
Niektoré webové servery, keď pristupujú pomocou svojej IP adresy, vrátia chybu, ktorá neumožňuje priamy prístup k IP adrese. Už dávno som premýšľal, ako to funguje.
Prehliadač vždy vyrieši adresu IP a pripája sa k nej? Priamy prístup na IP adresu presne preskočí DNS, nie? Ako vzdialený server dokonca vie, že ste preskočili DNS?
Ako webové servery vedia, či používate priamy prístup k IP adresám alebo nie?
Odpoveď
Sprostredkovateľ SuperUser iAdjunct má pre nás odpoveď:
Ak chcete odpovedať na otázku, ako to vie, má to do činenia s tým, čo váš prehliadač pošle webový server. Máte pravdu, že systém ho vždy rieši na adresu IP, ale prehliadač pošle adresu URL, ktorú ste sa pokúsili získať v hlavičke HTTP.
Tu je ukážka hlavičky, ktorú som našiel on-line, upravený tak, aby vyzeral, ako by ste používali Firefox na Windows a zadali apple.com do adresného riadku:
Tu je to, ako hlavička by vyzeralo, keby ste použili svoju adresu IP:
Obaja budú odoslané na rovnakú adresu IP cez soket, ale prehliadač informuje webový server o tom, čo získal. Prečo? Pretože webové servery s rovnakou adresou IP môžu hostiť viaceré webové stránky a dávať rôzne stránky pre každú z nich. Nedá sa rozlíšiť, kto chce, ktorú stránku IP adresu, pretože všetci majú rovnakú adresu, ale môže ich rozlíšiť hlavičkou HTTP.
Máte niečo doplniť vysvetlenie? Znie to v komentároch. Chcete sa dozvedieť viac odpovedí od iných používateľov technickej úrovne Stack Exchange? Pozrite sa na celý diskusný príspevok tu.