DNS įrašai

DNS įrašai: visi tipai paaiškinti paprastai su konfigūracijos pavyzdžiais

Kiekvieną kartą, kai kas nors atidaro jūsų svetainę, siunčia jums el. laišką ar prisijungia prie jūsų programėlės, viskas prasideda nuo DNS. DNS įrašai yra instrukcijos, nurodančios internetui, kur rasti jūsų svetainę, kur pristatyti el. paštą ir kaip patvirtinti jūsų domeno tapatybę.

Blogai sukonfigūruotas DNS įrašas gali padaryti jūsų svetainę nepasiekiamą, nukreipti el. laiškus į niekur arba leisti piktavaliams apsimesti jūsų domenu. Teisingai sukonfigūruoti DNS įrašai yra nematomas, bet gyvybiškai svarbus jūsų interneto infrastruktūros pagrindas.

Šiame straipsnyje rasite kiekvieną DNS įrašo tipą, paaiškiną paprastai ir su realiomis konfigūracijomis, kurias galite pritaikyti savo domenui.

Kas yra DNS ir kodėl jis reikalingas

DNS: interneto adresų knyga

DNS (Domain Name System) yra sistema, kuri paverčia žmonėms suprantamus domeno vardus (pvz., jusudomenas.lt) į kompiuteriams suprantamus IP adresus (pvz., 203.0.113.10). Be DNS kiekvieną svetainę turėtumėte pasiekti įvesdami skaitmeninį IP adresą, panašiai kaip telefonuoti žinant tik numerį, o ne vardą.

Kai įvedate jusudomenas.lt naršyklėje, vyksta toks procesas:

  1. Jūsų kompiuteris klausia DNS serverio: „Koks yra jusudomenas.lt IP adresas?”
  2. DNS serveris atsako: „203.0.113.10″
  3. Jūsų naršyklė prisijungia prie serverio su IP adresu 203.0.113.10
  4. Serveris grąžina svetainės turinį

Visas procesas trunka milisekundes ir yra visiškai nematomas vartotojui.

DNS hierarchija

DNS sistema yra hierarchinė. Ji veikia kaip medis, kurio viršūnėje yra šakniniai (root) serveriai, po jų eina aukščiausio lygio domenų (TLD) serveriai, tada autoritatyvūs domeno serveriai.

graph TD
    A["Šakniniai serveriai (Root)"] --> B[".lt serveriai (TLD)"]
    A --> C[".com serveriai (TLD)"]
    A --> D[".org serveriai (TLD)"]
    B --> E["jusudomenas.lt (autoritatyvus)"]
    B --> F["kitasdomenas.lt (autoritatyvus)"]
    C --> G["example.com (autoritatyvus)"]

Kai jūsų kompiuteris nori rasti jusudomenas.lt:

  1. Klausia šakninio serverio: „Kas aptarnauja .lt domenus?”
  2. Šakninis serveris nurodo .lt TLD serverį
  3. Klausia .lt serverio: „Kas aptarnauja jusudomenas.lt?”
  4. .lt serveris nurodo autoritatyvų DNS serverį (pvz., ns1.dnstiekėjas.lt)
  5. Klausia autoritatyvaus serverio: „Koks yra jusudomenas.lt A įrašas?”
  6. Autoritatyvus serveris grąžina IP adresą

Praktikoje šis procesas yra gerokai greitesnis dėl DNS talpyklos (cache): jūsų kompiuteris, interneto tiekėjas ir tarpiniai DNS serveriai talpina atsakymus, todėl pakartotinės užklausos grąžinamos akimirksniu.

DNS zona ir zonos failas

DNS zona yra domeno DNS įrašų rinkinys. Kiekvienas domenas turi savo DNS zoną, kurioje surašyti visi to domeno DNS įrašai. Tradiciškai ši informacija saugoma zonos faile (zone file), nors šiuolaikiniai DNS tiekėjai naudoja duomenų bazes ir žiniatinklio sąsajas.

Zonos failo struktūros pavyzdys:

$ORIGIN jusudomenas.lt.
$TTL 3600

; SOA įrašas (zonos pradžia)
@   IN  SOA  ns1.dnstiekėjas.lt. admin.jusudomenas.lt. (
        2026060901  ; Serial number
        3600        ; Refresh (1 valanda)
        900         ; Retry (15 minučių)
        1209600     ; Expire (2 savaitės)
        86400       ; Minimum TTL (1 diena)
    )

; NS įrašai (vardų serveriai)
@       IN  NS   ns1.dnstiekėjas.lt.
@       IN  NS   ns2.dnstiekėjas.lt.

; A įrašai (IPv4 adresai)
@       IN  A    203.0.113.10
www     IN  A    203.0.113.10
mail    IN  A    203.0.113.20

; AAAA įrašas (IPv6 adresas)
@       IN  AAAA 2001:db8::1

; CNAME įrašai (pseudonimai)
blog    IN  CNAME  jusudomenas.lt.
shop    IN  CNAME  shops.shopify.com.

; MX įrašai (el. pašto serveriai)
@       IN  MX   10 mail.jusudomenas.lt.
@       IN  MX   20 backup-mail.jusudomenas.lt.

; TXT įrašai (tekstinė informacija)
@       IN  TXT  "v=spf1 ip4:203.0.113.10 include:_spf.google.com -all"

; SRV įrašas
_sip._tcp  IN  SRV  10 60 5060 sip.jusudomenas.lt.

; CAA įrašas
@       IN  CAA  0 issue "letsencrypt.org"

TTL: kiek laiko DNS atsakymas galioja

Prieš gilinantis į konkrečius įrašų tipus, svarbu suprasti TTL (Time To Live) sąvoką, nes ji taikoma visiems DNS įrašams.

Kas yra TTL

TTL yra laikas sekundėmis, kurį DNS atsakymas gali būti saugomas talpykloje (cache) prieš naują užklausą autoritatyviam serveriui. Kai nustatote TTL reikšmę 3600 (1 valanda), tai reiškia, kad po pirmosios užklausos kiti DNS serveriai ir vartotojų kompiuteriai naudos talpykloje saugomą atsakymą 1 valandą, nekreipdamiesi į jūsų autoritatyvų DNS serverį.

TTL reikšmių rekomendacijos

TTL reikšmėSekundėmisKada naudoti
5 minutės300Prieš planuojamą DNS pakeitimą (sumažinkite iš anksto)
30 minučių1800Dinamiškos aplinkos, dažnai besikeičiantys IP
1 valanda3600Standartinė reikšmė daugumai svetainių
12 valandų43200Stabilūs įrašai, retai keičiami
24 valandos86400Labai stabilūs įrašai (NS, MX)
1 savaitė604800Beveik niekada nesikeičiantys įrašai

TTL strategija prieš DNS pakeitimą

Kai planuojate pakeisti DNS įrašą (pvz., perkelti svetainę į kitą serverį), naudokite šią strategiją:

  1. 24-48 valandos prieš pakeitimą: Sumažinkite TTL iki 300 sekundžių (5 min.)
  2. Palaukite seną TTL laiką: Jei senas TTL buvo 3600, palaukite bent 1 valandą, kol visos talpyklos atsinaujins su nauju trumpu TTL
  3. Atlikite pakeitimą: Pakeiskite DNS įrašą (pvz., naują IP adresą)
  4. Pakeitimas išplinta per 5 minutes: Kadangi TTL yra 300 s, naujas įrašas pasklinda greitai
  5. Po pakeitimo: Grąžinkite TTL atgal į normalią reikšmę (3600 ar ilgesnę)
# Patikrinkite dabartinį TTL
dig jusudomenas.lt +noall +answer

# Rezultatas:
# jusudomenas.lt.  3600  IN  A  203.0.113.10
#                  ^^^^
#                  TTL sekundėmis

DNS propagacija

„DNS propagacija” yra terminas, apibūdinantis laiką, per kurį DNS pakeitimai pasklinda po visus DNS serverius internete. Šis procesas priklauso nuo TTL reikšmių.

Kai pakeičiate DNS įrašą, pakeitimas iškart matomas jūsų autoritatyviam DNS serveriui. Tačiau kiti DNS serveriai (jūsų ISP, Google DNS, Cloudflare DNS) vis dar turi senąjį atsakymą savo talpykloje. Jie atsinaujins tik kai pasibaigs TTL terminas.

