Přejít na obsah
Aktuální kupón:sleva 10 %Uplatnit v objednávce

DNS záznamy srozumitelně: A, AAAA, CNAME, SRV, TXT, MX a PTR

Jak funguje DNS, co dělá který typ záznamu, co je TTL a proč změna chvíli trvá, jak záznam ověřit příkazem nslookup nebo dig a jakých chyb se vyvarovat.

  • začátečník
  • ~15 min
  • Aktualizováno 1. 10. 2026

DNS převádí jména jako example.cz na IP adresy, kterým rozumí počítače. V tomhle článku vysvětlíme, co dělá který typ záznamu, proč se změna neprojeví hned a jak si záznam sami ověříte. Na základy pak navazují návody na doménu pro VPS a doménu pro Minecraft server.

Co budete potřebovat

  • Vlastní doménu (u kteréhokoli registrátora), nebo jen chuť pochopit, jak DNS funguje
  • Přístup ke správě DNS záznamů vaší domény
  • Počítač s Windows, macOS nebo Linuxem pro ověření záznamů
  • Asi 15 minut

Jak DNS funguje#

Když hráč napíše do Minecraftu mc.example.cz nebo návštěvník do prohlížeče example.cz, jeho počítač se zeptá resolveru (DNS serveru poskytovatele internetu, nebo veřejného jako 1.1.1.1). Resolver dohledá, který autoritativní DNS server má pro doménu záznamy, zeptá se ho a odpověď si na čas uloží.

Tři role, které se často pletou:

RoleCo děláPříklad
RegistrátorU něj jste doménu koupili a platíte ji. Nastavuje, které nameservery doménu spravují.Firma, u které máte doménu .cz nebo .com.
DNS hosting (nameservery)Server, kde jsou uložené záznamy domény (A, MX …). Tady záznamy upravujete.Často stejný registrátor, nebo Cloudflare.
ResolverZjišťuje odpovědi pro uživatele a ukládá si je do mezipaměti.DNS poskytovatele internetu, 1.1.1.1, 8.8.8.8.

Upravujte záznamy tam, kam míří nameservery

Pokud má doména nameservery Cloudflaru, záznamy u registrátora se vůbec nepoužijí, i když je tam vidíte. Nejdřív zjistěte, kde DNS doopravdy běží (příkaz pro NS záznam najdete níže).

Typy záznamů#

TypK čemu jePříklad hodnotyPozor na
APřevádí jméno na IPv4 adresu.203.0.113.10Jen jeden záznam pro jedno jméno, pokud nechcete střídání adres.
AAAAPřevádí jméno na IPv6 adresu.2001:db8::10Když služba na IPv6 neposlouchá, klienti s IPv6 se nepřipojí.
CNAMEJméno je přezdívka jiného jména.example.cz.Nesmí být na kořeni domény ani vedle jiného záznamu se stejným jménem.
SRVKde (jméno a port) běží konkrétní služba.0 5 25570 mc.example.cz.Cíl musí být jméno s A/AAAA záznamem, ne IP adresa a ne CNAME.
MXKam se doručuje e-mail domény.10 mail.example.cz.Cíl musí mít A/AAAA záznam, nesmí to být CNAME ani IP.
TXTLibovolný text: ověření domény, SPF, DKIM, DMARC."v=spf1 mx -all"SPF smí mít doména jen jeden.
NSKteré nameservery doménu spravují.ns1.example.net.Měňte jen při přesunu DNS jinam.
CAAKteré certifikační autority smí vydat certifikát.0 issue "letsencrypt.org"Když CAA nastavíte, nezapomeňte povolit autoritu, kterou používáte.
PTRPřevádí IP adresu na jméno (reverzní DNS).mail.example.cz.Nastavuje ho vlastník IP adresy, ne vy ve své doméně. Viz rDNS.

A a AAAA#

Základ všeho: říkají, na jaké IP adrese jméno běží. IPv4 adresu VPS najdete v zákaznické zóně v záložce Síť (například 203.0.113.10), stejně tak IPv6 (například 2001:db8::10).

AAAA záznam přidávejte jen tehdy, když na IPv6 adrese opravdu poslouchá služba, kterou jméno obsluhuje. Zařízení s IPv6 totiž většinou zkouší IPv6 jako první.

CNAME#

CNAME říká „tohle jméno je jen jiný název pro tamto jméno“. Typicky www.example.cz jako přezdívka pro example.cz. Resolver pak hledá A/AAAA záznam cílového jména.

