Keri sisuni

Teooria 3: Nimed ja hosts-fail

Miks nimed?

Arvutid ühenduvad IP-aadresside järgi, inimesed eelistavad nimesid:

  • nime on lihtsam meelde jätta: plng.ee, mitte numbrijada
  • aadress võib muutuda, nimi jääb samaks: kui server kolib uuele aadressile, muudetakse ainult nime ja aadressi seost, kasutajad ei pea midagi teadma
  • sama nime taga võib olla mitu serverit

Seepärast peab arvuti oskama nime aadressiks teisendada (name resolution).

Kuidas Windows nime üles leiab

Kui kirjutad ping dc01 või brauserisse http://dc01, otsib Windows aadressi selles järjekorras:

# Kust Selgitus
1 Vahemälu (cache) ja hosts-fail Hiljuti leitud nimed ja hosts-faili read. Kui leiab, on kohe vastus.
2 DNS-server Server, mille aadress on võrgukaardi sätetes (meie laboris WS01-l 192.168.50.10)
3 Küsimine kohtvõrgus (LLMNR, NetBIOS) Windows küsib samas võrgus valjult: „kes on dc01?” Töötab ainult samas võrgulõigus ja tulemüür võib selle blokeerida.

Kui ükski ei vasta, saad veateate, näiteks „Ping request could not find host dc01”.

hosts-fail

hosts-fail on tavaline tekstifail kaustas C:\Windows\System32\drivers\etc. Igal real on aadress, tühik (või tabulaator) ja üks või mitu nime. Rida, mis algab märgiga #, on kommentaar.

# Laborivõrk
192.168.50.10    dc01    veeb
192.168.50.20    ws01

Nüüd töötavad nii ping dc01 kui ka http://veeb.

  • Faili muutmiseks on vaja administraatori õigusi.
  • hosts-fail kehtib ainult selles arvutis, kuhu see on kirjutatud.

Milleks hosts-faili päriselt kasutatakse

Olukord Näide
Uue serveri testimine enne, kui DNS-i muudetakse 192.168.50.10 plng.ee: sinu arvutis avaneb uus server, teistel endiselt vana
Labor või väike võrk ilma DNS-serverita Meie laborivõrk enne tundi 4
Saidi blokeerimine ühes arvutis 0.0.0.0 example.com: nimi viib aadressile, kus midagi pole

hosts-faili kuritarvitatakse

Pahavara muudab mõnikord hosts-faili, näiteks suunab panga nime võltsitud serverile või blokeerib viirusetõrje uuendused. Seepärast saab faili muuta ainult administraator ja Microsoft Defender jälgib kahtlaseid muudatusi. Kui arvuti „ei leia” mõnda saiti, vaata ka hosts-faili.

Kasulikud käsud

Get-Content C:\Windows\System32\drivers\etc\hosts                  # näita hosts-faili sisu
Add-Content C:\Windows\System32\drivers\etc\hosts "192.168.50.10    dc01"   # lisa rida (administraatorina)
Resolve-DnsName dc01                                                 # leia nimele aadress
ping dc01                                                            # näitab ka, millise aadressi nimi sai
ipconfig /displaydns                                                 # näita vahemälu
ipconfig /flushdns                                                   # tühjenda vahemälu

Kui muutsid nime aadressi, aga arvuti kasutab ikka vana, tühjenda vahemälu käsuga ipconfig /flushdns.

hosts-fail ja DNS

hosts-fail DNS-server
Kus Igas arvutis eraldi Ühes kohas kogu võrgu jaoks
Muutmine Iga arvuti eraldi Üks muudatus, kõik arvutid näevad
Sobib Testimiseks, väike labor Ettevõte, internet

100 arvuti jaoks peaksid hosts-faili muutma 100 korda. Seepärast kasutavad ettevõtted DNS-serverit. Selle paigaldame tunnis 4 koos Active Directoryga.

Huvilistele: kuidas DNS internetis töötab (1.1.1.1 jt)

Seda osa pole tunnis vaja. Loe, kui tahad rohkem teada.

Kes vastab, kui sinu arvuti küsib nime? Kodus saab arvuti DHCP-ga ruuterilt ka DNS-serveri aadressi. Tavaliselt on see sinu internetiteenuse pakkuja DNS-server. Selle asemel võib kasutada ka avalikke DNS-servereid:

Aadress Kelle oma
1.1.1.1 Cloudflare
8.8.8.8 Google
9.9.9.9 Quad9 (blokeerib teadaolevad pahavara saidid)

Neid nimetatakse lahendajateks (resolver): nad ei tea ise vastust, vaid otsivad selle sinu eest üles.

Kuidas lahendaja nime plng.ee üles leiab:

  1. Küsib juurserverilt (root server): „kes teab .ee nimesid?”
  2. Küsib .ee serverilt: „kes teab nime plng.ee?”
  3. Küsib plng.ee autoriteetselt serverilt (authoritative server), kus domeeni omanik hoiab oma kirjeid: „mis on plng.ee aadress?”
  4. Saadab vastuse sinu arvutile ja jätab selle mõneks ajaks meelde (TTL, time to live).

Järgmine küsija saab vastuse lahendaja mälust ja kõiki samme pole vaja korrata.

Kolm eri asja, mida saab muuta:

Mida muudad Kellele mõjub Mida muudab
hosts-faili rida Ainult sinu arvutile, ainult neile nimedele Sinu arvuti ei küsi neid nimesid üldse DNS-ist
DNS-serveri aadress (nt 1.1.1.1) Ainult sinu arvutile, kõigile nimedele Kes sinu eest otsib. Vastused on samad, sest need tulevad lõpuks samast autoriteetsest serverist.
DNS-kirje domeeni autoriteetses serveris Kogu maailmale Mis on õige vastus. Muudatus jõuab kõigini, kui vanad vastused lahendajate mälust aeguvad.

Inimesed vahetavad DNS-serverit 1.1.1.1 vms vastu kiiruse, privaatsuse või filtreerimise pärast (mõni DNS-server blokeerib pahavara- või täiskasvanute saite).

Ettevõttes (tund 4) on oma DNS-server: see teab sisevõrgu nimesid (näiteks dc01) ja küsib internetinimesid edasi lahendajalt.

Proovi oma arvutis (laborivõrgus pole internetti):

Resolve-DnsName plng.ee                   # küsi oma tavaliselt DNS-serverilt
Resolve-DnsName plng.ee -Server 1.1.1.1   # küsi Cloudflare'ilt
Huvilistele: hosts-faili ajalugu

Seda osa pole tunnis vaja. Loe, kui tahad rohkem teada.

Interneti eelkäijas ARPANET-is oli kõigi arvutite nimede ja aadresside nimekiri ühes failis HOSTS.TXT. Seda hoiti ühes keskuses ja iga arvuti laadis selle regulaarselt alla. Kui arvuteid sai tuhandeid, jäi fail liiga suureks ja muutus liiga sageli. 1983 loodi selle asemele DNS: hajus süsteem, kus iga organisatsioon haldab oma nimesid ise. Windowsi hosts-fail on sellest ajast jäänud alles kui väike kohalik erand.

➜ Edasi: Praktiline 3