Przejdź do treści

Ustawienia plików cookie

Prosimy wybrać, na które rodzaje plików cookie Państwo zezwalają. Wybór można zmienić w dowolnym momencie w Ustawieniach plików cookie na dole każdej strony. Polityka prywatności

Niezbędne

Zawsze włączone

Potrzebne do logowania, zachowania koszyka i zapamiętania wyborów. Są zawsze włączone.

Jakie pliki cookie?
  • weboke_sessie, weboke_klant, weboke_remember: sesja i pozostanie zalogowanym
  • weboke_basket: koszyk
  • wkBtwIncl: wyświetlanie cen z VAT lub bez VAT
  • wok_cookies: wybór dotyczący plików cookie, 12 miesięcy

Mierzą, która reklama prowadzi do odwiedzin lub zamówienia, abyśmy nie płacili za reklamy, które nic nie dają.

Jakie pliki cookie?
  • Google Ads przez Google Tag Manager (_gcl_au, _gcl_aw), do 90 dni
  • OpenAI Ads, reklamy w ChatGPT
  • wok_aff: przez którego partnera trafili Państwo do nas (program partnerski), 60 dni

4,6

Kraj i język

Każdy kraj ma własną stronę z cenami i stawką VAT tego kraju.

Wyświetl

CNAME i goła domena

Moduł 3: Rekordy dla Państwa strony internetowej · Czas czytania: 8 min

Cel lekcji: Po tej lekcji będą Państwo potrafili poprawnie utworzyć rekord CNAME i wyjaśnić, dlaczego nie można go umieścić na gołej domenie.

Kluczowe pojęcia: CNAME, alias, nazwa docelowa, reguła CNAME (brak innych rekordów obok), apex (goła domena), ALIAS/ANAME/CNAME flattening

Nazwa wskazująca na inną nazwę

Rekord A mówi: "ta nazwa znajduje się pod tym adresem". Rekord CNAME (od canonical name) mówi coś innego: "ta nazwa jest tak naprawdę inną nazwą, zapytaj tam". Tworzą Państwo w ten sposób alias.

shop.example.com.   3600  IN  CNAME  shops.platform.example.

Gdy przeglądarka zapyta o adres shop.example.com, DNS odpowiada: "to jest shops.platform.example". Resolver wyszukuje wtedy rekord A lub AAAA tej nazwy i zwraca ten adres. Dla odwiedzającego nie zmienia się nic: pasek adresu nadal pokazuje shop.example.com.

Dlaczego warto tego używać? Ponieważ adres IP staje się wtedy problemem drugiej strony. Platforma sklepu internetowego, usługa newsletterów czy dostawca chmury może przenosić swoje serwery i zmieniać adresy bez konieczności wprowadzania przez Państwa jakichkolwiek zmian. Dlatego wiele usług prosi o CNAME zamiast rekordu A: "niech www wskazuje na shops.platform.example".

Kropka na końcu

W lekcji 2.2 widzieli Państwo, że nazwa bez kropki na końcu jest odczytywana jako względna: DNS dokleja do niej Państwa własną nazwę domeny. Przy CNAME bardzo często dochodzi tu do pomyłki.

Wpisują Państwo jako wartośćCo z tego robi DNS
shops.platform.example.shops.platform.example (poprawnie)
shops.platform.exampleshops.platform.example.example.com (nie istnieje)

Wiele paneli obecnie samo dodaje kropkę lub ostrzega o jej braku. Inne tego nie robią. Proszę więc sprawdzić po zapisaniu na liście: jeśli za wartością widać Państwa własną nazwę domeny, kropka została pominięta.

Ta sama zasada obowiązuje dla serwera pocztowego w rekordzie MX oraz dla rekordów NS. Przy adresie IP w rekordzie A kropki się nie stawia.

Reguła CNAME: nic obok