Pravidla:

  • Jméno s CNAME nesmí mít žádný jiný záznam (podle standardu DNS, RFC 1034). Proto CNAME nejde dát na kořen domény (example.cz), kde vždy jsou záznamy NS a SOA.
  • Některé DNS hostingy to obcházejí vlastní funkcí (Cloudflare jí říká CNAME flattening): na kořeni ukážou rovnou IP adresu cíle.

SRV#

SRV záznam říká, na kterém jméně a portu běží konkrétní služba. Používá ho například Minecraft Java Edition: díky němu hráči nemusejí psát port.

text
_minecraft._tcp.mc.example.cz.  300  IN  SRV  0 5 25570 mc.example.cz.
ČástVýznam
_minecraftNázev služby, vždy s podtržítkem.
_tcpProtokol, vždy s podtržítkem.
mc.example.cz.Jméno, pro které záznam platí (to, co hráč zadá do hry).
300TTL v sekundách.
0Priorita – klient zkusí nejdřív cíl s nejnižší prioritou.
5Váha – mezi cíli se stejnou prioritou rozhoduje poměr vah. Při jednom cíli na ní nezáleží.
25570Port, na kterém služba skutečně běží.
mc.example.cz.Cíl – jméno, které má A/AAAA záznam s IP adresou serveru.

Ve webovém rozhraní DNS hostingu se pole jmenují podobně (Name / Service / Protocol, Priority, Weight, Port, Target). Celý postup pro Minecraft najdete v článku Adresa serveru a vlastní doména. Bedrock Edition SRV záznamy nepoužívá.

MX a TXT#

  • MX určuje poštovní server domény. Nižší číslo (priorita) má přednost. Cíl musí být jméno s A/AAAA záznamem.
  • TXT nese text. Služby jako Google nebo Microsoft přes něj ověřují, že doménu vlastníte. E-mail ho používá pro SPF (kdo smí za doménu posílat poštu), DKIM (podpis zpráv) a DMARC (co dělat s podvrženými zprávami, záznam _dmarc.example.cz).

Kořen domény a subdomény#

  • Kořen (také „zavináč“, @) je samotná doména, example.cz.
  • Subdoména je cokoli před ní: www.example.cz, mc.example.cz, panel.example.cz. Subdoménu nemusíte nikde „zakládat“, stačí pro ni vytvořit záznam.
  • Hvězdička (*.example.cz) je zástupný záznam pro všechna jména, která nemají vlastní záznam.

Do pole Název pište jen začátek

Většina webových rozhraní DNS doplňuje doménu za název sama. Pro mc.example.cz napište do pole Název (Name, Host) jen mc, pro kořen @. Když napíšete celé mc.example.cz, vznikne nechtěné mc.example.cz.example.cz.

Tečka na konci (example.cz.) v zápisu zónového souboru znamená „celé jméno, nic nepřidávej“. Ve webových rozhraních ji většinou psát nemusíte; pokud rozhraní tečku vyžaduje, napoví vám to.

TTL a „propagace“#

TTL (time to live) je počet sekund, po které si resolvery smějí odpověď pamatovat. Když záznam změníte, resolver, který si ho zrovna pamatuje, bude posílat starou hodnotu, dokud mu TTL nevyprší. Tomu se lidově říká „propagace DNS“.

TTLKdy použít
300 (5 minut)Plánujete změnu (stěhování serveru) nebo teprve ladíte.
3600 (1 hodina)Běžný provoz, nic neměníte.
86400 (1 den)Záznamy, které se roky nemění.

Stěhování bez výpadku

Den před stěhováním serveru snižte TTL záznamu na 300. Po stěhování se nová IP adresa rozšíří do 5 minut. Až vše funguje, můžete TTL zase zvýšit.

Další dvě situace:

  • Změna nameserverů u registrátora trvá déle, obvykle do 24 hodin.
  • Negativní odpověď se také pamatuje. Když se na jméno někdo zeptá dřív, než záznam existuje, resolver si chvíli pamatuje „takové jméno není“. Proto záznam nejdřív vytvořte a teprve potom ho zkoušejte.

Jak záznam ověřit#

Za example.cz a mc.example.cz v příkazech dosaďte svou doménu.

Windows

Otevřete PowerShell (nebo Windows Terminal) a použijte nslookup:

