A zapis
A zapis povezuje domen sa IPv4 adresom. To je jedan od najstarijih i najčešće korišćenih tipova DNS zapisa, definisan standardima RFC 1034 i RFC 1035 iz 1987. godine.
Primer: za domen example.com može postojati A zapis koji pokazuje na IP adresu 192.0.2.1. Kada korisnik otvori example.com u pregledaču, rekurzivni DNS resolver postavlja upit autoritativnom serveru, dobija A zapis i pregledač uspostavlja vezu prema toj IP adresi.
Jedan domen može imati i više A zapisa za istu vrednost imena. Resolver tada vraća sve adrese, a klijent ili pregledač bira jednu od njih. Tako se često raspodeljuje saobraćaj između više servera.
AAAA zapis
AAAA zapis ima istu funkciju kao A zapis, ali umesto IPv4 adrese koristi IPv6 adresu. IPv6 prostor je mnogo veći od IPv4 i namenjen je dugoročnoj zameni IPv4 adresnog sistema.
Primer AAAA zapisa za domen example.com može izgledati ovako: 2001:db8::1. Kada klijent podržava IPv6 i serveri imaju javnu IPv6 adresu, pregledač može uspostaviti vezu direktno preko IPv6, bez potrebe za prevođenjem na IPv4.
Domen može imati istovremeno i A i AAAA zapis. U tom slučaju klijent koristi onaj protokol koji ima na raspolaganju, najčešće po pravilu poznatom kao Happy Eyeballs (RFC 8305).
CNAME zapis
CNAME (Canonical Name) povezuje jedan naziv u DNS-u sa drugim nazivom. CNAME ne pokazuje direktno na IP adresu, već na domen ili poddomen čiji A ili AAAA zapis treba dalje pratiti.
Primer: www.example.com CNAME example.com. znači da poddomen www koristi iste podatke kao i koreni domen. Resolver će prvo dobiti CNAME odgovor, pa će zatim postaviti novi upit za example.com i tek tu dobiti pravu IP adresu.
CNAME se često koristi kod CDN servisa, cloud platformi, email rešenja i privremenih migracija sajtova. Pravila DNS standarda ne dozvoljavaju CNAME na samom korenu domena (apex), niti uz druge zapise istog imena, pa se za root domen koriste A i AAAA zapisi ili posebni provajderski mehanizmi (ALIAS, ANAME).
MX zapis
MX (Mail Exchange) zapis određuje koji server prima email poruke za domen. Tip zapisa definisan je u RFC 1035, a način na koji se MX koristi za isporuku pošte opisan je u SMTP standardu RFC 5321.
Primer: example.com MX 10 mail.example.com. znači da poruke poslate na adresu korisnik@example.com treba isporučiti serveru mail.example.com. Broj 10 je prioritet. Manja vrednost znači viši prioritet, pa pošiljaoci prvo pokušavaju server sa nižim brojem.
Domen može imati više MX zapisa sa različitim prioritetima. To omogućava rezervne mail servere koji preuzimaju isporuku ako glavni server nije dostupan. MX zapis pokazuje na ime drugog domena, koje zatim mora imati svoj A ili AAAA zapis.
TXT zapis
TXT zapis služi za čuvanje proizvoljnog teksta unutar DNS sistema. Prvobitno se koristio za beleške i opise vezane za domen. Danas se preko TXT zapisa najčešće prenose podaci za proveru i konfiguraciju domena.
TXT zapisi danas se najčešće koriste za:
- SPF, DKIM i DMARC podatke za email autentifikaciju
- verifikaciju vlasništva nad domenom kod cloud servisa (Google, Microsoft, AWS)
- konfiguracione zapise za razne aplikacije i sisteme
- ACME challenge zapise za izdavanje SSL sertifikata
Jedan domen može imati više TXT zapisa istovremeno, jer svaki servis obično čita samo zapis sa svojim prefiksom ili formatom.
SPF zapis
SPF (Sender Policy Framework) definiše koji serveri smeju da šalju email u ime domena. U DNS-u se zapisuje kao TXT zapis sa propisanom sintaksom, opisan u standardu RFC 7208.
Tipičan SPF zapis izgleda ovako: v=spf1 ip4:192.0.2.1 include:_spf.google.com -all. Ovaj zapis kaže da poštu sa domena smeju da šalju server na IP adresi 192.0.2.1 i serveri navedeni u SPF zapisu Google-ovog servisa, a sve ostalo treba odbiti.
Kada email server primi poruku, on može da proveri SPF pravila domena pošiljaoca i da utvrdi da li se IP adresa servera koji je stvarno isporučio poruku nalazi na dozvoljenoj listi. SPF na taj način otežava lažno predstavljanje (spoofing) domena.
DKIM zapis
DKIM (DomainKeys Identified Mail) koristi digitalni potpis kako bi primalac mogao da proveri da sadržaj email poruke nije menjan tokom prenosa i da je poruka zaista poslata sa servera ovlašćenog za domen. DKIM je definisan standardom RFC 6376.
Server pošiljaoca potpisuje svaku poruku privatnim ključem koji se ne objavljuje. Odgovarajući javni ključ stoji u DNS-u kao TXT zapis na adresi selector._domainkey.example.com, gde je selector proizvoljna oznaka koja omogućava više aktivnih ključeva istovremeno.
Server primaoca pronalazi javni ključ preko DNS-a, dekriptuje potpis i upoređuje ga sa hešom poruke. Ako se podudaraju, DKIM provera prolazi. DKIM sam po sebi ne sprečava spam, ali daje siguran način da se utvrdi da poruka stvarno potiče sa navedenog domena.
DMARC zapis
DMARC (Domain-based Message Authentication, Reporting and Conformance) povezuje SPF i DKIM i određuje šta server primaoca treba da uradi ako provera ne uspe. Definisan je standardom RFC 7489.
Primer DMARC zapisa: v=DMARC1; p=reject; rua=mailto:dmarc@example.com. Polje p označava politiku domena. Vrednost none znači samo praćenje, quarantine označava poruku kao sumnjivu (najčešće je usmerava u spam folder), a reject traži potpuno odbijanje isporuke.
Polje rua definiše adresu na koju serveri primaoca šalju zbirne izveštaje o pokušajima isporuke u ime domena. Ti izveštaji omogućavaju vlasniku domena da vidi koji sistemi šalju poruke u njegovo ime i da li sve prolazi SPF i DKIM proveru.
TTL vrednost
TTL (Time To Live) određuje koliko dugo DNS odgovor sme da ostane sačuvan u kešu pre nego što resolver mora ponovo da postavi upit autoritativnom serveru. TTL se zapisuje u sekundama.
Vrednost 3600 znači da DNS odgovor može da ostane keširan jedan sat. Manji TTL omogućava brže širenje promena, ali povećava broj DNS upita prema autoritativnim serverima. Veći TTL smanjuje broj upita i pomaže keširanju, ali usporava propagaciju promena.
Pre planiranih izmena DNS-a (na primer migracije servera) često se TTL privremeno snižava nekoliko sati ili dana unapred, kako bi nova vrednost stigla do korisnika brzo nakon promene.
DNS propagacija
Kada se DNS zapis promeni, nova vrednost se ne pojavljuje odmah svuda na internetu. Rekurzivni DNS serveri širom sveta čuvaju privremene kopije zapisa onoliko dugo koliko nalaže TTL, pa novu vrednost dobiju tek pošto njihov keš istekne.
Ovaj proces se često naziva DNS propagacija. Promene mogu biti vidljive već za nekoliko minuta, ali kod većih TTL vrednosti i nekih provajdera potpuno usaglašavanje može potrajati i do 24 ili 48 sati. Tokom propagacije neki posetioci vide novi server, dok drugi i dalje dolaze na stari.
Reverse DNS
Reverse DNS, poznat i kao PTR zapis, povezuje IP adresu sa nazivom domena. Standardni DNS upit prevodi domen u IP adresu, dok reverse DNS radi obrnuto: prevodi IP adresu u domen.
PTR zapisi se ne nalaze u zone fajlu samog domena, već u posebnim zonama unutar in-addr.arpa za IPv4 i ip6.arpa za IPv6 adresni prostor. Njima obično upravlja vlasnik mreže ili IP adresnog opsega, najčešće hosting provajder ili telekom operater.
Reverse DNS se često koristi kod mail servera, sistema za filtriranje spama i mrežne dijagnostike. Mnogi prijemni mail serveri proveravaju da li IP adresa pošiljaoca ima ispravan PTR zapis pre nego što prihvate poruku.
DNSSEC
DNSSEC (Domain Name System Security Extensions) dodaje kriptografsku proveru DNS odgovora. Opisan je u standardima RFC 4033, 4034 i 4035 i nadograđuje postojeći DNS protokol, ne menja ga.
DNSSEC ne šifruje saobraćaj, već potpisuje DNS zapise digitalnim potpisima. Resolver koji podržava DNSSEC može da proveri da li su podaci stigli nepromenjeni i da li potiču sa autoritativnog servera, čime se otežavaju napadi tipa DNS spoofing i cache poisoning.
Da bi DNSSEC funkcionisao, lanac poverenja mora biti uspostavljen od korenske zone preko TLD-a (na primer .rs, .com) do samog domena. Zato se DNSSEC obično podešava na dva mesta: kod registra domena i kod DNS provajdera. Globalnu koordinaciju root zone obavlja ICANN.
Zaključak
DNS zapisi su deo osnovne infrastrukture interneta. Web sajtovi, email sistemi, cloud servisi i bezbednosni mehanizmi oslanjaju se na ispravno podešen DNS.
A i AAAA zapisi povezuju domen sa IP adresom. CNAME povezuje jedan naziv sa drugim. MX određuje servere za prijem pošte. TXT čuva dodatne informacije, među kojima su i SPF, DKIM i DMARC zapisi za autentifikaciju email-a. TTL određuje koliko dugo se odgovor čuva u kešu, dok DNSSEC dodaje proveru autentičnosti samih DNS podataka.
Razumevanje ovih zapisa pomaže pri postavljanju novog domena, migraciji sajta, podešavanju email-a i otklanjanju problema sa dostupnošću i isporukom poruka.
Držimo servere u pogonu i pišemo tekstove o tome. Pitanja: support@nijefila.rs