Praktiškai:

  • Jei TTL buvo 300 s (5 min.), propagacija užtrunka iki 5 minučių
  • Jei TTL buvo 3600 s (1 val.), propagacija užtrunka iki 1 valandos
  • Jei TTL buvo 86400 s (24 val.), propagacija gali užtrukti iki 24 valandų
  • Kai kurios sistemos gali ignoruoti TTL ir saugoti talpyklą ilgiau

Propagacijos tikrinimas:

# Patikrinkite DNS atsakymą iš skirtingų serverių
dig @8.8.8.8 jusudomenas.lt A +short     # Google DNS
dig @1.1.1.1 jusudomenas.lt A +short     # Cloudflare DNS
dig @9.9.9.9 jusudomenas.lt A +short     # Quad9 DNS

# Arba naudokite internetinį įrankį: whatsmydns.net

A įrašas: pagrindinis svetainės adresas

Kas yra A įrašas

A (Address) įrašas yra pats svarbiausias DNS įrašo tipas. Jis susieja domeno vardą su IPv4 adresu. Kai kas nors įveda jūsų svetainės adresą naršyklėje, DNS sistema naudoja A įrašą, kad rastų serverio IP adresą.

A įrašo formatas

; Formatas: vardas  TTL  klasė  tipas  IP adresas
jusudomenas.lt.   3600  IN     A      203.0.113.10
DalisReikšmė
jusudomenas.lt.Domeno vardas (taškas gale žymi pilną domeną, FQDN)
3600TTL sekundėmis
INInterneto klasė (beveik visada IN)
AĮrašo tipas
203.0.113.10IPv4 adresas

Praktiniai A įrašo pavyzdžiai

; Pagrindinis domenas
jusudomenas.lt.      IN  A  203.0.113.10

; www subdomenas (tas pats serveris)
www.jusudomenas.lt.  IN  A  203.0.113.10

; El. pašto serveris (atskiras serveris)
mail.jusudomenas.lt. IN  A  203.0.113.20

; Administravimo subdomenas
admin.jusudomenas.lt. IN  A  203.0.113.30

; Testavimo aplinka
staging.jusudomenas.lt. IN  A  198.51.100.50

Keli A įrašai tam pačiam domenui (Round Robin DNS)

Galite turėti kelis A įrašus tam pačiam domenui. DNS serveris grąžins juos cikliškai (round robin), paskirstydamas srautą tarp kelių serverių:

jusudomenas.lt.  IN  A  203.0.113.10
jusudomenas.lt.  IN  A  203.0.113.11
jusudomenas.lt.  IN  A  203.0.113.12

Tai yra paprasčiausias apkrovos balansavimo (load balancing) būdas, tačiau jis neatsižvelgia į serverio būseną (jei vienas serveris neveikia, DNS vis tiek grąžins jo IP). Rimtesniam apkrovos balansavimui naudojami specializuoti sprendimai (HAProxy, Nginx load balancer, AWS ALB, Cloudflare).

Dažniausios A įrašo klaidos

Klaida: A įrašas rodo į seną IP adresą po serverio migracijos

# Diagnozė
dig jusudomenas.lt A +short
# Rodo seną IP adresą

# Sprendimas: atnaujinkite A įrašą DNS valdymo pulte
# Jei TTL ilgas, sumažinkite jį prieš pakeitimą

Klaida: www subdomenas neturi A įrašo

# Diagnozė
dig www.jusudomenas.lt A +short
# Tuščias rezultatas

# Sprendimas: pridėkite A arba CNAME įrašą www subdomenui

Klaida: A įrašas rodo į privatų IP adresą

Privatūs IP adresai (10.x.x.x, 172.16-31.x.x, 192.168.x.x) neveikia viešame internete. A įrašas turi rodyti į viešąjį IP adresą.

AAAA įrašas: IPv6 adresas

Kas yra AAAA įrašas

AAAA (taip pat vadinamas „quad-A”) įrašas atlieka tą pačią funkciją kaip A įrašas, bet IPv6 protokolui. IPv6 adresai yra ilgesni (128 bitų vs. IPv4 32 bitų) ir skirsti į aštuonias grupes po keturis šešioliktainius skaitmenis.

AAAA įrašo formatas

jusudomenas.lt.   IN  AAAA  2001:0db8:85a3:0000:0000:8a2e:0370:7334

IPv6 adresai gali būti sutrumpinti pašalinant pirmuosius nulius kiekvienoje grupėje ir pakeičiant vienos ar kelių nulinių grupių seką dvigubu dvitaškiu:

; Pilnas formatas
2001:0db8:85a3:0000:0000:8a2e:0370:7334

; Sutrumpintas formatas
2001:db8:85a3::8a2e:370:7334

Ar reikia AAAA įrašo

IPv6 naudojimas auga: 2026 metais apie 45 % viso interneto srauto keliauja per IPv6. Mobilieji operatoriai (ypač Azijoje ir Šiaurės Amerikoje) aktyviai naudoja IPv6.

Kada pridėti AAAA įrašą:

  • Jūsų serveris turi IPv6 adresą (patikrinkite su prieglobos tiekėju)
  • Norite užtikrinti pasiekiamumą iš tinklų, kurie naudoja tik IPv6 (IPv6-only networks)
  • Naudojate CDN, kuris palaiko IPv6 (Cloudflare, AWS CloudFront)

Patikrinimas:

# Ar jūsų serveris turi IPv6?
dig AAAA jusudomenas.lt +short

# Ar jūsų tinklas palaiko IPv6?
curl -6 https://jusudomenas.lt

CNAME įrašas: domeno pseudonimas

Kas yra CNAME įrašas

CNAME (Canonical Name) įrašas sukuria pseudonimą (alias) vienam domenui, nukreipiant jį į kitą domeną. CNAME nerodo tiesiogiai į IP adresą, jis rodo į kitą domeno vardą, kuris turi savo A (arba AAAA) įrašą.

CNAME įrašo formatas

; blog.jusudomenas.lt → jusudomenas.lt → 203.0.113.10
blog.jusudomenas.lt.  IN  CNAME  jusudomenas.lt.

; shop.jusudomenas.lt → shops.shopify.com → (Shopify IP)
shop.jusudomenas.lt.  IN  CNAME  shops.shopify.com.

Kai lankytojas bando pasiekti blog.jusudomenas.lt:

  1. DNS randa CNAME įrašą: blog.jusudomenas.lt → jusudomenas.lt
  2. DNS ieško jusudomenas.lt A įrašo: jusudomenas.lt → 203.0.113.10
  3. Naršyklė jungiasi prie 203.0.113.10

Kada naudoti CNAME

Trečiųjų šalių paslaugos:

Daugelis debesų paslaugų (Shopify, GitHub Pages, Heroku, Netlify, Vercel) prašo sukurti CNAME įrašą, nukreipiantį jūsų subdomeną į jų serverius:

; Shopify
shop.jusudomenas.lt.    IN  CNAME  shops.myshopify.com.

; GitHub Pages
www.jusudomenas.lt.     IN  CNAME  vartotojas.github.io.

; Netlify
www.jusudomenas.lt.     IN  CNAME  jusudomenas.netlify.app.

; Vercel
www.jusudomenas.lt.     IN  CNAME  cname.vercel-dns.com.

; AWS S3 statinė svetainė
www.jusudomenas.lt.     IN  CNAME  jusudomenas.lt.s3-website-eu-west-1.amazonaws.com.

; Azure App Service
www.jusudomenas.lt.     IN  CNAME  jusudomenas.azurewebsites.net.

Keli subdomenai nukreipti į tą patį serverį:

; Visi šie subdomenai nukreips į pagrindinį domeną
www.jusudomenas.lt.     IN  CNAME  jusudomenas.lt.
blog.jusudomenas.lt.    IN  CNAME  jusudomenas.lt.
docs.jusudomenas.lt.    IN  CNAME  jusudomenas.lt.

Privalumas: jei pakeisite pagrindinio domeno A įrašo IP adresą, visi subdomenai automatiškai nukreips į naują IP, nes jie seka CNAME grandinę.

CNAME apribojimai

1. CNAME negali būti naudojamas šakniniame domene (apex/root domain)

Tai yra pats svarbiausias CNAME apribojimas. Pagal DNS standartą (RFC 1034), šakninis domenas (pvz., jusudomenas.lt be jokio subdomeno) negali turėti CNAME įrašo.

