V tomto ohledu je třeba se asi vrátit do doby vzniku sítě Internet a snad také k původní představě o koncepci takovéto sítě. Všeobecně se pokládá za předchůdce Internetu síť ARPANet ( Advanced Research Projects Agency Network ), která vznikla v rámci vývojových programů amerického ministerstva obrany. Hlavním cílem asi měla být snaha umožnit komunikaci mezi velitelskými stanovišti i za předpokladu, že některý uzel sítě byl vyřazen (jakýmkoliv způsobem) z činnosti. Odtud myšlenka "přepojování paketů" - v současné terminologii Internetu by se správně mělo hovořit o "routování IP-datagramů", a to jinou cestou, kterou je možno se v tom kterém okamžiku dostat k danému cíli. Co je ale třeba z dnešního pohledu připomenout, jest původní představa ( a to z přelomu 70. a 80. let ), že jednotlivé počítače zapojené v síti jsou počítače multiuživatelské, na kterých může současně běžet více programů (procesů), počítače jsou trvale v provozu a jsou mezi sebou trvale spojeny přenosovými linkami.
Odtud se odvíjí krásná představa sítě Internet, kterou můžeme vyjádřit jako "ideální síť pro programátora", jenž zrovna když chce někde něco naprogramovat, zajde k nejbližšímu počítači (= terminálu počítače ), na němž má uživatelské jméno ( a který je samozřejmě zapojen do Internetu ), přes FTP si může přenést programy, které chce opravit, TELNETem se připojí na ten který počítač, kde pak program odzkouší nebo zpracuje. No a příkaz MAIL má proto, aby mohl kolegům ( v krajním případě i sám sobě ) napsat, co vlastně udělal.
Od poloviny 80.let dochází k prudkému zvyšování počtu počítačů zapojených do sítě Internet. Z velké části je to způsobeno pokrokem v oblasti komunikační techniky, ale i provozovatelností internetových uzlů na finančně dostupných pracovních stanicích ( menších víceuživatelských počítačích ). Někteří autoři dokonce hovoří o exponenciálním růstů internetových uzlů od roku 1985. Internet se tak stává sítí, která začíná uživatelům sloužit jako prostředek k získávání informací. Uživatelé-neprogramátoři se v Internetu nejčastěji propojují přes TELNET do určitého informačního systému ( například rešeršního systému nebo knihovního systému ), kde buď využívají svého uživatelského oprávnění ( placené služby ) anebo použijí obecně zavedené (anonymní) uživatelské jméno nebo ani není třeba takové uživatelské jméno explicite uvádět. K získání volně přístupných informací, jež jsou potřeba ve tvaru souborů ( formuláře, volně přístupné programy, soubory dokumentace apod.), se pak využívá anonymní FTP. To jest FTP , které umožňuje pracovat pod obecně rozšířeným uživatelským jménem anonymous, kde jako heslo k tomuto jménu anonymous je zpravidla vyžadována E-mailová adresa autentického uživatele. Pod uživatelským jménem anonymous lze obvykle využívat jen možností souvisejících s příkazem GET pro přenos souborů k sobě na počítač. Někdy se vyskytují i další omezení, obvykle z důvodů ochran před proniknutím "anonymních uživatelů" k citlivým souborům systému.
Oba popsané způsoby přístupu k informacím vždy ovšem předpokládaly, že
uživatel byl jistým způsobem znalý práce se systémem. Například, aby při
"anonymním FTP" poznal, co je soubor a co adresář. Jistě každý dovede
pochopit, že nezaškolené sekretářce nebude připadat získání připraveného
formuláře přes FTP - anonymous příliš "user-friendly", tedy
jako uživatelsky přívětivé programové vybavení. A asi takto se koncem 80. let
objevuje Gopher . Jeho myšlenka vznikla na vysoké škole
v americké Minesotě ( University of Minnesota [1]
), místo výpisu jmen v adresáři je uživateli nabídnuto menu, kde je na jednom
řádku slovně uvedeno, co daný soubor obsahuje, případně jaké je zaměření
dalšího podadresáře. Uživatel pak získá soubor tak, že jen aktivuje odkaz,
který se za řádkem skrývá, případně se takto dostane na další menu, které
popisuje soubory v podadresáři.
Pojmenování gopher údajně vzniklo z anglického go for -- "přivést"
(soubor). Gopher ale v Americe znamená divokou možná toulavou krysu.
To by asi lépe mohlo ilustrovat typické použití této služby. Programové
vybavení totiž důsledně využívá takzvané nespojované spolupráce
klient-server. Uživatel musí mít na svém počítači k dispozici Gopher
klient-program a ten mu zprostředkuje přístup k těm počítačům v Internetu,
kde je v provozu Gopher server-program. Přitom klient-program si vždy
vyžádá nějaký požadavek od serveru, a jakmile ho obdrží, je veškerá spolupráce
se serverem ukončena. Na Gopher-server se uživatel nijak neloguje a
nepřihlašuje a je jedno, zda následující požadavek přijde od uživatele
během 5 minut nebo druhý den. Na serverech je možné místo přechodu do
jiného adresáře ( podadresáře ) umístit stejným způsobem odkaz také na úplně
jiný Gopher-server. Tím se uživatel (svým klient-programem) může
ocitnout na zcela odlišném počítači v síti Internet, aniž si třeba tuto
skutečnost vůbec uvědomí. Vlastně se takto může "toulat" po přenosových
kanálech různě po světě ( viz
Kapitola 1
příručky Informační služby v počítačových sítích [2] ).
Stejnou myšlenku pak rozvinulo WWW ( vzniklé ze slov: World-Wide Web ) , v němž bylo "sloučeno" menu a získávané soubory do hypertextových souborů. V těch je obsažen celý text, ale zároveň se za zvýrazněnými slovy nebo větami skrývá odkaz na další hypertextový soubor, tak jak to v Gopheru bylo možné jen na úrovni menu. Kromě toho mohou být v hypertextových souborech i obrázky, které se po síti Internet také přenášejí z WWW-serverů . Především grafické možnosti WWW-klientů vedly k velkému rozšíření i oblibě této internetové služby, která se objevila na počátku 90. let. Obdobně Gopheru mohou hypertextové odkazy směřovat na nejrůznější místa v Internetu , nejen na WWW-servery, ale i na Gopher-servery nebo i na místa s anonymním FTP . Pojmenování WWW jako "celosvětové pavučiny" se ukázalo velmi výstižné v tom, že někteří uživatele dnes možnosti WWW zaměňují za celý Internet . Přitom myšlenka "obrázkového" rozšíření Gopheru vznikla v organizaci CERN [3] , evropském výzkumném středisku u Ženevy ( dříve Conseil Europeen pour la Recherche Nucleaire ). Původním cílem byla snaha po vytvoření efektivního prostředku, kterým by bylo možno zpřístupnit především publikace existující v elektronické podobě.
Dosud totiž šlo pohlížet na uživatelské možnosti počítačů zapojených do Internetu symetricky. Co bylo možné z jednoho uzlu Internetu směrem k jinému, to principiálně mělo být možné ( lze říci třeba instalovatelné ) i v opačném směru. Připojování osobních počítačů do Internetu využívaných převážně pro osobní potřeby ( nikoli tedy jako trvale zapojený Linux-ový uzel ) vytváří uživatelské možnosti jen jednosměrně. A to i z těch důvodů, že většina osobních počítačů se vypíná a jako internetové počítače pracují pouze, když jsou zapnuty ( propojeny komunikační linkou ) a je na nich aktivován příslušný software. Přístup k Internetu je z nich ve velké míře takový, že uživatel získává informace (soubory) z "trvalých" uzlů Internetu. Schematicky je pojetí Internetu naznačeno na Obrázku 1 :
1980 --------------------------- -------------------------- | | <|- -|- - - - - -|- -|> | | | | SMTP | | | | SMTP | +------+ | ----|---------------| | | | | | | WWW- | | --+ | | +-------| | | |-------+ |server| | p |_|_ _|_ _ _ _ _ _ _ _ _ _ _ _| T |_ - - -| T |- - - - - - +------+ | u | | | | C | | | | C | | b | | | --- | P | | P | | --+ | | | | | | FTP | | | +-----+ | |_|___|_|dir|< - - - - - - - -|- -|- - - - - -|- -|- - - - - - -|User9| | F9| | | | | | I | | | | I | | | | --+ | | --- +-----+ | P | | P | ----- +-----+ | | | | +------+ | | | | |TELNET | | | | | | --+ | | |User2 | |User1|- -|- -|- - - - - -|- -|->|Prog1| | | S_|_|___|__|(Mail)| +-----+ | | | | | | | | | P | | | +------+ | | | | | | ----- | | O_|_| -----|----------|---------- | --------------------|----- O | _|_ _|_ | _|_ L | | | | | | | | --+ | | | | | | | \_/ \_/ | \_/ | | | | | 1985 | ___ ---------PC | / |___| FTP - | | \___| | anonymous| | |_TCP_/_IP_| <- - - | | 1990 ---------PC ___ | | Netscape |___| \ - - -> | [WWW] | |___/ |_TCP_/_IP_| Obr. 1
TELNET FTP - - - - - - Gopher WWW |
V této souvislosti je nutno uvést, že zvláště v poslední době se v mnohých neakademických organizacích stalo pravidlem, že je uživatelům násilím zamezeno využívat některé internetové funkce. Internet byl z původní sítě ARAPNet do současné podoby doveden především vývojem na půdě amerických vysokých škol a výzkumných institucí. Vyvíjel se jako komunikační síť pro zabezpečení informačních potřeb těchto institucí a pro jejich vzájemnou snadnou spolupráci. Odtud pak pramení některá slabá místa v ochraně dat a před neoprávněnými průniky do jednotlivých operačních systémů. Například typický přenos všech hesel po síti v nekódovaném tvaru, časté až typické využívání systému Unix na internetových uzlech, kde uživatel root pak může cokoliv. Nezneužívání takovýchto slabých míst v ochranách sítě spočívalo především na morálním kreditu uživatelů i vlivu akademického prostředí. S trochou nadsázky se dá říci, že armáda přenechala principy ARPANetu akademické sféře, když zjistila, že koncepce nepočítá s "vnitřním" nepřítelem.
Výrazná komercionalizace sítě Internet v 90. letech pak způsobila, že tento
nedostatek se stal jedním z nejvážnějších problémů sítě Internet. Nejen
že se ztratila původní myšlenka, že z každého počítače Intenetu je možno se
dostat na každý, ale jsou omezovány i další funkce Internetu, které mají
"jednosměrný" charakter získávání údajů z Internetu. Nejčastěji se tak
v poslední době děje pomocí účelových zařízení - firewallů -
v úrovni komunikačního prostředí, jež uživatelům povolují využívat jen
některé internetové funkce, jen vzhledem k některých povoleným portům
[ viz dále ] .
Důvodem je hlavně obava před zneužitím ( možná někomu známých ) slabých
míst aktivovaného programového vybavení, kudy by bylo možno proniknout
k vlastním neveřejným datům. Bohužel se v našich poměrech někdy stává, že
pro všechny uživatele ze všech počítačů jsou povoleny jen ty funkce a možnosti
Internetu, které správce firewallu zná, anebo on sám považuje za potřebné.
A tak se někdy stává, že uživatelům je povoleno pracovat třeba jen s WWW
( port 80 ) , TELNET nemusí být vůbec pro nikoho povolen ani jednosměrně
- do Internetu. A nejčastěji pak není možno používat ( možná nejbezpečnější )
službu Internetu - Gopher ( port 70 ) - s poukazem na to, že se nejedná
o moderní funkci Internetu, s níž by snad už nikdo ani neměl chtít získávat
informace, i když ty jsou dosud stále platné a pro někoho potřebné.
Internet se také často popisuje jako síť sítí .
Konečně i tak bychom mohli do češtiny přeložit slovo inter-net .
Odhlédneme-li od různých násilně vytvořených omezení, lze si představit
v některé organizaci existující počítačovou síť, která je plně přizpůsobena
potřebám a přenosovým požadavkům zde používaného programového vybavení.
Příkladem by mohla být třeba počítačová síť na VŠE , někdy také označovaná
VSENet . Jak umožnit uživatelům této sítě přístup do sítě
v jiné organizaci, kde třeba vůbec nejsou používány ( Novellovské ) LAN-ové
servery ? Internet tento problém řeší z uživatelského pohledu tak,
že jak síť VSENet tak síť v druhé organizaci musí ( kromě jiného )
umožňovat i příkazy typu: TELNET, FTP, MAIL resp. WWW a Gopher. Potom můžeme
tyto sítě považovat za podsítě Internetu s tím, že přístup uživatele
z jedné sítě do druhé je zaručen internetovými funkcemi. ( I když by
podle vlastností obou sítí bylo nad rámec Internetu možno realizovat
třeba i jiné efektivní způsoby propojení. ) Proto někteří lidé pokládají celý
Internet jen za prostředek integrující z komunikačního hlediska jednotlivé
podsítě.
Toto neplatí pro USA , kde Internet vznikal, poslední doména zde odpovídá
resortu. Např. americké vysoké školy mají poslední doménu .edu ,
.gov je vyhrazena pro vládní organizace , .com byla určena pro
komerční organizace. I když do tohoto schématu mohou z důvodů historického
vývoje nesprávně patřit též některé organizace v Kanadě, kde nyní používají
doménu .ca . Jako například univerzita v Torontu, která používá
...toronto.edu i
...utoronto.ca
[4,5] .
V některých zemích analogicky tohoto principu předposlední doména opět
vyjadřuje resort, např. v Polsku používají vysoké školy .edu.pl ,
v Rakousku .ac.at , u nás předposlední doména již znamená organizaci a
je u nás uplatňována zásada, aby nějakým způsobem připomínala název organizace.
Viz tedy naše .vse.cz anebo .cvut.cz , případně .cuni.cz
odvozené z Charles University . Na VŠE zbývající ( tedy první )
doména již specifikuje konkrétní počítač, na Karlově univerzitě je tato
( třetí doména od konce ) přidělována podle fakulty. Na Matematicko-fyzikální
fakultě ještě před .mff.cuni.cz přidávají označení budovy, které se
nalézají v rozdílných částech Prahy, například .karlin , .troja ,
a teprve první ( z pěti jmen ) zde specifikuje konkrétní počítač :
www.karlin.mff.cuni.cz [6]
, www.troja.mff.cuni.cz [7] .
( I když pro zjednodušení nakonec často používají kratší alias-jména. )
Nutno asi ještě poznamenat, že v souvislosti s komercionalizací Internetu se v poslední době začaly objevovat některé spory, jak má či jak může být přidělováno jméno počítače. Velké mezinárodní organizace často nechtějí mít pro adresu své pobočky na konci jména zkratku nějakého zcela bezvýznamného státu, jinde zase vycházejí ze zásady, čím kratší doménové jméno, tím významnější a zavedenější firma. Naštěstí veškerý přenos v Internetu není postaven na doménových jménech, ale používá 32-bitovou číselnou adresaci. Ke každému doménovému jménu se tak nejprve musí zjistit odpovídající číselná hodnota.
Proto je vlastně rychlejší používat v Internetu číselné adresy neboli tak zvané IP-adresy . ( Ty si ale lidé hůře zapamatovávají. ) Převod doménových adres na číselné se v podstatě provádí podle nějaké tabulky, tyto převody zajišťují v Internetu domain-name servery. Jedná se vlastně o služební programy, které jsou nejčastěji v provozu na vyhrazených počítačích. Uživatelem aktivovaný program si od nich sám vyžádá informaci o 32-bitové číselné hodnotě odpovídající doménové adrese. Realizace převodu je taková, aby bylo jedno, zda uživatel doménovou adresu zadal v malých nebo ve velkých písmenech. ( Zároveň to snad i ozřejmuje o něco výše zmiňovanou situaci používání alias-jmen .) Uživatel si takovéto činnosti téměř každého internetového programu všimne až v okamžiku, kdy z nějakého důvodu nefunguje ten domain-name server, na který se jeho program implicitně obrací. ( Obvykle se musí specifikovat v konfiguračním souboru onoho internetového programu.) Někdy může program využít i sekundární name server ( je-li tak v konfiguraci uvedeno ), to ale nemusí být vždy možné anebo mohou být jeho odpovědi zdlouhavé. Potom je nejsnazší, když uživatel přímo zadává číselnou adresu.
Číselné adresy se píší ve tvaru n1.n2.n3.n4 ,
kde každé z čísel ni vyjadřuje
( dekadicky ) číselnou hodnotu reprezentovanou oktetem bitů ( tj. čtyřikrát
8 bitů z celkových 32 ). Každé z čísel v adrese tak musí splňovat podmínku:
0 < ni < 255 . Nejmenší možná
hodnota 0 , tj. všechny bity nulové, a pak největší přípustná hodnota 255 ,
tj. všech 8 bitů naplněných 1 , mají v síti Internetu zvláštní význam.
Velmi stručně řečeno, 0 znamená já ( anebo lépe
"to místo, kde právě jsem" ) a 255 znamená každý .
Číselné adresy s 0 se používají většinou v nestandardním okamžiku, třeba
když je výhodné, aby si program sám doplnil skutečnou číselnou adresu
( například při startu počítače ). Obdobně k použití hodnoty 255 dochází
ve speciálním případě, když je potřeba zajistit vyslání nějakého sdělení
pro všechny počítače v některém místě (segmentu) sítě. ( Podrobnější
informace lze nalézt například
v části 7.
Introduction to the Internet Protocols [8] .)
Zjišťování číselné adresy není až tak jednoduchá záležitost, pokud si uvědomíme, že v Internetu existují milióny doménových jmen. Systém zjišťování a uspořádání doménových adres se v Internetu nazývá DNS - Domain Name System a jeho činnost je normálním uživatelům více méně skryta. Princip DNS spočívá na hierarchické organizaci domén ( a doménových jmen ) s tím, že za každou doménu někdo odpovídá a že v ní pracuje autoritativní domain-name server. Ten musí vědět o všech (autoritativních) domain-name serverech pro (svoje) nižší domény anebo musí sám pro některou poddoménu zajišťovat převod na adresy číselné.
Konkrétně pro doménu .vse.cz se autoritativní name server nalézá na
počítači vse470.vse.cz a za doménu odpovídá Výpočetní centrum.
A protože má být doména zajištěna ještě alespoň jedním hardwarově nezávislým
(autoritativním) name-serverem, je druhý na počítači vse.vse.cz .
Za doménu .cz v současnosti zodpovídá organizace Internet.CZ , což
je bývalá organizace Eunet, která sídlila na VŠCHT.
Každý (autoritativní) domain-name server pro poslední doménu, pro doménu
.cz tedy například ns.anet.cz , by měl již znát všechny
domain-name servery pro kteroukoliv poslední doménu v Internetu. Tak by
mělo být zaručeno, že z hlavního name serveru pro vlastní nejvyšší doménu
se již dá zjistit, na které místo je třeba se nejprve obrátit pro informaci
o zcela neznámé poslední doméně nějaké adresy. A odtud se pak lze postupně
(=hierarchicky) dostat až k (autoritativnímu) name serveru, který by měl
poskytnout žádanou informaci o IP-adrese.
Ale takovéto zjišťování IP-adres (=číselných adres) při každé aktivaci internetového programu je jak trochu zdlouhavé, tak by většinou i zbytečně zatěžovalo síť. Proto se program obvykle obrací na (svůj) nejbližší domain-name server, který mu je většinou již schopen poskytnout odpověď o číselné adrese. Obvykle mívá informace i o sousedních doménách, i když za ně neodpovídá, anebo popsaným způsobem zcela neznámou adresu sám zjistí. Takto zjištěné adresy si pak na nějakou dobu - obvykle týden - ukládá do paměti, neboť je předpoklad, že když se někdo propojoval i třeba na neobvyklé místo v Internetu, pak takovéto spojení bude nejspíš v blízké době ještě několikrát potřebovat.
Problémy logicky nastanou v okamžiku, kdy jsou realizovány jakékoliv změny.
Potom jsou poskytované informace opět správné až za jistou dobu - za 24 hodin,
někdy až za týden. V těchto případech uživateli nezbývá nic jiného, než aby
si zjistil změněnou adresu sám. Zjistit přímo z domain-name serveru číselnou
adresu není pro běžného uživatele Internetu úplně jednoduchou záležitostí.
Nejsnáze tak lze učinit v systému Unix, kde je obvykle k dispozici
příkaz nslookup .
Jinak standardním způsobem získané informace o IP-adresách vypisuje také
příkaz traceroute , který se dá někde zadat i z prostředí WWW .
( Například i na serveru WWW.VSE.CZ .) V MS-DOSu pak uvádí (navíc)
IP-adresu příkaz ping , který slouží k zjišťování
propojitelnosti na daný uzel.
Při hlubším zájmu o problematiku DNS je snad možno odkázat na RFC1034 [9] vysvětlující koncepci a hlavní principy, i když bylo od roku 1987 několikráte doplňováno a rozšiřováno.