
Internet ei toimi IP-osoitteilla vaan nimillä – ainakin käyttäjän näkökulmasta. Kirjoitat selaimeen verkkotunnuksen, et numerosarjaa. Tämän muunnoksen tekee DNS.
DNS tarkoittaa Domain Name Systemiä, eli hajautettua nimipalvelujärjestelmää. Sen tehtävä on yhdistää ihmisen luettava nimi koneen käyttämään osoitteeseen. Ilman sitä suurin osa verkkopalveluista näyttäisi olevan “alhaalla”, vaikka palvelimet olisivat täysin toimintakunnossa.
Kun kysytään mikä on DNS palvelin, vastaus ei ole yksinkertainen. DNS ei ole yksi laite vaan ketju palvelimia, joilla on eri roolit. Ongelmat, kuten “dns palvelin ei vastaa”, johtuvat usein siitä, että ketjun jokin osa pettää.
Mikä on DNS ja mitä dns tarkoittaa käytännössä
DNS on maailmanlaajuinen, hierarkkinen tietokanta. Se sisältää tietueita, jotka kertovat esimerkiksi:
- Mihin IP-osoitteeseen verkkotunnus osoittaa
- Missä domainin sähköposti käsitellään
- Mitkä nimipalvelimet vastaavat vyöhykkeestä
- Onko vyöhyke DNSSEC-allekirjoitettu
Kun laitteesi tekee kyselyn, prosessi etenee usean vaiheen kautta. DNS-palvelin voi vastata välimuistista tai käynnistää iteratiivisen haun juuritasolta (root) alaspäin.
Keskeinen ajatus: DNS ei ole yksi palvelin vaan hajautettu järjestelmä, jossa jokaisella tasolla on oma tehtävänsä.
DNS palvelin ja dns-palvelin – kaksi eri roolia
Termiä dns palvelin käytetään usein epätarkasti. Se voi tarkoittaa kahta täysin eri asiaa:
1. Rekursiivinen resolveri
Tämä on se DNS-palvelin, jonka IP-osoite on määritetty laitteellesi tai reitittimelle. Sen tehtävä on:
- Vastaanottaa kysely
- Tarkistaa välimuisti
- Tarvittaessa hakea vastaus root → TLD → authoritative -ketjun kautta
- Palauttaa lopputulos
Tämä on tyypillisesti internetoperaattorin, julkisen palvelun tai organisaation ylläpitämä resolveri.
2. Auktoritatiivinen nimipalvelin
Tämä palvelin omistaa “totuuden” tietystä domainista. Se säilyttää vyöhykkeen (zone) tietueet ja vastaa suoraan kysymyksiin, jotka koskevat kyseistä domainia.
Jos roolit sekoitetaan, syntyy väärinkäsityksiä. Esimerkiksi delegaatiovirhe domainin NS-tietueissa ei korjaannu vaihtamalla julkista resolveria.
DNS-arkkitehtuuri – miten resolvointi oikeasti etenee
DNS on hierarkkinen puu:
- Juuritaso (root “.”)
- Ylätason domain (TLD, kuten .fi)
- Domainin auktoritatiivinen palvelin
Resolver käynnistää haun root-hints-listalla. Root-palvelimet eivät anna lopullista vastausta, vaan ohjaavat seuraavaan tasoon. Tätä kutsutaan referral-vastaukseksi.
TLD-palvelin ohjaa edelleen domainin nimipalvelimille, jotka lopulta palauttavat varsinaisen tietueen (esim. A- tai AAAA-tietue).
Koko ketju voidaan tiivistää:
- Client → Resolver
- Resolver → Root
- Root → TLD
- TLD → Authoritative
- Authoritative → Resolver → Client
Nopeus perustuu välimuistiin. Ilman cachingia jokainen kysely kulkisi koko ketjun läpi.
Yleisimmät DNS-tietueet
DNS ei käsittele vain IP-osoitteita. Se hallitsee useita tietuetyyppejä:
Perustietueet
- A – nimi → IPv4-osoite
- AAAA – nimi → IPv6-osoite
- CNAME – alias → kanoninen nimi
- MX – sähköpostipalvelimet
- NS – nimipalvelimet
- SOA – vyöhykkeen perustiedot
Turvallisuus ja laajennukset
- TXT – SPF, DKIM, DMARC, verifioinnit
- CAA – mitkä CA:t saavat myöntää sertifikaatteja
- DS, DNSKEY, RRSIG – DNSSEC-ketju
Moni dns virhe johtuu väärin määritellyistä NS- tai CNAME-tietueista.
DNS asetukset ja dns-asetukset eri ympäristöissä
DNS asetukset voidaan määrittää kahdella tasolla:
- Päätelaitteessa
- Reitittimessä (DHCP jakaa kaikille)
Windows
DNS-palvelin määritetään verkkoliitännän IP-asetuksissa.
Varmistus:
ipconfig /all
Välimuistin tyhjennys:
ipconfig /flushdns
macOS
Network → valitse liitäntä → DNS.
Listaan voi lisätä useita nimipalvelimia ja määrittää hakudomaineja.
Android
Private DNS käyttää DoT-protokollaa. Asetus tehdään hostname-muodossa, ei IP-osoitteella.
Linux (systemd-resolved)
Tarkista aktiivinen resolver:
resolvectl status
Reititin
- WAN-asetus määrittää, mitä reititin käyttää upstreamiin.
- LAN/DHCP-asetus määrittää, mitä laitteille jaetaan.
Nämä ovat eri näkymiä, ja väärä oletus niiden yhtenevyydestä aiheuttaa usein dns virhe -tilanteita.
DNS palvelin ei vastaa – yleisimmät syyt
Ilmaisu “dns palvelin ei vastaa” ei tarkoita yhtä tiettyä ongelmaa. Se voi viitata:
- Ei IP-yhteyttä resolveriin
- Resolver ei kuuntele
- UDP estetty, TCP ei fallbackaa
- DNSSEC-validointi epäonnistuu (SERVFAIL)
- Selain käyttää eri DNS:ää (DoH)
Yleisimmät vastaustyypit:
- NXDOMAIN – nimeä ei ole olemassa
- SERVFAIL – resolvointi epäonnistui
- REFUSED – palvelin kieltäytyi
- TIMEOUT – ei vastausta
Vianmääritys käytännössä
Tehokas polku etenee näin:
1. Tarkista IP-tilanne
Onko IP, gateway ja DNS oikein?
2. Kysy suoraan resolveria
dig @1.1.1.1 example.com
Jos toimii suoraan mutta ei oletuksella, vika on paikallisessa DNS-valinnassa.
3. Seuraa resolvointiketjua
dig +trace example.com
Tämä paljastaa delegaatio-ongelmat.
4. Tyhjennä välimuistit
Negatiivinen cache voi pitää virhettä voimassa.
5. Testaa DNSSEC
dig example.com +dnssec
DNSSEC-ketjun virhe tuottaa usein SERVFAIL-tilan.
DNSSEC, spoofing ja cache poisoning
DNSSEC lisää vastauksiin allekirjoituksen. Se takaa:
- Alkuperän todennettavuuden
- Tietojen eheyden
DNSSEC ei salaa liikennettä. Se ei estä salakuuntelua, vaan väärentämistä.
DoT ja DoH suojaavat kuljetuskerroksen. Ne estävät välistäkuuntelun asiakkaan ja resolverin välillä.
Ilman suojauksia DNS on altis:
- Spoofing-hyökkäyksille
- Cache poisoning -manipuloinnille
- Heijastus-/amplifikaatiohyökkäyksille
Open resolver -asetusta ei tule jättää julkiseksi internetiin.
Suorituskyky ja seuranta
DNS:n hitaus näkyy käyttäjälle “hitaana nettiyhteytenä”, vaikka itse palvelin olisi nopea.
Keskeiset mittarit:
- Vasteaika
- Cache hit ratio
- SERVFAIL/NXDOMAIN-määrät
- Ratelimit
TTL on optimointi ja riski samanaikaisesti. Liian pitkä TTL hidastaa muutosten propagointia. Liian lyhyt kasvattaa kuormaa.
Julkinen vs yksityinen DNS
Julkinen resolver tarkoittaa ulkopuolisen palveluntarjoajan rekursiivista palvelua.
Yksityinen DNS voi tarkoittaa:
- Organisaation omaa resolveria
- Split DNS -ratkaisua
- Androidin Private DNS (DoT)
Valinnassa ratkaisevaa on:
- DNSSEC-validointi
- Lokituspolitiikka
- Suodatusominaisuudet
- Kuljetuksen salaus
Adminien parhaat käytännöt
- Erota authoritative ja recursive roolit
- Älä jätä rekursiota avoimeksi internetiin
- Dokumentoi DNS-ketju
- Ota DNSSEC käyttöön omistamillesi vyöhykkeille
- Monitoroi kuormaa ja virheitä
- Varaudu suodatuksen sivuvaikutuksiin
Miksi DNS on kriittinen infrastruktuuri
DNS on internetin nimihakemisto. Se on hajautettu, hierarkkinen ja välimuistiin perustuva järjestelmä.
Kun kysytään mikä on dns palvelin, oikea vastaus on: osa ketjua. Toimivuus riippuu koko resolvointipolusta.
Useimmat dns virhe -tilanteet eivät johdu yhdestä asetuksesta vaan väärin ymmärretystä kokonaisuudesta. Siksi vianmääritys tulee tehdä järjestelmällisesti, ei arvaillen.
Vastuuvapaus: Tämä artikkeli on tekninen ja yleisluonteinen katsaus DNS-järjestelmän toimintaan, dns asetuksiin ja vianmääritykseen. Toteutukset ja käyttöliittymät vaihtelevat ympäristökohtaisesti.



