Modul 3 · 3.3
Subdomény a wildcard záznamy
Modul 3: Záznamy pro Váš web · Doba čtení: 7 min
Cíl lekce: Po této lekci dokážete vytvořit subdoménu pomocí DNS a vysvětlit, jak funguje wildcard záznam a kde neplatí.
Klíčové pojmy: subdoména, wildcard (*), „existující název vyhrává“, wildcard a hlubší úrovně, subdoména v hostingovém panelu versus pouze DNS záznam
Co je subdoména?
Subdoména je název před Vaší doménou: shop.example.com, blog.example.com, mail.example.com. I www.example.com je technicky vzato prostě subdoména. Nemusíte si pro ni nic registrovat ani platit: kdo vlastní doménu example.com, může si pod ní sám vytvořit tolik názvů, kolik chce. Subdoména vznikne vytvořením záznamu pro ni.
Subdoména může mít i více úrovní do hloubky: test.shop.example.com je zcela v pořádku. Každá část mezi tečkami smí mít maximálně 63 znaků a celý název maximálně 253 znaků.
Dva druhy subdomén
V praxi znamená „vytvořit subdoménu“ dvě různé věci, a to mnoho lidí mate.
1. Pouze DNS záznam. V DNS vytvoříte záznam A, AAAA nebo CNAME pro shop. Tím svět pozná, kde se nachází shop.example.com. Pokud ukazuje na externí službu, například platformu pro e-shopy, máte hotovo: web zajišťuje daná služba.
shop.example.com. 3600 IN CNAME shops.platform.example.2. Subdoména v hostingovém panelu. V hostingovém panelu můžete subdoménu i rovnou vytvořit. Tehdy se stanou dvě věci: panel (pokud se u něj spravuje i DNS) vloží záznam do DNS a zároveň nastaví webserver s vlastní složkou pro soubory dané subdomény. To potřebujete, pokud má web subdomény fungovat na Vašem vlastním hostingu, například druhý WordPress na blog.example.com.
Dvě úskalí:
- Pokud Vaše DNS spravuje někdo jiný než Váš hosting (jiné jmenné servery, viz lekce 2.1), panel vloží záznam na místo, které nikdo nekontroluje. Záznam pak vytvořte sami u strany, která DNS spravuje.
- Pokud chcete, aby subdoména ukazovala na externí službu, nevytvářejte ji v hostingovém panelu, ale pouze jako DNS záznam. Jinak vzniknou dva záznamy pro stejný název, které si budou překážet.
Wildcard: jeden záznam pro všechny názvy
Wildcard je záznam s hvězdičkou jako názvem:
*.example.com. 3600 IN A 192.0.2.10To znamená: „každý název pod example.com, který jinak v zóně není uveden, ukazuje na 192.0.2.10“. Pokud se někdo zeptá na blog.example.com, test.example.com nebo wat-dan-ook.example.com a tento název neexistuje samostatně, DNS odpoví hodnotou wildcard záznamu.
Mnoho hostingových balíčků má wildcard nastavený ve výchozím nastavení. Díky tomu nová subdoména v hostingovém panelu funguje okamžitě, aniž by bylo potřeba pro každý název vytvářet samostatný záznam. Funguje tak samo od sebe i www.
Kde wildcard neplatí
Pravidla pro wildcard záznamy popisuje RFC 4592. Je dobré znát tři věci.
Existující název vyhrává. Pokud existuje vlastní záznam pro shop.example.com, wildcard se pro tento název nepoužije. A to ani pro jiné typy záznamů: pokud má shop pouze záznam CNAME, wildcard pro shop už nevrátí ani záznam A. Wildcard je tedy záchranná síť pro názvy, které vůbec neexistují.
*.example.com. A 192.0.2.10
www.example.com. CNAME shops.platform.example.Zde blog.example.com směřuje na 192.0.2.10, zatímco www.example.com směřuje na danou platformu.
Wildcard neplatí pro holou doménu. *.example.com nezachytí samotnou example.com. Na to potřebujete vlastní záznam.
Wildcard neplatí pod názvem, který existuje. Pokud existuje shop.example.com, nezachytí *.example.com název test.shop.example.com. Wildcard funguje pouze pro názvy, jejichž celá „cesta“ neexistuje. Pokud shop neexistuje, pak test.shop.example.com pod wildcard spadá. Pokud chcete wildcard pod shop, vytvořte *.shop.example.com.
Wildcard, certifikáty a překlepy
Wildcard v DNS pouze určuje, kam název ukazuje. Dávejte přitom pozor na dvě věci:
- Certifikát. Pro https na každé subdoméně potřebujete certifikát, který tyto názvy pokrývá. Wildcard certifikát (
*.example.com) je něco jiného než wildcard záznam a žádá se o něj samostatně. Let's Encrypt vydává wildcard certifikáty pouze prostřednictvím ověření v DNS. - Překlepy. S wildcard záznamem funguje i
ww.example.comnebowwww.example.com. To může být užitečné, ale znamená to také, že na jakýkoli myslitelný název přijde odpověď. Někteří správci to naopak nechtějí.
V praxi: jak to vypadá v panelu
Jako příklad použijeme DirectAdmin. Jiné panely (cPanel, Plesk) mají pro subdomény podobnou obrazovku.
- Otevřete Subdomény a klikněte na Přidat subdoménu.
- Zadejte pouze první část, například
shop. - Vyberte složku pro soubory, nebo ponechte výchozí nastavení.
- Uložte.
Pokud chcete, aby subdoména ukazovala na externí službu, tuto obrazovku přeskočte a vytvořte pouze záznam v sekci DNS (lekce 3.1 nebo 3.2).
Shrnutí
- Subdoména vznikne vytvořením záznamu pro ni; registrace není potřeba.
- Pouze DNS záznam stačí, pokud web poskytuje externí služba. Subdoménu v hostingovém panelu potřebujete, pokud má web fungovat na Vašem vlastním hostingu.
- Wildcard
*.example.comodpovídá na všechny názvy, které jinak neexistují. - Existující název vždy vyhrává nad wildcard; wildcard neplatí pro holou doménu ani pod názvem, který existuje.
- Wildcard záznam není wildcard certifikát.
Kvíz
Úkol
Úkol Z3.3: Objevte wildcard záznam. Zjistěte, zda github.io používá wildcard záznam. Vyhledejte záznam A pro název, který téměř jistě neexistuje samostatně, například dnscursus- následované několika náhodnými písmeny .github.io. Pokud dostanete zpět IP adresu, vyplňte ano a adresu, kterou jste obdrželi.
Úkol O3.3: Vlastní nastavení ve Vaší cvičné zóně. Vytvořte ve Vaší cvičné zóně:
- wildcard záznam
*(typ A) s hodnotou192.0.2.20 - záznam A
vasts hodnotou192.0.2.21
Program poté zkontroluje tři názvy: náhodný název (ten by měl vrátit hodnotu wildcard záznamu), vast (ten by měl vrátit svou vlastní adresu) a holou cvičnou zónu.
Úkol O3.3
Tento úkol vypracujete ve své vlastní cvičné zóně: skutečné DNS zóně na jmenných serverech WebOké, určené pouze pro Vás. Přihlaste se svou e-mailovou adresou. Odkaz pro přihlášení obdržíte e-mailem a poté se vrátíte zpět na tuto lekci. Vaši adresu používáme pouze pro potřeby kurzu.
Další čtení
Tyto články popisují postupy v panelech WebOké; v jiných panelech fungují obdobně.
