DNS w praktyce: rekordy A, AAAA, CNAME, MX, TXT i TTL
Jak podpiąć domenę pod VPS: rekordy A i AAAA, www przez CNAME, MX i TXT dla poczty, co naprawdę znaczy TTL, sprawdzanie przez dig i ile trwa propagacja.
Redakcja serwisu Dealownia · ceny i fakty ze stron dostawców, jak sprawdzamy
Domena example.pl i www.example.pl na Twoim VPS-ie, a poczta nadal u dotychczasowego dostawcy – wystarczy kilka rekordów, które da się sprawdzić poleceniem dig, zanim zrobi to certbot albo przeglądarka. Poniżej też, ile naprawdę czekać po zmianie i dlaczego „propagacja do 48 godzin” to w większości przypadków przesada. Przykłady są w formacie pliku strefy; w panelu rejestratora wpisujesz te same wartości w pola formularza.
Czego potrzebujesz
- Domenę i dostęp do panelu, w którym edytujesz jej strefę DNS. Najczęściej to panel rejestratora; jeśli zmieniłeś serwery nazw (NS) na inną usługę, strefę edytujesz tam.
- Adres IPv4 serwera i, jeśli dostawca go daje, adres IPv6. W przykładach:
203.0.113.10i2001:db8::10(adresy zarezerwowane do dokumentacji). - Narzędzie
dig. Na Ubuntu 24.04 i Debianie 12–13 jest w pakieciebind9-dnsutils(sudo apt -y install bind9-dnsutils), na macOS jest wbudowane. Na Windowsie użyjResolve-DnsNamew PowerShellu albo zaloguj się na VPS i sprawdzaj stamtąd. - Do samego DNS serwer nie jest potrzebny, ale jeśli domena ma prowadzić na VPS, wystarczy najmniejszy plan: 1 vCPU, 1 GB RAM dla strony statycznej.
Jeśli dopiero wybierasz domenę: oferty rejestratorów niżej mogą dotyczyć różnych końcówek, nie tylko .pl i .com.
Ceny odnowień, które liczą się bardziej niż cena pierwszego roku, porównasz w rankingu domen.
Krok 1. Rekordy, których naprawdę używasz
| Rekord | Do czego | Przykład wartości |
|---|---|---|
| A | nazwa → adres IPv4 | 203.0.113.10 |
| AAAA | nazwa → adres IPv6 | 2001:db8::10 |
| CNAME | nazwa jest aliasem innej nazwy | example.pl. |
| MX | gdzie dostarczać pocztę dla domeny | 10 mx1.poczta.example. |
| TXT | dowolny tekst: SPF, DKIM, DMARC, weryfikacje | "v=spf1 ... ~all" |
| NS | które serwery odpowiadają za strefę | ustawiane u rejestratora |
Każdy rekord ma też TTL – liczbę sekund, przez którą resolvery mogą trzymać odpowiedź w pamięci podręcznej. To jedyna liczba, od której zależy, jak szybko zmiana dotrze do użytkowników.
Krok 2. Domena główna i www
Minimalna konfiguracja dla strony na VPS:
Kropka na końcu nazwy oznacza pełną nazwę. W panelach zwykle wpisujesz samo www w polu nazwy, a domenę główną oznaczasz @ albo pustym polem.
Dlaczego www jako CNAME, a domena główna jako A: nazwa z rekordem CNAME nie może mieć żadnych innych rekordów (RFC 2181, sekcja 10.1). Domena główna zawsze ma rekordy SOA i NS, a zwykle też MX i TXT, więc CNAME na niej jest niedozwolony. Niektóre usługi DNS oferują zamiennik (spłaszczanie CNAME albo rekord ALIAS), który na zewnątrz wygląda jak zwykłe A – to rozszerzenie dostawcy, nie standard.
CNAME dla www oznacza, że zmieniasz adres IP tylko w jednym miejscu. Jeśli wolisz dwa rekordy A, też zadziała – pamiętaj tylko o obu przy przeprowadzce.
Dodawaj AAAA tylko wtedy, gdy serwer naprawdę odpowiada po IPv6 (nginx z listen [::]:80 i otwarta zapora). Rekord AAAA wskazujący martwy adres powoduje, że część odwiedzających z IPv6 czeka na przekroczenie czasu, a walidacja certyfikatu Let’s Encrypt może się nie udać.
Zostaje wybór wersji głównej: jedna z nazw powinna przekierowywać na drugą (301) w nginx, a certyfikat musi obejmować obie, np. certbot --nginx -d example.pl -d www.example.pl. Jak to wygląda w praktyce, pokazuje poradnik od zera.
Krok 3. Poczta: MX i TXT
Przeniesienie strony na VPS nie powinno ruszać poczty. Rekordy MX i TXT związane z pocztą zostawiasz bez zmian, a zmieniasz tylko A i AAAA strony. Przykład poczty u zewnętrznego dostawcy:
Dwie reguły, na których wykłada się najwięcej osób:
- MX wskazuje nazwę hosta, nie adres IP, a ta nazwa nie może być aliasem CNAME (RFC 2181, sekcja 10.3). Niższa liczba to wyższy priorytet.
- Domena ma tylko jeden rekord SPF. Kolejny serwis wysyłający pocztę (newsletter, sklep) dopisujesz jako
include:do istniejącego rekordu. Rekordy DKIM i DMARC mieszkają na osobnych nazwach (selektor._domainkey,_dmarc), więc nie kolidują.
Szczegóły rekordów pocztowych opisuje poradnik o poczcie na domenie.
Krok 4. Sprawdzanie przez dig
+short pokazuje same wartości. Bez niego zobaczysz pełną odpowiedź z TTL w drugiej kolumnie – przy zapytaniu do resolvera to czas, jaki został do wygaśnięcia odpowiedzi w jego pamięci:
Żeby ominąć wszystkie pamięci podręczne, zapytaj bezpośrednio serwer nazw domeny:
Jeśli serwer autorytatywny podaje nowy adres, zmiana jest zapisana poprawnie i zostało tylko czekanie. Jeśli podaje stary, edytujesz strefę w złym miejscu – najczęściej w panelu rejestratora, choć domena używa serwerów nazw innej usługi. dig +trace A example.pl pokaże całą drogę od serwerów głównych przez serwery domeny .pl do Twoich.
Krok 5. TTL i „propagacja”
DNS nie rozsyła zmian po internecie. Każdy resolver (dostawcy internetu, publiczny, firmowy) pyta o rekord, kiedy go nie ma w pamięci, i trzyma odpowiedź przez TTL. Po zmianie rekordu z TTL 3600 najpóźniej po godzinie wszystkie resolvery, które pytały przed zmianą, zapytają ponownie. Stąd praktyczna kolejność przy przeprowadzce:
- Dzień wcześniej obniż TTL rekordów A i AAAA do 300 sekund.
- Odczekaj co najmniej stary TTL, żeby resolvery zapamiętały już nową, krótką wartość.
- Zmień adres. W ciągu kilku minut prawie cały ruch trafi na nowy serwer.
- Po kilku dniach przywróć dłuższy TTL, np. 3600.
Dwa przypadki trwają dłużej:
- Zmiana serwerów nazw (NS) u rejestratora. Delegację trzyma rejestr domeny najwyższego poziomu i ma ona własny TTL, którego nie zmienisz. Sprawdzisz go w wyniku
dig +trace. Dopiero przy takiej zmianie „do 48 godzin” ma uzasadnienie. - Pamięć odpowiedzi negatywnych. Jeśli ktoś zapytał o nazwę, zanim ją utworzyłeś, resolver zapamięta, że nie istnieje. Czas tej pamięci wynika z rekordu SOA strefy – mniejszej z wartości: pola MINIMUM i TTL samego SOA (RFC 2308). Dlatego nie sprawdzaj nowej subdomeny w przeglądarce, zanim dodasz rekord.
Twój komputer i przeglądarka mają własne pamięci podręczne. Jeśli dig @1.1.1.1 pokazuje nowy adres, a przeglądarka stary, problem leży u Ciebie, nie w DNS.
Najczęstsze problemy
- Panel nie pozwala dodać CNAME dla domeny głównej. I słusznie – standard tego zabrania. Ustaw rekord A (i AAAA) albo użyj zamiennika ALIAS, jeśli Twój dostawca DNS go ma.
- Strona działa na
example.pl, alewwwnie. Brak rekordu dlawwwalbo brakwww.example.plwserver_namei w certyfikacie. Sprawdźdig +short www.example.pl. - Certbot zwraca błąd walidacji mimo poprawnego rekordu A. Zostawiony stary rekord AAAA wskazuje inny serwer, a Let’s Encrypt łączy się po IPv6. Sprawdź
dig +short AAAA example.pli usuń lub popraw rekord. - Po przeniesieniu strony przestała dochodzić poczta. Usunięty lub nadpisany rekord MX, często przy „resetowaniu strefy do ustawień domyślnych” w nowym panelu. Przepisz MX, SPF, DKIM i DMARC z kopii starej strefy, zanim zmienisz serwery nazw.
- Zmiana nie działa po kilku godzinach. Serwer autorytatywny podaje stary adres (zła strefa) albo zmieniłeś NS i czekasz na delegację.
dig @serwer-nazwrozstrzyga, który to przypadek.
Co dalej
Przed każdą większą zmianą zrób kopię strefy – wystarczy zrzut ekranu panelu albo eksport do pliku. Jeśli przenosisz stronę z hostingu, kolejność kroków z obniżaniem TTL opisuje poradnik o migracji na VPS. Domenę z rozsądną ceną odnowienia znajdziesz w poradniku o najtańszej domenie .pl i .com i w dziale promocje: domeny.