Oppaat

Miten domainit ja DNS toimivat: opas ei-kehittäjille

Domain on nimi, jonka ihmiset kirjoittavat selaimeen päästäkseen sivullesi, kuten example.com. DNS (Domain Name System) on internetin hakemisto, joka muuntaa tuon nimen siihen, missä sivusi todellisuudessa sijaitsee. Domainin vuokraat rekisterinpitäjältä ja lisäät DNS-tietueita, jotka kertovat ”verkkosivu on tuolla” ja ”sähköposti kulkee tänne”. Oman domainin yhdistäminen sovellukseen on pitkälti oikean tietueen lisäämistä oikeaan paikkaan ja odottamista, että se astuu voimaan.

Miksi tämä on tärkeää tekoälyllä rakennettaessa

Tekoälysovellusrakentaja voi kirjoittaa ja isännöidä sovelluksesi, mutta domainisi asuu sovelluksen ulkopuolella, usein erillisen yrityksen kanssa, hallintapaneelissa, jossa on vieraita tietuetyyppejä. Juuri tässä monet julkaisut jumittuvat: sovellus on valmis, mutta domain näyttää virheen, tai sähköposti lakkaa yllättäen toimimasta DNS-muutoksen jälkeen.

Pieni ymmärrys auttaa pitkälle. Tiedät, mitä tietuetta isäntäpalvelu pyytää, miksi se ei vielä toimi ja miten vältät rikkomasta asioita, kuten sähköpostia, jotka jo luottavat domainiisi.

Arkipäivän vertauskuva

Ajattele puhelimesi yhteystietoja.

Et muista ystäväsi numeroa; napautat hänen nimeään ja puhelin hakee numeron. DNS tekee saman internetille: kirjoitat example.com, ja DNS etsii palvelimen osoitteen, johon yhteys muodostetaan.

  • Domain on yhteystiedon nimi.
  • Rekisterinpitäjä on yritys, joka virallisesti kirjaa, että nimi on sinun.
  • DNS-tietueet ovat nimen alle tallennettuja tietoja: puhelinnumero, sähköpostiosoite, kotiosoite.
  • Nimipalvelimet ovat se virallinen yhteystietoluettelo, joka kyseisen nimen kohdalla on voimassa.
  • Välimuisti on puhelimesi tapa muistaa numero jonkin aikaa. Jos ystäväsi vaihtaa numeroa, osa puhelimista soittaa yhä vanhaan, kunnes tallennettu kopio päivittyy. Tätä DNS:n ”levitykseksi” kutsutaan.

Domainnimen osat

Ota esimerkiksi app.example.com:

OsaNimiHuomioita
.comYlätason domain (TLD)Rekisterin hallinnoima. Muita ovat .org, .io, .ai ja maakoodit, kuten .fi
exampleToisen tason domainOsa, jonka rekisteröit
example.comJuuridomain (apex)Se, minkä omistat
appAlinimiLuot niitä vapaasti DNS:ssä: www, app, shop

Domainia ei oikeastaan osteta; se rekisteröidään määräajaksi (yleensä vuodeksi tai pidemmäksi) ja sitä uusitaan. Jos annat sen vanhentua, joku muu voi rekisteröidä sen.

Miten DNS-haku toimii

Kun joku kirjoittaa app.example.com:

  1. Selain kysyy DNS-resolverilta osoitetta. Sen ylläpitää yleensä internet-palveluntarjoaja tai julkinen palvelu.
  2. Jos resolverilla on tuore välimuistissa oleva vastaus, se vastaa heti.
  3. Muuten haku etenee hierarkiassa: juuripalvelimet ohjaavat .com-palvelimille, jotka ohjaavat domainisi nimipalvelimille.
  4. Nimipalvelimesi palauttavat asettamasi tietueen, kuten CNAME isännälle tai A-tietueen IP-osoitteen kanssa.
  5. Resolveri tallentaa vastauksen välimuistiin tietueen TTL-arvon (time to live) ajaksi ja antaa sen selaimelle, joka muodostaa yhteyden palvelimeen.

Tämä tapahtuu yleensä millisekunneissa.

DNS-tietueet, joita todella tarvitset

TietueMitä se tekeeEsimerkki
AOsoittaa nimen IPv4-osoitteeseenexample.com → 203.0.113.10
AAAAOsoittaa nimen IPv6-osoitteeseenexample.com → 2001:db8::10
CNAMETekee nimestä toisen isäntänimen aliaksenapp.example.com → myapp.host.com
MXKertoo, mitkä palvelimet vastaanottavat domainin sähköpostin, prioriteettinumerollaexample.com → 10 mail.provider.com
TXTSisältää tekstiä, käytetään vahvistukseen ja sähköpostin turvallisuuteenv=spf1 include:_spf.provider.com ~all
NSListaa domainin auktoritatiiviset nimipalvelimetns1.dnsprovider.com
CAARajoittaa, mitkä varmenteen myöntäjät voivat antaa HTTPS-varmenteita0 issue "letsencrypt.org"