PowerShell
nslookup example.cz
nslookup -type=AAAA example.cz
nslookup -type=SRV _minecraft._tcp.mc.example.cz
nslookup -type=NS example.cz
nslookup example.cz 1.1.1.1
  • nslookup example.cz – zeptá se výchozího DNS serveru na adresy jména.
  • -type=AAAA – typ záznamu, na který se ptáte (A, AAAA, SRV, MX, TXT, NS, CNAME).
  • 1.1.1.1 na konci – zeptá se konkrétního resolveru místo výchozího. Hodí se, když chcete obejít mezipaměť poskytovatele.
Výstuptext
Server:  one.one.one.one
Address:  1.1.1.1

Non-authoritative answer:
Name:    example.cz
Address:  203.0.113.10

Non-authoritative answer je v pořádku: odpověď přišla z resolveru, ne přímo z nameserveru domény.

V PowerShellu můžete použít i Resolve-DnsName:

PowerShell
Resolve-DnsName -Name example.cz -Type A -Server 1.1.1.1
  • -Name – dotazované jméno.
  • -Type – typ záznamu.
  • -Server – resolver, kterého se ptáte (volitelné).

macOS

Otevřete aplikaci Terminál. Program dig je v macOS předinstalovaný:

bash
dig +noall +answer example.cz A
dig +noall +answer example.cz AAAA
dig +noall +answer _minecraft._tcp.mc.example.cz SRV
dig +short example.cz NS
dig @1.1.1.1 +short example.cz A
  • dig – nástroj na dotazy do DNS.
  • +noall +answer – vypíše jen sekci s odpovědí, bez technických podrobností.
  • +short – vypíše jen samotnou hodnotu.
  • example.cz A – jméno a typ záznamu.
  • @1.1.1.1 – zeptá se konkrétního resolveru.
Výstuptext
example.cz.		300	IN	A	203.0.113.10

Sloupce znamenají: jméno, zbývající TTL v sekundách, třída (vždy IN), typ záznamu a hodnota.

Linux

Na Ubuntu 24.04 i Debianu 13 (třeba přímo na VPS) nainstalujte balíček s programem dig, pokud ho systém nemá:

bash
apt update && apt install bind9-dnsutils
  • apt update – stáhne aktuální seznam balíčků. Bez něj může apt install skončit chybou Unable to locate package.
  • && – druhý příkaz spustí, jen když první proběhl bez chyby.
  • apt install – nainstaluje balíček ze systémových repozitářů. Spouštějte jako root; pod běžným uživatelem napište před oba příkazy sudo.
  • bind9-dnsutils – balíček s nástroji dig a nslookup.

Pak použijte stejné příkazy jako na macOS:

bash
dig +noall +answer example.cz A
dig +noall +answer _minecraft._tcp.mc.example.cz SRV
dig +short example.cz NS
dig @1.1.1.1 +short example.cz A
  • +noall +answer – jen sekce s odpovědí.
  • +short – jen hodnota.
  • @1.1.1.1 – dotaz na konkrétní resolver.

Užitečné veřejné resolvery pro kontrolu: 1.1.1.1 (Cloudflare), 8.8.8.8 (Google), 9.9.9.9 (Quad9). Když je nový záznam vidět u nich, ale ne u vás, máte starou odpověď v mezipaměti.

Pro pokročilé: dotaz přímo na nameserver domény

Odpověď autoritativního nameserveru mezipaměť neovlivní. Zjistěte nameserver domény a zeptejte se ho přímo. Místo ns1.example.net dosaďte jeden z nameserverů z prvního výpisu:

bash
dig +short example.cz NS
dig @ns1.example.net +short mc.example.cz A

Když tady záznam je a jinde ne, stačí počkat na vypršení TTL. Celou cestu od kořenových serverů ukáže dig +trace example.cz.

Časté chyby#

ChybaJak se projevíOprava
Celá doména v poli NázevVznikne mc.example.cz.example.cz, adresa nefunguje.Do pole Název pište jen mc.
Dva různé A záznamy pro jedno jménoJednou se připojíte, jindy ne.Nechte jen záznam se správnou IP.
Zapomenutý AAAA záznam na starý serverZ IPv6 sítí (mobilní data) web nebo server nefunguje.Opravte AAAA na novou IPv6, nebo ho smažte.
CNAME vedle jiného záznamuDNS hosting záznam odmítne, nebo se chová nepředvídatelně.Pro jméno použijte buď CNAME, nebo A/AAAA, ne obojí.
Cíl SRV nebo MX je IP adresaKlient adresu nenajde.Cíl musí být jméno s A/AAAA záznamem.
Proxy Cloudflaru (oranžový mráček) u herního serveru nebo SSHWeb funguje, hra ani SSH ne.Pro tyto záznamy nastavte DNS only (šedý mráček). Viz doména na VPS a Cloudflare.
Úprava záznamů u registrátora, i když NS míří jinamZměna se nikdy neprojeví.Upravte záznamy tam, kam míří NS.
Záznam v souboru hosts v počítačiU vás jméno vede jinam než všem ostatním.Zkontrolujte soubor hosts (Windows C:\Windows\System32\drivers\etc\hosts, macOS a Linux /etc/hosts).