CNAME ma jedną sztywną zasadę wynikającą ze standardu DNS (RFC 1034, paragraf 3.6.2, oraz RFC 2181): nazwa z CNAME nie może mieć żadnych innych rekordów. Logiczne: CNAME mówi "ja w rzeczywistości jestem tą inną nazwą". Jeśli obok znajduje się jeszcze rekord A lub MX, nie jest jasne, która odpowiedź obowiązuje.

Z tego wynikają dwie rzeczy, z którymi spotkają się Państwo w praktyce:

  1. Jeśli dla shop istnieje już rekord A, należy go najpierw usunąć. W przeciwnym razie panel odmówi utworzenia rekordu CNAME, albo, co gorsza, zaakceptuje go i DNS zacznie się zachowywać nieprzewidywalnie.
  2. CNAME na gołej domenie jest niemożliwy.

Dlaczego nie na gołej domenie?

Goła nazwa domeny, example.com bez niczego przed nią, w fachowym języku nazywana jest apex lub szczytem strefy. Na tej nazwie zawsze znajdują się rekordy, które muszą tam być:

  • rekord SOA (techniczny nagłówek strefy),
  • rekordy NS (które serwery nazw zarządzają strefą),
  • zazwyczaj także rekordy MX (poczta) i rekordy TXT (SPF, weryfikacja).

Ponieważ CNAME nie toleruje żadnych innych rekordów obok siebie, a apex zawsze zawiera SOA i NS, na apeksie nie może znajdować się CNAME. Nie jest to ograniczenie Państwa panelu, lecz samego DNS.

Jeśli usługa prosi Państwa o podłączenie "domeny głównej", istnieją trzy rozwiązania:

  1. Rekord A (i ewentualnie AAAA) z adresem IP usługi. Większość platform sklepów internetowych podaje w tym celu stały adres. Działa to wszędzie.
  2. Rekord ALIAS, ANAME lub "CNAME flattening". Niektórzy dostawcy DNS oferują własny typ rekordu, który zachowuje się jak CNAME, ale jest przez sam serwer nazw przekształcany na rekord A zanim odpowiedź zostanie wysłana. Nie jest to oficjalny typ rekordu: działa wyłącznie u dostawców, którzy go obsługują, i wszędzie nazywa się inaczej.
  3. Przekierowanie. Proszę pozwolić, by goła nazwa domeny za pomocą rekordu A wskazywała na Państwa własny serwer WWW, a ten niech przekierowuje odwiedzających na www.example.com, które ma już CNAME do usługi. O tym, jak działa przekierowanie, przeczytają Państwo w lekcji 3.4.

Gdzie jeszcze CNAME jest niedozwolony

  • Rekord MX nie może wskazywać na CNAME (RFC 2181, paragraf 10.3). Serwer pocztowy w MX musi być nazwą z własnym rekordem A lub AAAA. Niektóre serwery pocztowe mimo wszystko sobie z tym radzą, ale nie można na to polegać.
  • Brak CNAME na nazwie, która jest jednocześnie subdomeną w Państwa panelu hostingowym. Subdomena w panelu sama otrzymuje rekordy wskazujące na Państwa hosting. Jeśli chcą Państwo, by ta nazwa wskazywała na inną usługę, należy usunąć subdomenę i utworzyć wyłącznie rekord CNAME.
  • Łańcuchy są możliwe, ale należy je ograniczać. CNAME może wskazywać na nazwę, która sama jest kolejnym CNAME. Każdy krok kosztuje dodatkowe zapytanie. Duże platformy często tak robią (widzą Państwo wtedy dwa lub trzy CNAME-y po sobie), ale sami nie powinni Państwo tworzyć długich łańcuchów.

W praktyce: tak wygląda to w panelu