; NETEISINGA (neleidžiama):
jusudomenas.lt.  IN  CNAME  shops.shopify.com.

; TEISINGA:
www.jusudomenas.lt.  IN  CNAME  shops.shopify.com.

Priežastis: CNAME tipo įrašas uždraudžia bet kokius kitus įrašus tame pačiame varde. Šakninis domenas privalo turėti SOA ir NS įrašus, todėl CNAME ten negalimas.

Sprendimas šakniniams domenams:

Kai kurie DNS tiekėjai siūlo nestandartinius sprendimus:

  • Cloudflare: CNAME Flattening – Cloudflare automatiškai konvertuoja šakninio domeno CNAME į A įrašą
  • AWS Route 53: ALIAS įrašas – veikia kaip CNAME, bet leidžiamas šakniniame domene
  • DNSimple: ALIAS įrašas
  • DNS Made Easy: ANAME įrašas
; Cloudflare CNAME Flattening (nustatoma per valdymo pultą)
; Vizualiai atrodo kaip CNAME, bet Cloudflare jį paverčia A įrašu
jusudomenas.lt.  IN  CNAME  shops.shopify.com.
; (Cloudflare automatiškai grąžins A įrašą su Shopify IP)

2. CNAME negali koegzistuoti su kitais įrašais tame pačiame varde

; NETEISINGA: CNAME ir MX tame pačiame varde
mail.jusudomenas.lt.  IN  CNAME  mailserver.example.com.
mail.jusudomenas.lt.  IN  MX     10 mail.jusudomenas.lt.   ; KLAIDA!

; TEISINGA: naudokite A įrašą vietoj CNAME
mail.jusudomenas.lt.  IN  A      203.0.113.20
mail.jusudomenas.lt.  IN  MX     10 mail.jusudomenas.lt.

3. CNAME grandinės sulėtina DNS

; Vengiama: CNAME grandinė
a.jusudomenas.lt.  IN  CNAME  b.jusudomenas.lt.
b.jusudomenas.lt.  IN  CNAME  c.jusudomenas.lt.
c.jusudomenas.lt.  IN  A      203.0.113.10
; Reikia 3 DNS užklausų vietoj 1

Stenkitės, kad CNAME grandinė būtų ne ilgesnė nei 1-2 žingsniai.

MX įrašas: el. pašto maršrutizavimas

Kas yra MX įrašas

MX (Mail Exchange) įrašas nurodo, kuris serveris (ar serveriai) priima el. laiškus jūsų domeno vardu. Kai kas nors siunčia laišką adresu info@jusudomenas.lt, siuntėjo el. pašto serveris kreipiasi į DNS, ieškodamas jusudomenas.lt MX įrašo.

MX įrašo formatas

jusudomenas.lt.  IN  MX  10  mail.jusudomenas.lt.
jusudomenas.lt.  IN  MX  20  backup-mail.jusudomenas.lt.
DalisReikšmė
jusudomenas.lt.Domenas, kuriam taikomas MX
10Prioritetas (mažesnis skaičius = aukštesnis prioritetas)
mail.jusudomenas.lt.El. pašto serverio adresas

Svarbu: MX įrašas rodo į serverio VARDĄ, ne į IP adresą. Tas serverio vardas turi turėti savo A (ir/arba AAAA) įrašą:

; MX įrašas
jusudomenas.lt.       IN  MX  10  mail.jusudomenas.lt.

; A įrašas MX serveriui (privalomas)
mail.jusudomenas.lt.  IN  A   203.0.113.20

MX prioritetai ir atsparumas gedimams

MX prioritetų sistema leidžia sukurti atsparią el. pašto infrastruktūrą:

jusudomenas.lt.  IN  MX  10  mail1.jusudomenas.lt.   ; Pirminis
jusudomenas.lt.  IN  MX  20  mail2.jusudomenas.lt.   ; Atsarginis
jusudomenas.lt.  IN  MX  30  mail3.jusudomenas.lt.   ; Antrinis atsarginis

Siuntėjo serveris pirmiausia bando pristatyti laišką serveriui su prioritetu 10. Jei jis nepasiekiamas, bandomas serveris su prioritetu 20, ir taip toliau. Jei keli serveriai turi tą patį prioritetą, srautas paskirstomas tarp jų.

MX įrašai populiarioms el. pašto paslaugoms

Google Workspace (Gmail):

jusudomenas.lt.  IN  MX  1   ASPMX.L.GOOGLE.COM.
jusudomenas.lt.  IN  MX  5   ALT1.ASPMX.L.GOOGLE.COM.
jusudomenas.lt.  IN  MX  5   ALT2.ASPMX.L.GOOGLE.COM.
jusudomenas.lt.  IN  MX  10  ALT3.ASPMX.L.GOOGLE.COM.
jusudomenas.lt.  IN  MX  10  ALT4.ASPMX.L.GOOGLE.COM.

Microsoft 365 (Exchange Online):

jusudomenas.lt.  IN  MX  0  jusudomenas-lt.mail.protection.outlook.com.

Zoho Mail:

jusudomenas.lt.  IN  MX  10  mx.zoho.eu.
jusudomenas.lt.  IN  MX  20  mx2.zoho.eu.
jusudomenas.lt.  IN  MX  50  mx3.zoho.eu.

Savarankiškas serveris:

jusudomenas.lt.  IN  MX  10  mail.jusudomenas.lt.
mail.jusudomenas.lt.  IN  A  203.0.113.20

MX diagnostika

# Patikrinkite MX įrašus
dig MX jusudomenas.lt +short

# Patikrinkite, ar MX serveris atsako
telnet mail.jusudomenas.lt 25

# Arba su openssl (su TLS)
openssl s_client -connect mail.jusudomenas.lt:25 -starttls smtp

# Pilna el. pašto DNS diagnostika
dig MX jusudomenas.lt
dig A mail.jusudomenas.lt
dig TXT jusudomenas.lt | grep spf
dig TXT _dmarc.jusudomenas.lt

Dažniausios MX klaidos

MX rodo į CNAME: MX įrašas neturėtų rodyti į CNAME. Pagal RFC 5321, MX turi rodyti tiesiai į A arba AAAA įrašą turintį vardą.

MX rodo į IP adresą: MX turi rodyti į domeno vardą, ne į IP adresą.

Trūksta A įrašo MX serveriui: Jei turite MX 10 mail.jusudomenas.lt, bet mail.jusudomenas.lt neturi A įrašo, el. paštas neveiks.

TXT įrašas: tekstinė informacija ir autentifikavimas

Kas yra TXT įrašas

TXT (Text) įrašas leidžia saugoti laisvos formos tekstinę informaciją domeno DNS zonoje. Nors pavadinimas skamba paprastai, TXT įrašai atlieka kritines funkcijas: el. pašto autentifikavimą (SPF, DKIM, DMARC), domeno nuosavybės patvirtinimą ir saugumo politikų publikavimą.

TXT įrašo formatas

jusudomenas.lt.  IN  TXT  "Bet koks tekstas gali būti čia"

TXT įrašo turinys yra eilutė (string), apsupta kabutėmis. Maksimalus vienos eilutės ilgis yra 255 simboliai, bet galima naudoti kelias eilutes:

jusudomenas.lt.  IN  TXT  "v=spf1 ip4:203.0.113.10 " "include:_spf.google.com -all"

SPF per TXT įrašą

SPF (Sender Policy Framework) nurodo, kurie serveriai turi teisę siųsti el. laiškus jūsų domeno vardu:

; Tik savo serveris
jusudomenas.lt.  IN  TXT  "v=spf1 ip4:203.0.113.10 -all"

; Google Workspace
jusudomenas.lt.  IN  TXT  "v=spf1 include:_spf.google.com -all"

; Microsoft 365
jusudomenas.lt.  IN  TXT  "v=spf1 include:spf.protection.outlook.com -all"

; Kelios paslaugos
jusudomenas.lt.  IN  TXT  "v=spf1 ip4:203.0.113.10 include:_spf.google.com include:servers.mcsv.net -all"

SPF mechanizmai:

MechanizmasReikšmė
ip4:203.0.113.10Leisti iš šio IPv4 adreso
ip4:203.0.113.0/24Leisti iš šio IPv4 tinklo
ip6:2001:db8::1Leisti iš šio IPv6 adreso
aLeisti iš domeno A įrašo IP
mxLeisti iš domeno MX serverių
include:domenas.comĮtraukti kito domeno SPF taisykles
redirect=domenas.comNaudoti kito domeno SPF vietoj šio
allAtitinka viską (naudojamas pabaigoje)