Muutama sääntö, jotka kannattaa tietää:

  • CNAME ei voi jakaa nimeä muiden tietueiden kanssa. Siksi tavallinen CNAME ei käy juuridomainiin, jossa on aina NS- ja muita tietueita. Monet DNS-palveluntarjoajat tarjoavat tähän kiertotien nimellä ALIAS, ANAME tai CNAME flattening.
  • TXT-tietueet hoitavat paljon sähköpostityötä. SPF kertoo, ketkä saavat lähettää postia domainisi nimissä; DKIM julkaisee avaimen allekirjoitusten vahvistamiseen; DMARC kertoo vastaanottajille, mitä tehdä postille, joka ei läpäise näitä tarkistuksia.
  • Pienemmät MX-numerot tarkoittavat korkeampaa prioriteettia. Posti yritetään ensin pienimmälle.

Levitys ja TTL

”Levitys” saa kuulostamaan siltä, että muutokset leviävät hitaasti internetissä. Todellisuudessa kyse on välimuistista: resolverit säilyttävät jokaisen vastauksen kopiota sen TTL-ajan ja kysyvät uudelleen vasta, kun se vanhenee. Joten:

  • Uusi tietue, jota ei ole koskaan haettu, toimii usein minuuteissa.
  • Olemassa olevan tietueen muuttaminen vie enintään sen vanhan TTL-ajan, ennen kuin muutos näkyy kaikkialla.
  • Nimipalvelimien muuttaminen voi viedä päivän tai kaksi, koska ne ovat välimuistissa pidempään ylätasolla.

Hyödyllinen kikka: ennen suunniteltua muutosta laske tietueen TTL-arvoa (esimerkiksi muutamaan minuuttiin), odota, että vanha TTL on kulunut, ja tee sitten muutos.

Esimerkki: varauskäyttöliittymän yhdistäminen domainiin

Omistat domainin yoursalon.com. Nykyinen verkkosivusi ja Google Workspace -sähköposti käyttävät sitä jo. Olet rakentanut varaussovelluksen ja haluat sen osoitteeseen book.yoursalon.com.

  1. Selvitä, missä DNS-asetuksesi hallitaan. Se voi olla rekisterinpitäjäsi tai erillinen DNS-palveluntarjoaja. NS-tietueet kertovat sen.
  2. Lisää CNAME nimelle book, joka osoittaa isäntäpalvelusi antamaan kohteeseen.
  3. Lisää mahdollinen TXT-tietue, jonka isäntä pyytää omistajuuden todentamiseen.
  4. Älä koske MX- ja sähköpostin TXT-tietueisiin. Sähköposti toimii edelleen, koska et koskenut siihen.
  5. Vahvista isännässä, kun DNS on päivittynyt. Isäntä myöntää sen jälkeen HTTPS-varmenteen osoitteelle book.yoursalon.com.
  6. Testaa puhelimella mobiiliverkossa, koska se käyttää eri resolveria ja välimuistia kuin kotisi Wi-Fi.

Jos haluaisit sovelluksen juuridomainiin yoursalon.com, tarvitsisit A-tietueita tai DNS-palveluntarjoajasi ALIAS- tai flattening-ominaisuuden, ja korvaisit silloin nykyisen verkkosivusi siinä. Lisää ohjeita on kohdassa miten oma domain yhdistetään.

Yleisimmät virheet ja väärinkäsitykset

  • ”Domain ja hosting ovat sama asia.” Domain on nimi; hosting on paikka, jossa sovellus ajetaan. DNS yhdistää ne.
  • A-tietueen käyttö, kun isäntä pyysi CNAME-tietuetta (tai toisinpäin). Noudata isännän ohjeita tarkasti.
  • Kirjoitusvirheet kohteessa. Yksi väärä merkki CNAME-kohteessa tarkoittaa, että vahvistus epäonnistuu.
  • Nimipalvelimien vaihtaminen kopioimatta tietueita. DNS:n siirtäminen uudelle palveluntarjoajalle ilman MX- ja TXT-tietueiden luomista uudelleen on klassinen tapa rikkoa sähköposti.
  • Välityksen käyttö silloin, kun sitä ei pitäisi. Jotkin DNS-palvelut, kuten Cloudflare, voivat välittää liikennettä. Jotkin isännät vaativat, että tietue on asetettu tilaan ”DNS only”, jotta ne voivat myöntää varmenteita.
  • Tuntemattomien TXT-tietueiden poistaminen. Ne ovat usein vahvistuksia tai sähköpostin turvallisuustietueita, joista jokin riippuu.
  • Domainin vanhentuminen. Ota automaattinen uusinta käyttöön ja pidä maksukortti ajan tasalla.

Mitä pyytää tekoälyrakentajaltasi

