Kuidas Ubuntu-s DNS-i seadistada: Täielik juhend Netplanile ja NetworkManagerile

1. Sissejuhatus: Miks DNS-i seadistamine Ubuntu’s on oluline

DNS (Domain Name System) on mehhanism, mis teisendab domeeninimed IP‑aadressideks.
Iga kord, kui avame veebisaidi, küsib operatsioonisüsteem taustal alati DNS‑serverit.

Ubuntu kasutamisel võite kokku puutuda:

  • Veebilehed tunduvad “veidi aeglased”
  • Jõudlus on aeglasem kui teistel samas võrgus olevatel seadmetel
  • Aeg-ajalt ei õnnestu pääseda sisemiste LAN‑veebisaitide juurde

Need sümptomid on üllatavalt sageli põhjustatud mitte “võrgu kvaliteedist”, vaid aeglasest DNS‑lahendamisest.

Ubuntu’s, isegi versioonides 22.04 ja uuemates, on DNS‑i seadistamiseks mitu viisi. See segadab sageli algajaid. Peamised kaks meetodit on:

  • Netplan (tavaline serverikeskkondades ilma GUI‑ta)
  • NetworkManager (toetab töölaua GUI‑operatsioone)

Kuna konfiguratsioon sõltub sellest, milline neist on aktiivne, peavad Ubuntu DNS‑artiklid algama “keskkonna tuvastamisega” ja seejärel “kasutaja juhendamisega õige meetodi juurde.”

DNS ei ole lihtsalt “väike osa seadistustest”, vaid sisendpunkt kogu Ubuntu võrgusüsteemi jaoks.

Näiteks Google Public DNS‑i (8.8.8.8) või Cloudflareʼi (1.1.1.1) kasutuselevõtt võib märkimisväärselt kiirendada veebisirvimist. See kehtib eriti VPS‑i, pilve või välismaiste võrkude keskkondades.

Järgnevas jaotises eristame selgelt:

  • Kuidas seadistada DNS‑i GUI kaudu
  • Kuidas seadistada DNS‑i Netplanʼi abil
  • Kuidas kontrollida DNS‑i seadeid

Kõigepealt määrame, millist keskkonda teie süsteem kasutab.

2. Ubuntu pakub kahte peamist meetodit DNS‑i seadistamiseks

Ubuntu’s sõltub DNS‑i seadistamise meetod kasutatavast võrguhaldussüsteemist. Kui seda eristust eirata, ei pruugi DNS‑i muudatused rakenduda või taastuvad need pärast taaskäivitust.

Siin võtab kokku asjaolu, et Ubuntu’l on kaks sõltumatut DNS‑i konfiguratsioonisüsteemi.