SPF kvalifikatoriai:

KvalifikatoriusReikšmė
+allPass (leisti viską, nerekomenduojama)
-allHard fail (atmesti viską, kas neatitinka)
~allSoft fail (žymėti kaip įtartiną, bet priimti)
?allNeutral (jokios politikos)

SPF apribojimai:

  • Maksimaliai 10 DNS lookup operacijų (kiekvienas include: yra vienas lookup)
  • Maksimaliai 2 void lookup (grąžinantys tuščią rezultatą)
  • Vienas SPF įrašas per domeną (jei turite du, abu bus ignoruojami)
# Patikrinkite SPF DNS lookup skaičių
# Naudokite: dmarcanalyzer.com/spf/checker/ arba mxtoolbox.com
dig TXT jusudomenas.lt | grep spf

DKIM per TXT įrašą

DKIM viešasis raktas publikuojamas kaip TXT įrašas su specialiu vardu:

; Formatas: selektorius._domainkey.domenas
selector1._domainkey.jusudomenas.lt.  IN  TXT  "v=DKIM1; k=rsa; p=MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA..."

; Google Workspace DKIM
google._domainkey.jusudomenas.lt.  IN  TXT  "v=DKIM1; k=rsa; p=MIIBIjAN..."

Selektorius (pvz., selector1, google, s1) yra identifikatorius, leidžiantis turėti kelis DKIM raktus vienam domenui (pvz., vieną gamybinei aplinkai, kitą rinkodaros paslaugai).

DMARC per TXT įrašą

_dmarc.jusudomenas.lt.  IN  TXT  "v=DMARC1; p=reject; rua=mailto:dmarc@jusudomenas.lt; ruf=mailto:dmarc-forensic@jusudomenas.lt; pct=100; adkim=s; aspf=s"
ParametrasReikšmė
v=DMARC1Versija (visada DMARC1)
p=rejectPolitika nepraėjusiems laiškams
rua=mailto:...Suvestinių ataskaitų adresas
ruf=mailto:...Detalių ataskaitų adresas
pct=100Procentas laiškų, kuriems taikoma politika
adkim=sDKIM atitikties režimas (s=strict, r=relaxed)
aspf=sSPF atitikties režimas

Domeno patvirtinimas per TXT

Daugelis paslaugų (Google Search Console, Microsoft 365, Facebook, Mailchimp) prašo pridėti TXT įrašą domeno nuosavybės patvirtinimui:

; Google Search Console patvirtinimas
jusudomenas.lt.  IN  TXT  "google-site-verification=abc123..."

; Microsoft 365 patvirtinimas
jusudomenas.lt.  IN  TXT  "MS=ms12345678"

; Facebook domeno patvirtinimas
jusudomenas.lt.  IN  TXT  "facebook-domain-verification=abc123..."

; Apple domeno asociacija
jusudomenas.lt.  IN  TXT  "apple-domain-verification=abc123"

Galite turėti kelis TXT įrašus tame pačiame domene (skirtingai nuo CNAME). Tai leidžia pridėti SPF, DKIM, DMARC ir paslaugų patvirtinimus vienu metu.

NS įrašas: kas valdo jūsų DNS

Kas yra NS įrašas

NS (Name Server) įrašas nurodo, kurie DNS serveriai yra autoritatyvūs jūsų domenui, tai yra, kurie serveriai turi oficialius jūsų DNS zonos duomenis.

NS įrašo formatas

jusudomenas.lt.  IN  NS  ns1.dnstiekėjas.lt.
jusudomenas.lt.  IN  NS  ns2.dnstiekėjas.lt.

Kiekvienam domenui rekomenduojama turėti bent du NS serverius (daugelis registratorių reikalauja minimumo). Tai užtikrina, kad jei vienas NS serveris sugedo, kitas gali atsakyti į užklausas.

Populiarių DNS tiekėjų NS serveriai

Cloudflare:

jusudomenas.lt.  IN  NS  anna.ns.cloudflare.com.
jusudomenas.lt.  IN  NS  bert.ns.cloudflare.com.

AWS Route 53:

jusudomenas.lt.  IN  NS  ns-123.awsdns-15.com.
jusudomenas.lt.  IN  NS  ns-456.awsdns-57.net.
jusudomenas.lt.  IN  NS  ns-789.awsdns-34.org.
jusudomenas.lt.  IN  NS  ns-1234.awsdns-26.co.uk.

Google Cloud DNS:

jusudomenas.lt.  IN  NS  ns-cloud-a1.googledomains.com.
jusudomenas.lt.  IN  NS  ns-cloud-a2.googledomains.com.

Domeno registratoriai (pvz., Hostinger, Namecheap):

jusudomenas.lt.  IN  NS  ns1.hostinger.com.
jusudomenas.lt.  IN  NS  ns2.hostinger.com.

NS įrašų keitimas

NS įrašai keičiami ne DNS zonos valdymo pulte, o domeno registratoriaus valdymo pulte. Kai norite perkelti DNS valdymą iš vieno tiekėjo į kitą (pvz., iš registratoriaus į Cloudflare):

  1. Susikurkite DNS zoną naujajame tiekėjuje (pvz., Cloudflare)
  2. Sukonfigūruokite visus DNS įrašus naujajame tiekėjuje
  3. Domeno registratoriaus valdymo pulte pakeiskite NS serverius į naujojo tiekėjo serverius
  4. Palaukite DNS propagaciją (iki 48 valandų, paprastai greičiau)

Svarbu: Prieš keisdami NS serverius, pirmiausia sukurkite visus DNS įrašus naujajame tiekėjuje. Jei pakeisite NS serverius, bet naujajame tiekėjuje nebus jūsų DNS įrašų, svetainė ir el. paštas nustos veikti.

# Patikrinkite dabartinus NS serverius
dig NS jusudomenas.lt +short

# Patikrinkite, ar naujasis NS serveris turi jūsų įrašus
dig @ns1.cloudflare.com jusudomenas.lt A +short
dig @ns1.cloudflare.com jusudomenas.lt MX +short

NS subdomenams (delegavimas)

Galite deleguoti subdomeno DNS valdymą kitam DNS serveriui:

; Pagrindinis domenas valdomas ns1.dnstiekėjas.lt
jusudomenas.lt.          IN  NS  ns1.dnstiekėjas.lt.
jusudomenas.lt.          IN  NS  ns2.dnstiekėjas.lt.

; api subdomenas deleguotas kitam DNS serveriui
api.jusudomenas.lt.      IN  NS  ns1.api-tiekėjas.com.
api.jusudomenas.lt.      IN  NS  ns2.api-tiekėjas.com.

Tai naudinga, kai skirtingos komandos ar paslaugos valdo skirtingus subdomenus.

SOA įrašas: zonos pradžia

Kas yra SOA įrašas

SOA (Start of Authority) įrašas yra privalomas kiekvienos DNS zonos elementas. Jis nurodo pagrindinę informaciją apie DNS zoną: pirminio NS serverio vardą, administratoriaus kontaktą, zonos serijos numerį ir laiko parametrus.

SOA įrašo formatas

jusudomenas.lt.  IN  SOA  ns1.dnstiekėjas.lt. admin.jusudomenas.lt. (
    2026060901  ; Serial (zonos versijos numeris)
    3600        ; Refresh (kas kiek antriniai serveriai tikrina atnaujinimus)
    900         ; Retry (po kiek laiko bandyti iš naujo, jei refresh nepavyko)
    1209600     ; Expire (po kiek laiko antrinis serveris nustoja aptarnauti zoną)
    86400       ; Minimum TTL (neigiamų atsakymų TTL)
)
LaukasReikšmėRekomenduojama
MNAMEPirminis NS serverisns1.jūsų-tiekėjas.lt
RNAMEAdmin el. paštas (taškas vietoj @)admin.jusudomenas.lt = admin@jusudomenas.lt
SerialZonos versijos numerisYYYYMMDDNN formatas
RefreshAtnaujinimo intervalas3600-86400 s
RetryPakartotinio bandymo intervalas900-3600 s
ExpireGaliojimo pabaigos laikas604800-2419200 s
MinimumNeigiamo atsakymo TTL300-86400 s