Když něco nefunguje#

Non-existent domain (Windows) nebo NXDOMAIN (dig)#

Jméno neexistuje. Zkontrolujte překlep, že záznam je uložený a že ho upravujete u správných nameserverů. Pokud jste se na jméno ptali dřív, než jste záznam vytvořili, počkejte pár minut (negativní odpověď v mezipaměti).

Odpověď je prázdná, ale jméno existuje (No answer, ANSWER: 0)#

Jméno existuje, ale nemá záznam typu, na který se ptáte. Například máte A záznam, ale ptáte se na AAAA. Každý nástroj to ukáže trochu jinak:

  • dig +short nevypíše nic. V plném výpisu dig je status: NOERROR a ANSWER: 0.
  • nslookup na macOS a Linuxu vypíše *** Can't find …: No answer.
  • nslookup ve Windows místo adresy vypíše jen údaje o nameserveru domény (řádek primary name server).

U SRV zkontrolujte, že název obsahuje _minecraft._tcp. a správnou subdoménu.

U 1.1.1.1 je nová IP, u mě pořád stará#

Váš počítač nebo poskytovatel internetu má starou odpověď v mezipaměti. Počkejte na vypršení TTL, nebo vymažte mezipaměť počítače:

Windows

PowerShell
ipconfig /flushdns
  • ipconfig /flushdns – vymaže mezipaměť DNS ve Windows (i zapamatované negativní odpovědi).

macOS

bash
sudo dscacheutil -flushcache; sudo killall -HUP mDNSResponder
  • sudo – spustí příkaz s právy správce (zeptá se na heslo k Macu, při psaní se nic nezobrazuje).
  • dscacheutil -flushcache – vymaže mezipaměť adresářové služby systému.
  • ; – po prvním příkazu spustí druhý.
  • killall -HUP mDNSResponder – pošle systémové službě DNS signál, aby zahodila mezipaměť.

Linux

bash
sudo resolvectl flush-caches
  • sudo – spustí příkaz s právy správce. Na VPS, kde jste přihlášení jako root, ho vynechte.
  • resolvectl flush-caches – vymaže mezipaměť služby systemd-resolved, kterou používá Ubuntu i řada dalších distribucí.

Když příkaz skončí chybou (například resolvectl: command not found), systém službu systemd-resolved nepoužívá. Tak je tomu třeba u běžné instalace Debianu: systém si odpovědi DNS sám nepamatuje a mazat nemusíte nic.

Prohlížeče mají vlastní mezipaměť; pomůže je zavřít a znovu otevřít.

dig: command not found nebo nslookup: command not found#

Na Linuxu nainstalujte balíček bind9-dnsutils (viz záložka Linux výše). Ve Windows místo dig použijte nslookup nebo Resolve-DnsName.

Změna se neprojevila ani po několika hodinách#

  1. Zjistěte nameservery domény: dig +short example.cz NS (Windows: nslookup -type=NS example.cz).
  2. Ověřte, že záznamy upravujete u stejného poskytovatele, kam NS míří.
  3. Zeptejte se přímo nameserveru (viz „Pro pokročilé“ výše). Pokud tam záznam není, změna se neuložila.

Shrnutí

  • A a AAAA vedou jméno na IP adresu, CNAME na jiné jméno, SRV říká jméno a port služby, MX vede poštu.
  • Záznamy upravujete u DNS hostingu, kam míří nameservery domény, ne nutně u registrátora.
  • TTL určuje, jak dlouho si resolvery pamatují starou hodnotu; před změnou ho snižte na 300 s.
  • CNAME nepatří na kořen domény a cíl SRV/MX musí být jméno, ne IP.
  • Záznam ověříte příkazem nslookup (Windows) nebo dig (macOS, Linux).

Hledání v návodech