Kaip nustatyti nuolatinius DNS vardų serverius Ubuntu ir Debian


/etc/resolv.conf yra pagrindinis DNS vardų nustatymo priemonės bibliotekos konfigūracijos failas. Rezoliucija yra C bibliotekos funkcijų rinkinys, suteikiantis prieigą prie interneto domenų vardų sistemos (DNS). Funkcijos sukonfigūruotos patikrinti įrašus /etc/hosts faile arba keliuose DNS vardų serveriuose arba naudoti pagrindinio kompiuterio tinklo informacijos paslaugos duomenų bazę (NIS ).

Šiuolaikinėse „Linux“ sistemose, kuriose naudojama systemd (sistemos ir paslaugų tvarkyklė), DNS arba vardų skyrimo paslaugos teikiamos vietinėms programoms per >sistemiškai išspręsta paslauga. Pagal numatytuosius nustatymus ši paslauga turi keturis skirtingus domeno vardo skyros režimus ir naudoja sistemos DNS baigties failą (/run/systemd/resolve/stub-resolv.conf) numatytuoju veikimo režimu.

DNS stuburo faile yra vietinis stub 127.0.0.53 kaip vienintelis DNS serveris ir jis nukreipiamas į /etc/resolv.conf failą, kuris buvo naudojamas pridėti sistemos naudojami vardų serveriai.

Jei paleisite šią ls komandą /etc/resolv.conf, pamatysite, kad šis failas yra simbolinė nuoroda į /run/systemd/resolve/stub-resolv.conf< failą.

ls -l /etc/resolv.conf

lrwxrwxrwx 1 root root 39 Feb 15  2019 /etc/resolv.conf -> ../run/systemd/resolve/stub-resolv.conf

Deja, nes failą /etc/resolv.conf netiesiogiai valdo paslauga sistemiškai išspręsta, o kai kuriais atvejais - tinklo paslauga (naudojant initscripts< arba NetworkManager), bet kokie vartotojo rankiniu būdu atlikti pakeitimai negali būti išsaugoti visam laikui arba gali trukti tik kurį laiką.

Šiame straipsnyje parodysime, kaip įdiegti ir naudoti resolvconf programą nuolatiniams DNS vardų serveriams nustatyti /etc/resolv.conf faile, esančiame Debian ir Ubuntu Linux platinimai.

Kodėl norėtumėte redaguoti /etc/resolv.conf failą?

Pagrindinė priežastis gali būti dėl to, kad sistemos DNS nustatymai yra netinkamai sukonfigūruoti arba norite naudoti konkrečius ar savo vardų serverius. Ši komanda cat rodo numatytąjį vardų serverį /etc/resolv.conf faile mano Ubuntu sistemoje.

cat /etc/resolv.conf

Tokiu atveju, kai vietinės programos, pvz., APT paketų tvarkyklė, bando pasiekti FQDN (visiškai kvalifikuotus domenų vardus) vietiniame tinkle, rezultatas yra „ Laikinas vardo skyrimo sutrikimas“, kaip parodyta kitoje ekrano kopijoje.

Tas pats atsitinka, kai paleidžiate ping komandą.

ping google.com

Taigi, kai vartotojas bando rankiniu būdu nustatyti vardų serverius, pakeitimai trunka neilgai arba atšaukiami po perkrovimo. Norėdami tai išspręsti, galite įdiegti ir naudoti reolvconf paslaugų programą, kad pakeitimai būtų nuolatiniai.

Norėdami įdiegti resolvconf paketą, kaip parodyta kitame skyriuje, pirmiausia turite rankiniu būdu nustatyti toliau nurodytus vardų serverius /etc/resolv.conf faile, kad galėtumėte pasiekti Ubuntu saugyklos serverių FQDM internete.

nameserver 8.8.4.4
nameserver 8.8.8.8

Taip pat skaitykite: kaip nustatyti vietinį DNS naudojant /etc/hosts failą sistemoje Linux

Resolvconf diegimas Ubuntu ir Debian

Pirmiausia atnaujinkite sistemos programinės įrangos paketus ir įdiekite resolvconf iš oficialių saugyklų vykdydami šias komandas.

sudo apt update
sudo apt install resolvconf

Kai resolvconf diegimas bus baigtas, systemd suaktyvins resolvconf.service, kuri bus automatiškai paleista ir įgalinta. Norėdami patikrinti, ar jis sukurtas ir veikia, išduoda šią komandą.

sudo systemctl status resolvconf.service

Jei paslauga dėl kokios nors priežasties nepaleidžiama ir neįjungiama automatiškai, galite ją paleisti ir įjungti taip.

sudo systemctl start resolvconf.service
sudo systemctl enable resolvconf.service
sudo systemctl status resolvconf.service

Nustatykite nuolatinius DNS vardų serverius Ubuntu ir Debian

Tada atidarykite /etc/resolvconf/resolv.conf.d/head konfigūracijos failą.

sudo nano /etc/resolvconf/resolv.conf.d/head

ir pridėkite jame šias eilutes:

nameserver 8.8.8.8 
nameserver 8.8.4.4

Išsaugokite pakeitimus ir iš naujo paleiskite resolvconf.service ir systemd-resolved arba paleiskite sistemą iš naujo.

sudo systemctl restart resolvconf.service
sudo systemctl restart systemd-resolved.service

Dabar, kai tikrinate /etc/resolv.conf failą, vardų serverio įrašai turėtų būti ten nuolat saugomi. Nuo šiol sistemoje neturėsite problemų dėl vardo skyrimo.

Tikiuosi, kad šis trumpas straipsnis padėjo jums nustatyti nuolatinius DNS vardų serverius Ubuntu ir Debian sistemose. Jei turite klausimų ar pasiūlymų, pasidalykite jais su mumis toliau pateiktame komentarų skyriuje.