Serial numeris yra svarbiausias SOA laukas praktikoje. Kiekvieną kartą, kai atnaujinate DNS zoną, serijos numeris turi padidėti. Antriniai DNS serveriai lygina savo serijos numerį su pirminiu, ir jei pirminio numeris didesnis, atsisiunčia atnaujintą zoną.

Rekomenduojamas formatas: YYYYMMDDNN, kur NN yra dienos pakeitimo numeris (01, 02, 03…). Pavyzdžiui, 2026060901 reiškia 2026 m. birželio 9 d. pirmasis pakeitimas.

Praktikoje šiuolaikiniai DNS tiekėjai (Cloudflare, AWS Route 53, Google Cloud DNS) tvarko SOA įrašą automatiškai, ir jums retai reikia jį keisti rankiniu būdu.

PTR įrašas: atvirkštinė DNS paieška

Kas yra PTR įrašas

PTR (Pointer) įrašas atlieka atvirkštinę funkciją nei A įrašas: jis susieja IP adresą su domeno vardu. Kai turite IP adresą ir norite sužinoti, kokiam domenui jis priklauso, naudojate PTR užklausą.

PTR įrašo formatas

; IPv4 PTR (IP adresas apverstas + .in-addr.arpa)
10.113.0.203.in-addr.arpa.  IN  PTR  mail.jusudomenas.lt.

; IPv6 PTR (kiekvienas hex skaitmuo atskirai + .ip6.arpa)
4.3.3.7.0.7.3.0.e.2.a.8.0.0.0.0.0.0.0.0.3.a.5.8.8.b.d.0.1.0.0.2.ip6.arpa.  IN  PTR  mail.jusudomenas.lt.

IPv4 PTR adreso formavimas: IP adresas 203.0.113.10 apverčiamas → 10.113.0.203 ir pridedamas .in-addr.arpa galūnė.

Kodėl PTR yra svarbus

El. pašto pristatymas: Daugelis el. pašto serverių tikrina siuntėjo IP PTR įrašą. Jei PTR nenustatytas arba nesutampa su siuntėjo serverio vardu, laiškas gali būti atmestas arba patekti į spam.

# Patikrinkite PTR įrašą
dig -x 203.0.113.10 +short
# Tikėtinas rezultatas: mail.jusudomenas.lt.

# Patikrinkite, ar PTR sutampa su A įrašu (Forward-Confirmed Reverse DNS)
dig -x 203.0.113.10 +short     # → mail.jusudomenas.lt
dig A mail.jusudomenas.lt +short  # → 203.0.113.10
# Abu turi sutapti!

Kaip nustatyti PTR įrašą

PTR įrašas nustatomas ne jūsų DNS tiekėjuje, o IP adreso savininko (paprastai prieglobos tiekėjo arba duomenų centro) valdymo pulte.

  • VPS tiekėjai (DigitalOcean, Linode, Vultr, Hetzner): paprastai PTR nustatomas serverio valdymo pulte, pakeičiant „Reverse DNS” arba „rDNS” lauką
  • Dedikuoti serveriai: Kreipkitės į duomenų centrą
  • Debesų platformos (AWS, GCP, Azure): Naudokite Elastic IP su PTR konfigūracija
  • Namų internetas: Kreipkitės į ISP (interneto paslaugų tiekėją)

SRV įrašas: paslaugų aptikimas

Kas yra SRV įrašas

SRV (Service) įrašas nurodo konkretaus serverio adresą ir portą tam tikrai paslaugai. SRV leidžia klientams automatiškai rasti serverį, aptarnaujantį konkrečią paslaugą, be rankinio konfigūravimo.

SRV įrašo formatas

_paslauga._protokolas.domenas.  TTL  IN  SRV  prioritetas  svoris  portas  tikslas

; Pavyzdys: SIP (VoIP) paslauga
_sip._tcp.jusudomenas.lt.  IN  SRV  10  60  5060  sip1.jusudomenas.lt.
_sip._tcp.jusudomenas.lt.  IN  SRV  20  40  5060  sip2.jusudomenas.lt.
LaukasReikšmė
_sipPaslaugos pavadinimas
_tcpProtokolas (tcp arba udp)
10Prioritetas (mažesnis = aukštesnis)
60Svoris (apkrovos paskirstymui tarp vienodo prioriteto serverių)
5060Porto numeris
sip1.jusudomenas.lt.Serverio adresas

Praktiniai SRV pavyzdžiai

Microsoft 365 (Teams, Skype for Business):

_sip._tls.jusudomenas.lt.           IN  SRV  100  1  443  sipdir.online.lync.com.
_sipfederationtls._tcp.jusudomenas.lt.  IN  SRV  100  1  5061  sipfed.online.lync.com.

XMPP (Jabber) pokalbių serveris:

_xmpp-client._tcp.jusudomenas.lt.  IN  SRV  5  0  5222  xmpp.jusudomenas.lt.
_xmpp-server._tcp.jusudomenas.lt.  IN  SRV  5  0  5269  xmpp.jusudomenas.lt.

CalDAV ir CardDAV (kalendorius ir kontaktai):

_caldavs._tcp.jusudomenas.lt.   IN  SRV  0  1  443  calendar.jusudomenas.lt.
_carddavs._tcp.jusudomenas.lt.  IN  SRV  0  1  443  contacts.jusudomenas.lt.

Minecraft serveris:

_minecraft._tcp.jusudomenas.lt.  IN  SRV  0  5  25565  mc.jusudomenas.lt.

SRV svorio mechanizmas

Kai keli serveriai turi tą patį prioritetą, svoris nusako, kaip paskirstyti srautą:

; 70% srauto į server1, 30% į server2
_http._tcp.jusudomenas.lt.  IN  SRV  10  70  80  server1.jusudomenas.lt.
_http._tcp.jusudomenas.lt.  IN  SRV  10  30  80  server2.jusudomenas.lt.

CAA įrašas: SSL sertifikatų kontrolė

Kas yra CAA įrašas

CAA (Certification Authority Authorization) įrašas nurodo, kurios sertifikavimo institucijos (CA) turi teisę išduoti SSL sertifikatus jūsų domenui. Tai prevencinis saugumo mechanizmas, apsaugantis nuo neteisėto sertifikatų išdavimo.

CAA įrašo formatas

jusudomenas.lt.  IN  CAA  0  issue  "letsencrypt.org"
jusudomenas.lt.  IN  CAA  0  issue  "digicert.com"
jusudomenas.lt.  IN  CAA  0  issuewild  "letsencrypt.org"
jusudomenas.lt.  IN  CAA  0  iodef  "mailto:ssl-admin@jusudomenas.lt"
TagReikšmė
issueLeisti šiai CA išduoti sertifikatus šiam domenui
issuewildLeisti šiai CA išduoti Wildcard sertifikatus
iodefKur siųsti pranešimus apie pažeidimus

Praktiniai CAA pavyzdžiai

Tik Let’s Encrypt:

jusudomenas.lt.  IN  CAA  0  issue     "letsencrypt.org"
jusudomenas.lt.  IN  CAA  0  issuewild "letsencrypt.org"
jusudomenas.lt.  IN  CAA  0  iodef     "mailto:admin@jusudomenas.lt"

Let’s Encrypt ir DigiCert:

jusudomenas.lt.  IN  CAA  0  issue     "letsencrypt.org"
jusudomenas.lt.  IN  CAA  0  issue     "digicert.com"
jusudomenas.lt.  IN  CAA  0  issuewild "letsencrypt.org"
jusudomenas.lt.  IN  CAA  0  iodef     "mailto:admin@jusudomenas.lt"

Uždrausti Wildcard sertifikatus:

jusudomenas.lt.  IN  CAA  0  issue     "letsencrypt.org"
jusudomenas.lt.  IN  CAA  0  issuewild ";"
; Kabliataškis reiškia: jokia CA negali išduoti Wildcard sertifikatų

Uždrausti bet kokius sertifikatus (pvz., subdomenui, kuris nenaudojamas):

nenaudojamas.jusudomenas.lt.  IN  CAA  0  issue  ";"

CAA diagnostika

# Patikrinkite CAA įrašus
dig CAA jusudomenas.lt +short

# Jei nėra CAA įrašų, bet kuri CA gali išduoti sertifikatą
# (CAA nėra privalomas, bet labai rekomenduojamas)

