Jak nastavit DNS v Ubuntu: Vysvětlení Netplan a NetworkManageru

1. Úvod: Proč je konfigurace DNS na Ubuntu důležitá

DNS (Domain Name System) je mechanismus, který převádí názvy domén na IP adresy.
Pokaždé, když otevřeme webovou stránku, operační systém v pozadí tiše provádí DNS dotazy.

Při používání Ubuntu můžete narazit na situace jako:

  • Stránky se zdají „nějak pomalu“ načítat
  • Stejná síť se zdá pomalejší než ostatní zařízení
  • Občasná neschopnost přistupovat k interním webovým službám v LAN

Překvapivě často nejsou tyto problémy způsobeny kvalitou připojení, ale pomalým rozlišením DNS.

Na Ubuntu, i od verze 22.04 výše, je pro začátečníky matoucí, že existuje více způsobů, jak DNS konfigurovat. Konkrétně jsou dva hlavní přístupy:

  • Netplan (často používaný na serverech a v prostředích bez GUI)
  • NetworkManager (používaný v desktopových prostředích s GUI)

Protože postup se liší podle toho, která metoda je používána, musí každý návod na konfiguraci DNS pro Ubuntu nejprve identifikovat prostředí a poté vás nasměrovat na příslušnou metodu.

DNS není jen drobným nastavením – je to „vstupní bod“ celého síťového zásobníku na Ubuntu.

Například pouhé přepnutí na Google Public DNS (8.8.8.8) nebo Cloudflare (1.1.1.1) může znatelně zlepšit odezvu prohlížeče. Tento efekt je zvláště patrný ve VPS, cloudových a zahraničních síťových prostředích.

V tomto článku jasně oddělíme a vysvětlíme:

  • Jak konfigurovat DNS pomocí GUI
  • Jak konfigurovat DNS pomocí Netplan
  • Jak po nastavení ověřit vaše nastavení

V další sekci začneme určením, jaký typ prostředí používáte.

2. Dvě hlavní způsoby konfigurace DNS na Ubuntu

Na Ubuntu, i když je cílem „konfigurace DNS“, skutečná metoda se liší podle použitého systému správy sítě. Pokud budete pokračovat bez pochopení tohoto rozlišení, můžete narazit na problémy, jako že se nastavení neaplikuje nebo se po restartu vrátí.

Nejprve si ujasněme, že na Ubuntu existují dvě odlišné cesty konfigurace DNS.