Jako przykład posłużymy się ekranem DNS w Moje WebOké. W innych panelach (DirectAdmin, cPanel, Plesk, Cloudflare, u większości rejestratorów) przyciski nazywają się inaczej, ale wprowadzają Państwo te same trzy elementy: typ, nazwę i nazwę docelową.

  1. Proszę otworzyć ekran DNS Państwa domeny i kliknąć Dodaj rekord.
  2. Proszę wybrać typ CNAME.
  3. W polu Nazwa proszę wpisać tylko shop, bez nazwy domeny.
  4. W polu Wskazuje na proszę wpisać nazwę docelową, z kropką na końcu: shops.platform.example.
  5. Proszę zapisać i sprawdzić na liście, czy za wartością nie widać Państwa własnej nazwy domeny.

Panel w przykładzie ostrzega, gdy brakuje kropki. Nie każdy panel to robi.

Podsumowanie

  • CNAME czyni z nazwy alias innej nazwy; adresem IP zarządza wtedy druga strona.
  • Proszę postawić kropkę na końcu nazwy docelowej, inaczej DNS dołączy do niej Państwa własną domenę.
  • Nazwa z CNAME nie może mieć żadnych innych rekordów.
  • Dlatego CNAME nie może znajdować się na gołej domenie: tam zawsze są SOA i NS. Proszę użyć w tym miejscu rekordu A, rekordu typu ALIAS od Państwa dostawcy DNS lub przekierowania.
  • Rekord MX nie może wskazywać na CNAME.

Quiz

1. Usługa prosi Państwa o ustawienie example.com (bez www) jako CNAME wskazującego na shops.platform.example. Co Państwo robią?



2. Wpisują Państwo jako wartość CNAME dla shop adres shops.platform.example bez kropki. Na liście pojawia się następnie shops.platform.example.example.com. Co się stało?



3. Dla shop.example.com istnieje już rekord A. Chcą Państwo zrobić z niego CNAME. Co należy zrobić najpierw?



4. Czy serwer pocztowy w rekordzie MX może być nazwą, która ma CNAME?



Zadanie

Zadanie Z3.2: Śledzenie CNAME. Na jaką nazwę wskazuje rekord CNAME domeny en.wikipedia.org? Proszę wpisać nazwę docelową.

Zadanie Z3.2: Śledzenie rekordu CNAME


To, co Państwo wpisują i co sprawdzamy na żywo, nie jest przez nas zapisywane. Przeglądarka zapamiętuje Państwa odpowiedzi oraz informację, czy zadanie zostało zaliczone. Jeśli są Państwo zalogowani, zapisujemy jedynie informację, że zadanie zostało (prawie) wykonane poprawnie w Moich kursach; tam też można to usunąć.

Zadanie O3.2: Samodzielne ustawienie w strefie ćwiczeniowej. Proszę utworzyć w swojej strefie ćwiczeniowej rekord CNAME o nazwie winkel wskazujący na shops.shop-demo.dnspractice.eu. (z kropką). Proszę zadbać, aby dla winkel nie istniał żaden inny rekord. W strefie ćwiczeniowej używają Państwo fikcyjnej usługi; przy swojej prawdziwej domenie wpiszą Państwo nazwę docelową podaną przez rzeczywistą usługę. Następnie proszę kliknąć Sprawdź.

Zadanie O3.2

To zadanie wykonują Państwo we własnej strefie ćwiczeniowej: prawdziwej strefie DNS na serwerach nazw WebOké, przeznaczonej tylko dla Państwa. Proszę zalogować się za pomocą adresu e-mail. Otrzymają Państwo link logujący e-mailem i wrócą następnie do tej lekcji. Adres e-mail wykorzystujemy wyłącznie na potrzeby kursu.

Dalsza lektura

Poniższe artykuły opisują kroki w panelach WebOké; w innych panelach działają one w podobny sposób.

Chwileczkę…

Konfiguracja domen

Dla każdej domeny można ustawić serwery nazw, powiązanie z hostingiem oraz to, kto zostanie właścicielem.

Wczytywanie domen…