Specialūs DNS įrašai

ALIAS / ANAME įrašas (nestandartinis)

ALIAS (arba ANAME) yra nestandartinis DNS įrašo tipas, siūlomas kai kurių DNS tiekėjų kaip CNAME alternatyva šakniniame domene. Jis veikia kaip CNAME, bet autoritatyvus DNS serveris automatiškai konvertuoja jį į A įrašą prieš grąžinant atsakymą.

; Cloudflare CNAME Flattening (automatinis)
jusudomenas.lt.  IN  CNAME  myapp.herokuapp.com.
; Cloudflare grąžins A įrašą su Heroku IP

; AWS Route 53 ALIAS
jusudomenas.lt.  IN  ALIAS  d123456.cloudfront.net.

; DNSimple ALIAS
jusudomenas.lt.  IN  ALIAS  myapp.herokuapp.com.

DNSKEY ir DS įrašai (DNSSEC)

DNSSEC (DNS Security Extensions) apsaugo DNS atsakymus nuo klastojimo, pridedant kriptografinius parašus.

; DNSKEY - viešasis zonos pasirašymo raktas
jusudomenas.lt.  IN  DNSKEY  257  3  13  (base64 encoded key)

; DS - tėvinio domeno delegavimo parašas
jusudomenas.lt.  IN  DS  12345  13  2  (SHA-256 hash)

DNSSEC konfigūracija dažniausiai atliekama DNS tiekėjo lygyje. Cloudflare siūlo vieno mygtuko DNSSEC aktyvavimą.

SSHFP įrašas

SSHFP (SSH Fingerprint) įrašas publikuoja SSH serverio rakto pirštų atspaudą DNS. Tai leidžia SSH klientams automatiškai patikrinti serverio tapatybę prieš prisijungiant.

; SSHFP įrašas
jusudomenas.lt.  IN  SSHFP  2  1  abc123def456...
# Sugeneruokite SSHFP įrašą iš serverio SSH raktų
ssh-keygen -r jusudomenas.lt

TLSA įrašas (DANE)

TLSA (Transport Layer Security Authentication) įrašas leidžia pririšti SSL sertifikatą prie DNS, užtikrinant, kad klientai prisijungs tik su teisingu sertifikatu. Tai yra DANE (DNS-based Authentication of Named Entities) standarto dalis.

_443._tcp.jusudomenas.lt.  IN  TLSA  3  1  1  abc123def456...
_25._tcp.mail.jusudomenas.lt.  IN  TLSA  3  1  1  xyz789...

TLSA reikalauja DNSSEC, todėl naudojamas rečiau nei kiti įrašai. Tačiau el. pašto saugumui (SMTP DANE) jis tampa vis populiaresnis.

DNS tiekėjų palyginimas

Populiariausi DNS tiekėjai

Cloudflare DNS:

  • Nemokamas planas su neribotu DNS užklausų kiekiu
  • Vienas greičiausių DNS tiekėjų pasaulyje (vidutinis atsakymo laikas ~11 ms)
  • CNAME Flattening šakniniams domenams
  • DNSSEC vieno mygtuko aktyvavimas
  • DDoS apsauga
  • API valdymui
  • Proxy režimas (CDN + DDoS apsauga + SSL)

AWS Route 53:

  • Mokamas (0,50 USD/mėn. per zoną + 0,40 USD per 1M užklausų)
  • Aukštas pasiekiamumas (100 % SLA)
  • ALIAS įrašai (šakniniams domenams)
  • Sveikatos patikrinimai (health checks) su automatišku failover
  • Geo-routing (atsakymai pagal lankytojo geografinę vietą)
  • Latency-based routing
  • Integracija su kitomis AWS paslaugomis

Google Cloud DNS:

  • Mokamas (0,20 USD/mėn. per zoną + 0,40 USD per 1M užklausų)
  • Anycast DNS tinklas
  • DNSSEC palaikymas
  • API ir gcloud CLI valdymas

Hetzner DNS:

  • Nemokamas
  • Iki 50 zonų nemokamame plane
  • Greitas ir patikimas
  • API valdymui

Registratorių DNS (Namecheap, GoDaddy, Hostinger):

  • Paprastai įtrauktas į domeno registracijos kainą
  • Bazinis funkcionalumas
  • Ribotesni įrašų tipai
  • Lėtesnis nei specializuoti DNS tiekėjai
  • Tinka mažoms svetainėms su paprastais poreikiais

DNS tiekėjo keitimas

Kai norite pereiti nuo vieno DNS tiekėjo prie kito:

  1. Naujame tiekėjuje sukurkite zoną: Pridėkite domeną ir sukurkite visus DNS įrašus (A, AAAA, CNAME, MX, TXT ir kt.)
  2. Patikrinkite naujojo tiekėjo įrašus:
# Patikrinkite, ar naujas NS serveris turi teisingus įrašus
dig @naujasis-ns1.tiekėjas.com jusudomenas.lt A +short
dig @naujasis-ns1.tiekėjas.com jusudomenas.lt MX +short
dig @naujasis-ns1.tiekėjas.com jusudomenas.lt TXT +short
  1. Pakeiskite NS serverius registratoriuje: Domeno registratoriaus valdymo pulte pakeiskite NS serverius į naujojo tiekėjo serverius.
  2. Palaukite propagaciją: Iki 48 valandų (paprastai 1-12 valandų).
  3. Patikrinkite po propagacijos:
dig NS jusudomenas.lt +short
# Turėtų rodyti naujojo tiekėjo NS serverius

DNS diagnostika ir trikčių šalinimas

Pagrindinės diagnostikos komandos

# dig - pagrindinė DNS diagnostikos komanda

# A įrašas
dig jusudomenas.lt A

# Trumpas atsakymas
dig jusudomenas.lt A +short

# MX įrašai
dig jusudomenas.lt MX +short

# TXT įrašai
dig jusudomenas.lt TXT +short

# NS įrašai
dig jusudomenas.lt NS +short

# Bet koks įrašo tipas
dig jusudomenas.lt ANY +noall +answer

# Užklausa konkrečiam DNS serveriui
dig @8.8.8.8 jusudomenas.lt A +short

# Pilnas atsakymas su diagnostine informacija
dig jusudomenas.lt A +trace

# SOA įrašas
dig jusudomenas.lt SOA +short

# Atvirkštinė DNS paieška (PTR)
dig -x 203.0.113.10 +short
# nslookup - alternatyva dig

nslookup jusudomenas.lt
nslookup -type=MX jusudomenas.lt
nslookup -type=TXT jusudomenas.lt
nslookup jusudomenas.lt 8.8.8.8   # Konkrečiam DNS serveriui
# host - paprasčiausia DNS užklausa

host jusudomenas.lt
host -t MX jusudomenas.lt
host -t TXT jusudomenas.lt
host 203.0.113.10   # Atvirkštinė paieška

Dažniausios DNS klaidos ir jų sprendimai

Klaida: NXDOMAIN (domenas neegzistuoja)

dig jusudomenas.lt A
# status: NXDOMAIN

# Priežastys:
# 1. Domenas neregistruotas arba pasibaigęs
# 2. NS serveriai neatsakydami arba neturi šio domeno zonos
# 3. Rašybos klaida domeno varde

# Sprendimas:
# Patikrinkite, ar domenas registruotas: whois jusudomenas.lt
# Patikrinkite NS serverius: dig NS jusudomenas.lt

Klaida: SERVFAIL (serverio klaida)

dig jusudomenas.lt A
# status: SERVFAIL

# Priežastys:
# 1. Autoritatyvus DNS serveris neveikia
# 2. DNSSEC validacijos klaida
# 3. DNS zonos konfigūracijos klaida

# Sprendimas:
# Patikrinkite NS serverių veikimą tiesiogiai
dig @ns1.dnstiekėjas.lt jusudomenas.lt A
# Jei NS neatsako, kreipkitės į DNS tiekėją

Klaida: REFUSED (užklausa atmesta)

dig @ns1.tiekėjas.lt jusudomenas.lt A
# status: REFUSED

# Priežastys:
# 1. DNS serveris nenurodytas kaip autoritatyvus šiam domenui
# 2. Prieigos kontrolės sąrašas (ACL) blokuoja užklausą

# Sprendimas:
# Patikrinkite, ar NS įrašai rodo į teisingus serverius
dig NS jusudomenas.lt +short