Netplan (konfigurace založená na YAML)

  • Primárně používán v serverových prostředích
  • Standardizován napříč LTS verzemi Ubuntu od 18.04 výše
  • Konfigurační soubory se nacházejí v /etc/netplan/*.yaml
  • Spolupracuje se systemd‑resolved

Na VPS instancích nebo fyzických serverech bez GUI je Netplan téměř vždy správným předpokladem. To je běžné na AWS, Vultr, ConoHa, Oracle Cloud a podobných platformách.

NetworkManager (založený na GUI)

  • Primárně používán na desktopových PC (Ubuntu Desktop)
  • DNS lze zadat přes obrazovky nastavení IPv4 / IPv6
  • Snadno pochopitelný díky vizuálnímu rozhraní

Pokud používáte prostředí s povoleným GUI, je to nejpravděpodobnější nastavení. Typické případy zahrnují „Používám Ubuntu denně a jen chci změnit DNS, protože prohlížení je pomalé.“

Určete, jaké prostředí používáte

Nejjednodušší způsob, jak to zjistit, je podívat se, zda v /etc/netplan/ existují soubory.

ls /etc/netplan/

Pokud najdete YAML soubory, pravděpodobně je v provozu Netplan. Pokud je adresář prázdný nebo jste v systému s GUI, kontrola nastavení NetworkManageru je jednodušší přístup.

3. Konfigurace DNS pomocí Netplan (serverová prostředí)

Netplan používá YAML soubory k definování síťové konfigurace. V Ubuntu Server a VPS prostředích bez GUI je tato metoda téměř jistá.

Zde se zaměříme na běžný případ úpravy DNS hodnot pomocí minimálního a praktického příkladu.

Otevřete konfigurační soubor Netplan

Konfigurační soubory Netplan se nacházejí v /etc/netplan/. Název souboru se liší podle prostředí (například 00-installer-config.yaml).

Nejprve potvrďte název souboru:

ls /etc/netplan/

Po identifikaci otevřete soubor v editoru. Například:

sudo nano /etc/netplan/00-installer-config.yaml

Příklad: Přidání DNS záznamů v YAML

Tento příklad nastavuje jak Google DNS, tak Cloudflare DNS.

.

network:
  version: 2
  ethernets:
    ens33:
      dhcp4: true
      nameservers:
        addresses: [8.8.8.8, 1.1.1.1]

Název rozhraní ens33 se liší podle systému.
Zkontrolujte jej pomocí ip a nebo ip link.

Použít konfiguraci

Po úpravě aplikujte konfiguraci okamžitě:

sudo netplan apply

Pokud se objeví chyby, nejčastější příčinou jsou problémy s odsazením v souboru YAML.
Pečlivě zkontrolujte mezery. Tabulátory nejsou povoleny.

Lze použít DHCP a pevný DNS současně?

Toto je častá otázka. Ano, je možné získávat IP adresy přes DHCP a zároveň ručně zadávat DNS servery.

Příklad:

dhcp4: true
nameservers:
  addresses: [9.9.9.9]

V tomto případě jsou IP adresy automatické, zatímco DNS je pevně nastavené.

4. Používání NetworkManager (Ubuntu Desktop)

Pokud používáte Ubuntu pro desktop, můžete změnit nastavení DNS bez použití terminálu.
Pro běžné situace, jako je „prohlížeč je pomalý“ nebo „chci přepnout na veřejný DNS“, je GUI nejrychlejší přístup.

Jak otevřít obrazovku nastavení

  1. Klikněte na ikonu sítě v pravém horním rohu
  2. Otevřete „Settings“ nebo „Network Settings“
  3. Vyberte aktivní připojení (drátové nebo Wi‑Fi)
  4. Přejděte na kartu „IPv4“

Pole pro zadání DNS se nachází zde.
Přesná formulace se může mírně lišit podle verze Ubuntu, ale adresy lze zadat jako seznam oddělený čárkami.

Příklad zadání DNS (IPv4)

Příklad s Google DNS a Cloudflare DNS:

8.8.8.8, 1.1.1.1

Po zadání hodnot klikněte na „Apply“ nebo „Save“ a znovu připojte síť, aby se změny projevily.

Při použití IPv6

Na stejné obrazovce je karta „IPv6“ s poli pro zadání DNS.
U dvojstackových připojení může stabilita vyžadovat zadání DNS pro IPv4 i IPv6.

Kombinace DHCP s pevně nastaveným DNS

I v GUI můžete nastavit „automatické IP, ruční DNS“.
To je užitečné zejména v domácích nebo kancelářských Wi‑Fi sítích, kde nechcete pokaždé ručně přiřazovat pevnou IP.

5. Jak ověřit, že nastavení DNS bylo použito

Konfigurace DNS není dokončena jen tím, že jste hodnoty zadali a uložili.
Ověření je nezbytné k potvrzení, že nastavení jsou skutečně v platnosti.

Na Ubuntu můžete DNS ověřit třemi následujícími metodami.

Dotaz pomocí příkazu dig

dig google.com

V výstupu hledejte řádek označený „SERVER:“.
Ukazuje, který DNS server je aktuálně dotazován.

Příklad (úryvek):

;; SERVER: 8.8.8.8#53(8.8.8.8)

Zkontrolujte, že se zde zobrazuje 8.8.8.8 (Google) nebo 1.1.1.1 (Cloudflare).

Použití resolvectl status

Tato metoda poskytuje přesné informace prostřednictvím systemd‑resolved.

resolvectl status

Aktuálně referencované nameservery jsou zobrazeny podle síťového rozhraní.
Na serverech s více NIC je tato metoda spolehlivější než dig.

Proč byste neměli upravovat /etc/resolv.conf přímo

cat /etc/resolv.conf

Tento soubor ukazuje DNS, které jsou momentálně používány.
Jedná se však o generovaný soubor vytvořený systemd‑resolved.
Jakékoli ruční úpravy budou přepsány, takže přímá editace je nesprávná.

6. Často používaní poskytovatelé DNS (pro začátečníky)

DNS adresy si sami nevymýšlíte.
Ve většině případů se používají veřejné DNS služby.

Pokud chcete stabilní a bezpečný výchozí bod, jsou vhodné následující možnosti:

ProviderDNS Address
Google Public DNS8.8.8.8 / 8.8.4.4
Cloudflare1.1.1.1
Quad99.9.9.9
OpenDNS208.67.222.222 / 208.67.220.220

Zadání dvou DNS serverů místo jednoho zvyšuje spolehlivost.
Pokud jeden selže, systém automaticky přepne na druhý.

Při přístupu k interním firemním systémům (např. Active Directory) musíte používat interní DNS servery.
V takových případech má zajištění spolehlivého interního rozpoznávání názvů přednost před veřejným DNS.

7. DNS je často skrytým úzkým hrdlem

Ačkoli DNS vypadá jako jen další nastavení, má velký vliv na vnímánou rychlost sítě.
Jeho vliv se stává obzvláště zřejmým v následujících situacích:

  • První načtení stránky se zdá neobvykle pomalé
  • Ping je rychlý, ale webové stránky se načítají pomalu
  • Server je lehký, ale počáteční načtení SPA (React / Vue) je těžké

Tyto příznaky se obvykle zlepšují po opakovaném přístupu, zatímco první požadavek zůstává pomalý.
To je proto, že DNS funguje jako počáteční brána.

Obzvláště na VPS nebo v zahraničních regionech (jako us-east nebo eu-west) veřejné DNS často překonává výchozí DNS ISP.

DNS je místo, kde se snadno objevuje latence způsobená přetížením sítě.
Nejen na Ubuntu, ale obecně pro webové inženýry je optimalizace DNS jednou z prvních optimalizací „entry point“, které zvážit.

Často kladené otázky

Otázka 1: Upravil jsem /etc/resolv.conf přímo, ale po restartu se vrátí zpět. Proč?
→ Na Ubuntu systemd-resolved generuje /etc/resolv.conf.
Není určeno k přímé úpravě.
Musíte konfigurovat DNS přes Netplan nebo NetworkManager.

Otázka 2: Co když nevím, zda je v použití Netplan nebo NetworkManager?
→ Nejprve zkontrolujte /etc/netplan/.

ls /etc/netplan/

Pokud YAML soubory existují, je pravděpodobně v použití Netplan.
V grafických prostředích je primárním kandidátem NetworkManager.

Otázka 3: Mohu použít DHCP pro IP při opravě DNS?
→ Ano.
Obě Netplan i NetworkManager podporují automatickou IP s ručně specifikovaným DNS.

Otázka 4: Změna DNS vždy zrychlí web?
→ Ne vždy.
DNS řeší pouze počáteční rozlišení názvu.
Často zrychlí první krok, ale pomalé obrázky, CDN nebo API mohou stále být úzkými hrdly.

Otázka 5: Je postup stejný pro WSL2 (Ubuntu na Windows)?
→ Ne.
WSL2 regeneruje resolv.conf záměrně.
Jsou vyžadovány další nastavení, jako generateResolvConf=false.
WSL má své vlastní úvahy ohledně konfigurace DNS.