Netplan (YAML‑põhine konfiguratsioon)

  • Tavaline serverikeskkondades
  • Standardiseeritud Ubuntu 18.04 ja uuemates LTS‑versioonides
  • Konfiguratsioonifailid asuvad kataloogis /etc/netplan/*.yaml
  • Töötavad koos systemd‑resolvedʼiga

VPS‑i või füüsiliste serverite keskkondades ilma GUI‑ta kasutatakse Netplanʼi peaaegu alati. Pilvekeskkonnad nagu AWS, Vultr, ConoHa või Oracle Cloud kasutavad samuti tavaliselt seda meetodit.

NetworkManager (GUI)

  • Tavaline töölauaarvutite keskkondades (Ubuntu Desktop)
  • Võimaldab DNS‑i seadistada IPv4 / IPv6 seadete kaudu
  • Lihtne mõista tänu GUI‑põhisele konfiguratsioonile

Kui kasutate Ubuntu Desktopʼi, on see tõenäolisem meetod. See on ideaalne, kui soovite “lihtsalt DNS‑i muuta, sest brauser tundub aeglane.”

Kuidas kontrollida, millist meetodit te kasutate

Lihtsaim viis on kontrollida, kas kataloogis /etc/netplan/ on faile.

ls /etc/netplan/

Kui YAML‑failid on olemas, kasutatakse tõenäoliselt Netplanʼi. Kui kataloog on tühi või kasutate GUI‑d, kontrollige NetworkManageri seadeid.

3. DNS‑i seadistamine Netplanʼi abil (serveritele)

Netplan kasutab YAML‑faile võrguseadete määratlemiseks. Ubuntu Serveri või VPS‑i keskkondades ilma GUI‑ta on see peaaegu alati kasutatav konfiguratsioonimeetod.

See jaotis keskendub minimaalsetele praktilistele sammudele, mis on vajalikud DNS‑i kindlaks väärtuseks seadistamiseks.

Ava Netplanʼi konfiguratsioonifail

Netplanʼi konfiguratsioonifailid asuvad kataloogis /etc/netplan/. Tegelik failinimi varieerub sõltuvalt keskkonnast (nt 00-installer-config.yaml).

Esmalt kontrollige failide loendit:

ls /etc/netplan/

Pärast failinime tuvastamist avage see redaktoriga, näiteks nano. Näide:

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

Kuidas lisada DNS‑kirjeid YAML‑i (näide)

Allpool on näide, mis määrab nii Google DNS‑i kui ka Cloudflare DNS‑i.

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

Märkus: ens33 sõltub teie võrgukaardist. Kontrollige seda käsuga ip a või ip link.

Rakenda konfiguratsioon

Rakenda muudatused kohe kasutades:

sudo netplan apply

Kui ilmnevad vead, on YAML‑i taandamine kõige tavalisem põhjus.
Kontrolli tühikuid ja hierarhiat — tabulaatoreid ei tohi kasutada.

Kas DHCP ja käsitsi DNS võivad koos eksisteerida?

Jah, saate DHCP kaudu IP‑aadressi hankida, samal ajal määrates DNS‑i käsitsi.

Näide:

dhcp4: true
nameservers:
  addresses: [9.9.9.9]

See konfiguratsioon seab “IP = automaatne, DNS = käsitsi.”

4. NetworkManageri (GUI) kasutamine DNS‑i konfigureerimiseks Ubuntu töölaual

Kui kasutate Ubuntu töölaual, saate DNS‑i muuta ilma terminali kasutamata.
See GUI‑põhine meetod on kiireim, kui soovite lihtsalt “kiirendada brauserit” või “lülituda avalikule DNS‑ile”.

Kuidas avada seadete aken

  1. Klõpsake võrguikoonil paremas ülanurgas
  2. Avage “Seaded” või “Võrgu seaded”
  3. Valige aktiivne ühendus (Ethernet / Wi‑Fi)
  4. Minge “IPv4” vahekaardile

Siit leiate DNS‑i sisestusvälja.
Sõltuvalt Ubuntu versioonist võib sõnastus veidi erineda, kuid saate sisestada DNS‑aadressid komadega eraldatult.

Näidis sisend (DNS määramine IPv4 kaudu)

Näide: Google DNS‑i ja Cloudflare DNS‑i kasutamine

8.8.8.8, 1.1.1.1

Pärast väärtuste sisestamist klõpsake “Rakenda” või “Salvesta”. Soovitatav on võrguühendus katkestada ja uuesti luua, et seaded jõustuksid.

Kui kasutate IPv6

“IPv6” vahekaardil on sarnane DNS‑i sisestusväli.
Kahe‑stakiga võrkudes võib stabiilsuse huvides olla oluline määrata nii IPv4 kui ka IPv6 DNS.

DHCP ja käsitsi DNS‑i kombineerimine

Saate GUI‑s seadistada automaatse IP‑jaotuse, samal ajal määrates DNS‑i käsitsi.
See on kasulik, kui te ei soovi igas kasutatavas Wi‑Fi võrgus käsitsi fikseeritud IP‑aadressi määrata, näiteks kodus või kontoris.

5. Kuidas kinnitada, et DNS‑i seaded on rakendatud

DNS‑i konfiguratsioon ei ole lõpetatud, kuni veendute, et uued seaded on tegelikult rakendatud.
Ubuntu pakub kolme usaldusväärset meetodit DNS‑i oleku kontrollimiseks.

Kasutage dig käsku

dig google.com

Väljundist otsige rida, mille ees on “SERVER: 〜”. See näitab millist DNS‑serverit teie süsteem praegu kasutab.

Näide (väljavõte):

;; SERVER: 8.8.8.8#53(8.8.8.8)

Veenduge, et see näitab 8.8.8.8 (Google) või 1.1.1.1 (Cloudflare) jne.

resolvectl status

See meetod on täpne, kui kasutatakse systemd‑resolved.

resolvectl status

See kuvab iga võrgukaardi (NIC) poolt praegu kasutatava nimeserveri.
Mitme NIC‑ga serverites on see dig‑i kui usaldusväärsem.

Miks te ei tohiks /etc/resolv.conf faili otse redigeerida

cat /etc/resolv.conf

See fail näitab praegu kasutusel olevaid lõplikke DNS‑väärtusi.
Kuid see fail genereeritakse automaatselt systemd‑resolved poolt, mis tähendab:
See kirjutatakse üle, seega selle faili redigeerimine on vale.

6. Levinud DNS‑valikud (kasulik algajatele)

Te ei “loo” DNS‑serveri aadresse ise.
Enamasti valite laialdaselt kättesaadavatest avalikest DNS‑teenustest.

Kui soovite turvalisi, stabiilseid valikuid, valige allolevast loendist:

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

Soovitatav on määrata kaks DNS‑serverit redundantsuse tagamiseks.
Kui üks muutub kättesaamatuks, pöördub süsteem automaatselt teise poole.

Kui kasutate sisemist DNS‑i (nt ettevõtte AD), peate määrama sisemise DNS‑serveri, mitte avaliku DNS‑i.
Sisemine nime lahendamine annab sageli eelistuse välisele DNS‑jõudlusele.

7. DNS muutub sageli võrgu kitsaskohaks

Kuigi DNS näib lihtsa konfiguratsioonielemendina, avaldab see märkimisväärset mõju tajutud võrgu jõudlusele.
DNS‑probleeme märgatakse eriti järgmistes olukordades:

  • Veebilehe esimene laadimissamm tundub ebatavaliselt aeglane
  • Ping on kiire, kuid veebisirvimine on aeglane
  • SPA‑raamistikud (React / Vue) laadivad esialgu aeglaselt

Need juhtumid käituvad sageli nii: “Pärast sama URL-i mitu korda laadimist muutub see kiireks, kuid esimene ligipääs on kummaliselt aeglane.” See juhtub, sest DNS on esialgne sisendpunkt.

Eriti VPS-ide või rahvusvaheliste piirkondade (nt us-east / eu-west) puhul võib avalik DNS ületada teie ISP‑i vaikimisi DNS-i.

DNS on punkt, mis on väga tundlik võrgu latentsuse suhtes. Sõltumata operatsioonisüsteemist on DNS‑i häälestamine üks esimesi optimeerimisi, mida veebiarhitektid peaksid tegema.

KKK

K1: Muutsin /etc/resolv.conf faili, kuid see taastub pärast taaskäivitust. Miks?
→ Ubuntu systemd-resolved genereerib automaatselt /etc/resolv.conf. Seda faili ei ole mõeldud käsitsi muutma. Kasuta selle asemel Netplan-i või NetworkManager-i.

K2: Ma ei ole kindel, kas kasutan Netplan-i või NetworkManager-i. Kuidas seda kontrollida?
→ Esiteks kontrolli:

ls /etc/netplan/

Kui on olemas YAML‑failid, kasutatakse tõenäoliselt Netplan-i. Kui kasutad graafilist kasutajaliidest, on tõenäolisem, et kasutad NetworkManager-i.

K3: Kas saan DHCP‑ga automaatselt IP‑aadressi hankida ja DNS‑i siiski käsitsi määrata?
→ Jah. Nii Netplan kui ka NetworkManager võimaldavad „IP = AUTO, DNS = manual“.

K4: Kas DNS‑i muutmine kiirendab alati veebisirvimist?
→ Mitte alati. DNS mõjutab ainult esialgset nime lahendamist. See kiirendab sageli esimest laadimist, kuid aeglased pildid, CDN‑id või API‑d mujal võivad siiski põhjustada aeglase jõudluse.

K5: Kas samad sammud kehtivad Ubuntu WSL2‑l?
→ Mitte täpselt. WSL2 genereerib resolv.conf faili automaatselt, mis nõuab täiendavaid seadistusi, näiteks:
generateResolvConf=false
WSL‑il on oma DNS‑konfiguratsiooni meetodid.