Klaida: tuščias atsakymas (NOERROR, bet be duomenų)

dig jusudomenas.lt A +short
# (tuščia)

# Priežastys:
# 1. A įrašas neegzistuoja (bet domenas egzistuoja)
# 2. DNS zona egzistuoja, bet A įrašas nepridėtas

# Sprendimas:
# Pridėkite A įrašą DNS valdymo pulte

Klaida: DNS propagacija nebaigta

# Skirtingi DNS serveriai grąžina skirtingus atsakymus
dig @8.8.8.8 jusudomenas.lt A +short    # 203.0.113.10 (senas)
dig @1.1.1.1 jusudomenas.lt A +short    # 198.51.100.20 (naujas)

# Sprendimas: palaukite, kol TTL pasibaigs visuose serveriuose
# Patikrinkite TTL:
dig jusudomenas.lt A | grep -E "^jusudomenas" | awk '{print $2}'

Pilnas DNS audito skriptas

#!/bin/bash
# dns-audit.sh - pilna DNS diagnostika

DOMAIN=${1:-"jusudomenas.lt"}

echo "============================================"
echo "DNS AUDITAS: $DOMAIN"
echo "============================================"

echo -e "\n--- NS serveriai ---"
dig NS $DOMAIN +short

echo -e "\n--- A įrašas ---"
dig A $DOMAIN +short

echo -e "\n--- AAAA įrašas ---"
dig AAAA $DOMAIN +short

echo -e "\n--- www subdomenas ---"
dig A www.$DOMAIN +short

echo -e "\n--- MX įrašai ---"
dig MX $DOMAIN +short

echo -e "\n--- SPF ---"
dig TXT $DOMAIN +short | grep spf

echo -e "\n--- DMARC ---"
dig TXT _dmarc.$DOMAIN +short

echo -e "\n--- DKIM (selector1) ---"
dig TXT selector1._domainkey.$DOMAIN +short

echo -e "\n--- DKIM (google) ---"
dig TXT google._domainkey.$DOMAIN +short

echo -e "\n--- CAA ---"
dig CAA $DOMAIN +short

echo -e "\n--- SOA ---"
dig SOA $DOMAIN +short

echo -e "\n--- Propagacija (keli DNS serveriai) ---"
echo "Google DNS (8.8.8.8):"
dig @8.8.8.8 $DOMAIN A +short
echo "Cloudflare DNS (1.1.1.1):"
dig @1.1.1.1 $DOMAIN A +short
echo "Quad9 DNS (9.9.9.9):"
dig @9.9.9.9 $DOMAIN A +short

echo -e "\n============================================"
echo "AUDITAS BAIGTAS"
echo "============================================"

DNS saugumas

DNSSEC

DNSSEC (DNS Security Extensions) prideda kriptografinius parašus prie DNS atsakymų, užtikrinant, kad atsakymas nebuvo pakeistas kelyje (DNS spoofing / cache poisoning apsauga).

Kaip aktyvuoti DNSSEC:

  1. Cloudflare: DNS → DNSSEC → „Enable DNSSEC” → nukopijuokite DS įrašą ir pridėkite jį domeno registratoriuje
  2. AWS Route 53: Hosted Zone → DNSSEC signing → Enable
  3. Registratorius: Domeno nustatymuose pridėkite DS įrašą, gautą iš DNS tiekėjo
# Patikrinkite, ar DNSSEC aktyvuotas
dig jusudomenas.lt +dnssec +short

# Patikrinkite DS įrašą
dig DS jusudomenas.lt +short

# Pilnas DNSSEC patikrinimas
dig jusudomenas.lt DNSKEY +short

DNS per HTTPS (DoH) ir DNS per TLS (DoT)

Standartinės DNS užklausos keliauja nešifruotai, tai reiškia, kad jūsų interneto tiekėjas (ir bet kas tinkle) gali matyti, kokias svetaines lankote. DoH ir DoT šifruoja DNS užklausas.

  • DoH (DNS over HTTPS): DNS užklausos siunčiamos per HTTPS (443 portas). Naudoja Cloudflare (1.1.1.1), Google (8.8.8.8), Firefox pagal nutylėjimą.
  • DoT (DNS over TLS): DNS užklausos šifruojamos TLS (853 portas). Naudoja Android Private DNS.

Tai yra kliento pusės konfigūracija ir neturi įtakos jūsų domeno DNS įrašams. Tačiau verta žinoti, kad jūsų lankytojai gali naudoti šifruotą DNS, kas apsaugo jų privatumą.

DNS ugniasienė ir DDoS apsauga

DNS serveriai yra dažnas DDoS atakų taikinys. Jei jūsų autoritatyvus DNS serveris neveikia, visa svetainė ir el. paštas tampa nepasiekiami.

Apsaugos priemonės:

  • Naudokite DNS tiekėją su integruota DDoS apsauga (Cloudflare, AWS Route 53)
  • Turėkite bent 2-3 NS serverius skirtingose geografinėse lokacijose
  • Naudokite Anycast DNS (užklausos nukreipiamos į artimiausią serverį)
  • Stebėkite DNS atsakymų laiką ir pasiekiamumą

DNS ir svetainės greitis

DNS atsakymo laikas

DNS atsakymo laikas yra dalis bendro puslapio krovimo laiko. Kiekvienas DNS lookup prideda 10-100 ms (priklausomai nuo DNS tiekėjo ir geografinės vietos).

# Išmatuokite DNS atsakymo laiką
dig jusudomenas.lt A | grep "Query time"
# Query time: 12 msec

# Palyginkite kelis DNS tiekėjus
dig @8.8.8.8 jusudomenas.lt A | grep "Query time"    # Google
dig @1.1.1.1 jusudomenas.lt A | grep "Query time"    # Cloudflare
dig @9.9.9.9 jusudomenas.lt A | grep "Query time"    # Quad9

DNS Prefetching

Naršyklės gali iš anksto atlikti DNS užklausas nuorodoms, esančioms puslapyje, kad pagreitintų navigaciją:

<!-- DNS prefetch trečiųjų šalių domenams -->
<link rel="dns-prefetch" href="//fonts.googleapis.com">
<link rel="dns-prefetch" href="//cdn.example.com">
<link rel="dns-prefetch" href="//www.google-analytics.com">

<!-- Preconnect (DNS + TCP + TLS) svarbiausiems resursams -->
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>

Subdomenų skaičiaus optimizavimas

Kiekvienas naujas subdomenas reikalauja atskiro DNS lookup. Jei jūsų puslapis kraunamas resursus iš 10 skirtingų subdomenų, tai prideda 10 papildomų DNS užklausų.

Rekomendacija: Stenkitės naudoti kuo mažiau skirtingų domenų puslapio resursams. Konsoliduokite CDN, šriftų ir skriptų domenus, kur įmanoma.

DNS ir el. paštas: pilnas konfigūracijos vadovas

El. pašto DNS konfigūracija yra viena sudėtingiausių DNS sričių, nes reikia suderinti kelis skirtingus įrašų tipus.

Minimali el. pašto DNS konfigūracija

; 1. MX įrašas (kur pristatyti laiškus)
jusudomenas.lt.  IN  MX  10  mail.jusudomenas.lt.

; 2. A įrašas MX serveriui
mail.jusudomenas.lt.  IN  A  203.0.113.20

; 3. SPF (kas gali siųsti jūsų vardu)
jusudomenas.lt.  IN  TXT  "v=spf1 mx -all"

; 4. DMARC (ką daryti su neautentifikuotais laiškais)
_dmarc.jusudomenas.lt.  IN  TXT  "v=DMARC1; p=none; rua=mailto:dmarc@jusudomenas.lt"

Pilna el. pašto DNS konfigūracija

; MX įrašai (su atsarginiu serveriu)
jusudomenas.lt.  IN  MX  10  mail.jusudomenas.lt.
jusudomenas.lt.  IN  MX  20  backup-mail.jusudomenas.lt.

; A įrašai MX serveriams
mail.jusudomenas.lt.         IN  A  203.0.113.20
backup-mail.jusudomenas.lt.  IN  A  203.0.113.21

; SPF
jusudomenas.lt.  IN  TXT  "v=spf1 ip4:203.0.113.20 ip4:203.0.113.21 -all"