DNS asuu koodisi ulkopuolella, joten kyse on enemmän siitä, mistä kysyä:

  • ”Mikä tarkka DNS-tietue tarvitaan app.omadomain.fi-osoitteelle: tyyppi, nimi ja arvo?”
  • ”Vaikuttaako tämä muutos sähköpostiini?”
  • ”Domain näyttää virheen tietueen lisäämisen jälkeen. Mitä minun pitäisi tarkistaa?”
  • ”Lisää oikea kanoninen URL ja uudelleenohjaukset, jotta www ja ilman www eivät näytä sivustoa molempina.”
  • ”Ota käyttöön sähköpostin lähetys omasta domainistani: mitä SPF-, DKIM- ja DMARC-tietueita tarvitsen?” Katso miten sovelluksesta lähetetään sähköposteja.

Omat domainit Mythexissä

Jokainen julkaistu Mythex-sovellus saa osoitteen nimesi.mythex.app. Pro-tasolla voit käyttää omaa domainia: osta domain Mythexin sisältä (rekisteröinti laskutetaan erikseen, ja ostettujen domainien DNS hoidetaan puolestasi) tai yhdistä jo omistamasi domain lisäämällä CNAME-tietue alinimestä, kuten app.example.com, osoitteeseen nimesi.mythex.app ja klikkaamalla Verify. HTTPS myönnetään automaattisesti. Jos DNS on Cloudflaressa, aseta tietue tilaan ”DNS only”. Alinimet ovat suositeltuja; juuridomain riippuu DNS-palveluntarjoajasi ALIAS- tai flattening-tuesta. Oman domainin dokumentaatio käy jokaisen vaiheen läpi, ja hinnoittelu näyttää, mitä Pro sisältää.

Kysymykset

Mitä DNS tarkoittaa yksinkertaisesti?

DNS (Domain Name System) on internetin hakemisto. Se muuntaa helposti muistettavan nimen, kuten example.com, tietokoneiden tarvitsemiksi tiedoiksi, yleensä IP-osoitteeksi, jotta selain löytää oikean palvelimen.

Mikä ero on A-tietueella ja CNAME-tietueella?

A-tietue osoittaa nimen suoraan IPv4-osoitteeseen. CNAME osoittaa nimen toiseen palvelinnimeen, ja haku jatkuu siitä. CNAME on kätevä, kun isännän IP-osoitteet saattavat vaihtua, mutta tavallista CNAME-tietuetta ei voi käyttää juuridomainissa itsessään.

Kuinka kauan DNS-levitys kestää?

Usein minuutteja, joskus tunteja. Muutokset näkyvät, kun vanhan tietueen välimuistikopiot vanhenevat, ja se riippuu tietueen TTL-arvosta. Nimipalvelimien vaihtaminen voi viedä jopa päivän tai kaksi, koska ne ovat välimuistissa pidempään.

Rikkooko DNS-muutos sähköpostini?

Vain jos muutat tai poistat tietueita, joihin sähköposti luottaa: MX-tietueita ja TXT-tietueita, kuten SPF, DKIM ja DMARC. Pelkkä CNAME-tietueen lisääminen www- tai app-nimelle ei koske sähköpostiin. Domainin siirtäminen uusille nimipalvelimille voi rikkoa sähköpostin, jos et kopioi näitä tietueita ensin.

Miksi käyttää www- tai app-alinimeä juuridomainin sijaan?

Alinimi, kuten www.example.com tai app.example.com, voi käyttää CNAME-tietuetta, jota monet isäntäpalvelut vaativat. Juuridomain (example.com) ei voi saada tavallista CNAME-tietuetta, joten se tarvitsee A-tietueita tai palveluntarjoajan ALIAS-, ANAME- tai CNAME-flattening-ominaisuuden.

Mythex · Pricing · Rakenna mitä tahansa tekoälyllä · Verkkosivu- ja sovellusmallipohjat · Mythex vertailussa · Tekoälysovellusten rakentamisen sanasto · Ilmaiset työkalut tekoälysovellusten rakentamiseen · English

English አማርኛ العربية Български বাংলা Bosanski Català Čeština Dansk Deutsch Ελληνικά Español Español (España) Eesti فارسی Français Français (Canada) ગુજરાતી हिन्दी Hrvatski Magyar Հայերեն Bahasa Indonesia Íslenska Italiano 日本語 ქართული Қазақ тілі ಕನ್ನಡ 한국어 Lietuvių Latviešu Македонски മലയാളം Монгол मराठी Bahasa Melayu မြန်မာ Norsk bokmål Nederlands ਪੰਜਾਬੀ Polski Português (Brasil) Português (Portugal) Română Русский Slovenčina Slovenščina Soomaali Shqip Srpski Svenska Kiswahili தமிழ் తెలుగు ไทย Tagalog Türkçe Українська اردو Tiếng Việt 简体中文 繁體中文(香港) 繁體中文(台灣)