; DKIM
selector1._domainkey.jusudomenas.lt.  IN  TXT  "v=DKIM1; k=rsa; p=MIIBIjAN..."

; DMARC
_dmarc.jusudomenas.lt.  IN  TXT  "v=DMARC1; p=reject; rua=mailto:dmarc@jusudomenas.lt"

; PTR (nustatomas per IP tiekėją, ne DNS zonoje)
; 20.113.0.203.in-addr.arpa.  IN  PTR  mail.jusudomenas.lt.

; MTA-STS
_mta-sts.jusudomenas.lt.  IN  TXT  "v=STSv1; id=20260609"

; SMTP TLS Reporting
_smtp._tls.jusudomenas.lt.  IN  TXT  "v=TLSRPTv1; rua=mailto:tls-reports@jusudomenas.lt"

; BIMI (logotipas el. laiškuose)
default._bimi.jusudomenas.lt.  IN  TXT  "v=BIMI1; l=https://jusudomenas.lt/bimi/logo.svg"

; Autodiscover/Autoconfig (automatinė el. pašto kliento konfigūracija)
_autodiscover._tcp.jusudomenas.lt.  IN  SRV  0  1  443  mail.jusudomenas.lt.
autoconfig.jusudomenas.lt.          IN  CNAME  mail.jusudomenas.lt.

Dažnai užduodami klausimai

Kiek laiko trunka DNS pakeitimų propagacija?
Propagacija priklauso nuo senojo įrašo TTL reikšmės. Jei TTL buvo 3600 sekundžių (1 valanda), pakeitimas bus matomas visiems per 1 valandą. Jei TTL buvo 86400 (24 valandos), propagacija gali trukti iki 24 valandų. Kai kurie ISP DNS serveriai gali talpinti atsakymus ilgiau nei nurodyta TTL, todėl ekstremaliais atvejais propagacija gali užtrukti iki 48 valandų. Sumažinkite TTL prieš planuojamą pakeitimą, kad propagacija būtų greitesnė.

Ar galiu turėti kelis TXT įrašus tam pačiam domenui?
Taip. Skirtingai nuo CNAME, TXT įrašai gali koegzistuoti. Galite turėti SPF, DMARC, Google Search Console patvirtinimą ir kitus TXT įrašus tame pačiame domene vienu metu. Tačiau turėkite tik vieną SPF įrašą (pradedantį v=spf1). Jei turite du SPF įrašus, abu bus ignoruojami.

Kuo skiriasi A ir CNAME įrašai? Kurį naudoti?
A įrašas rodo tiesiai į IP adresą. CNAME rodo į kitą domeno vardą. Naudokite A įrašą, kai žinote tikslų serverio IP adresą (pvz., savo VPS). Naudokite CNAME, kai trečioji šalis prašo nukreipti subdomeną į jų serverį (pvz., Shopify, Heroku, Netlify), nes jų IP adresai gali keistis, o domeno vardas lieka pastovus. Šakniniame domene (be subdomeno) naudokite tik A įrašą (arba ALIAS/CNAME Flattening, jei DNS tiekėjas palaiko).

Ar DNS įrašai veikia SEO?
Tiesiogiai ne. Google nevertina DNS konfigūracijos kaip reitingavimo faktoriaus. Tačiau DNS netiesiogiai veikia SEO per: (1) svetainės pasiekiamumą (neteisingi DNS = svetainė nepasiekiama = prarastos pozicijos), (2) puslapio greitį (lėtas DNS = lėtesnis puslapio krovimas), (3) el. pašto pristatymą (teisingi SPF/DKIM/DMARC = laiškai nepatenka į spam).

Ar galiu naudoti skirtingus DNS tiekėjus skirtingiems subdomenams?
Taip, per NS delegavimą. Galite deleguoti subdomeno DNS valdymą kitam tiekėjui, pridėdami NS įrašus tam subdomenui. Tačiau pagrindinis domenas bus valdomas vieno DNS tiekėjo.

Ką daryti, jei DNS tiekėjas sugedo?
Jei jūsų DNS tiekėjas tampa nepasiekiamas, jūsų svetainė ir el. paštas nustos veikti, kai talpykloje saugomų DNS atsakymų TTL pasibaigs. Apsaugos priemonės: (1) naudokite patikimą DNS tiekėją su aukštu SLA (Cloudflare, AWS Route 53), (2) naudokite antrinį (secondary) DNS kitame tiekėjuje, (3) nustatykite ilgesnį TTL stabiliems įrašams (kas leidžia talpyklai veikti ilgiau gedimo metu).

Kaip patikrinti, ar mano DNS įrašai teisingi?
Naudokite dig komandą komandinėje eilutėje arba internetinius įrankius: MXToolbox (mxtoolbox.com) el. pašto DNS patikrinimui, whatsmydns.net propagacijos patikrinimui, dnschecker.org kelių serverių patikrinimui. Reguliariai tikrinkite visus savo DNS įrašus, ypač po bet kokių infrastruktūros pakeitimų.

Ar saugu rodyti savo DNS įrašus viešai?
DNS įrašai yra viešai prieinami pagal dizainą, tai yra viena iš DNS sistemos savybių. Bet kas gali atlikti dig užklausą ir pamatyti jūsų A, MX, TXT ir kitus įrašus. Tai nėra saugumo problema, nes DNS sistema sukurta būti vieša. Tačiau vengti skelbti vidinius IP adresus ar nereikalingus subdomenus (pvz., admin.jusudomenas.lt, staging.jusudomenas.lt) yra gera saugumo praktika.

DNS įrašų kontrolinis sąrašas

Naudokite šį sąrašą, kad patikrintumėte savo domeno DNS konfigūraciją.

Baziniai svetainės įrašai

  • [ ] A įrašas šakniniame domene (jusudomenas.lt → serverio IP)
  • [ ] A arba CNAME įrašas www subdomenui
  • [ ] AAAA įrašas (jei serveris palaiko IPv6)
  • [ ] NS įrašai (bent 2 skirtingi NS serveriai)
  • [ ] SOA įrašas (paprastai valdomas automatiškai)

El. pašto įrašai

  • [ ] MX įrašas (su bent vienu atsarginiu serveriu)
  • [ ] A įrašas kiekvienam MX serveriui
  • [ ] SPF (TXT įrašas su v=spf1)
  • [ ] DKIM (TXT įrašas selector._domainkey subdomenui)
  • [ ] DMARC (TXT įrašas _dmarc subdomenui)
  • [ ] PTR įrašas siuntimo serveriui (per IP tiekėją)

Saugumo įrašai

  • [ ] CAA įrašas (kurios CA gali išduoti SSL sertifikatus)
  • [ ] DNSSEC aktyvuotas (jei tiekėjas palaiko)
  • [ ] MTA-STS (TLS reikalavimas el. paštui)

Papildomi įrašai (pagal poreikį)

  • [ ] SRV įrašai (Microsoft 365, VoIP ir kt.)
  • [ ] CNAME domeno patvirtinimui (Google Search Console, Facebook ir kt.)
  • [ ] TXT domeno patvirtinimui paslaugoms
  • [ ] Autodiscover / Autoconfig el. pašto klientams

Apibendrinimas

DNS įrašai yra jūsų domeno infrastruktūros pagrindas. Kiekvienas įrašo tipas atlieka konkrečią funkciją:

  • A ir AAAA nukreipia domeną į serverio IP adresą
  • CNAME sukuria pseudonimą, nurodantį į kitą domeną
  • MX maršrutizuoja el. paštą į teisingą serverį
  • TXT autentifikuoja el. paštą (SPF, DKIM, DMARC) ir patvirtina domeno nuosavybę
  • NS nurodo, kas valdo jūsų DNS zoną
  • SOA apibrėžia zonos parametrus
  • PTR susieja IP adresą su domeno vardu (atvirkštinė paieška)
  • SRV nurodo paslaugų serverių adresus ir portus
  • CAA kontroliuoja, kas gali išduoti SSL sertifikatus

Teisingi DNS įrašai yra nematomi: svetainė veikia, el. laiškai pristatomi, sertifikatai gaunami. Neteisingi DNS įrašai yra labai matomi: svetainė nepasiekiama, laiškai dingsta, klientai negali jūsų rasti. Investuokite laiko savo DNS konfigūracijos auditui ir įsitikinkite, kad kiekvienas įrašas atlieka savo darbą teisingai.

Į viršų