Kako nastaviti lokalni DNS z datoteko/etc/hosts v Linuxu


DNS (sistem ali storitev domenskih imen) je hierarhično decentraliziran sistem/storitev poimenovanja, ki prevaja imena domen v naslove IP v internetu ali zasebnem omrežju, strežnik, ki ponuja takšno storitev, pa se imenuje strežnik DNS.

V tem članku je razloženo, kako nastaviti lokalni DNS z uporabo datoteke gostitelja (/ etc/hosts) v sistemih Linux za ločljivost lokalne domene ali testiranje spletnega mesta, preden začnete živeti.

Na primer, morda boste želeli lokalno spletno mesto preizkusiti z imenom domene po meri, preden bo javno objavljeno, tako da spremenite datoteko/etc/hosts v lokalnem sistemu, da bo ime domene usmerjalo na naslov IP lokalnega strežnika DNS, ki ste ga konfigurirali.

/ Etc/hosts je datoteka operacijskega sistema, ki prevaja imena gostiteljev ali imena domen v naslove IP. To je uporabno za testiranje sprememb spletnih mest ali nastavitev SSL, preden spletno mesto javno objavite.

Pozor: Ta metoda bo delovala le, če imajo gostitelji statični naslov IP. Zato zagotovite, da ste nastavili statične naslove IP za svoje gostitelje ali vozlišča Linux, v katerih se izvajajo drugi operacijski sistemi.

Za namen tega članka bomo uporabili naslednjo domeno, imena gostiteljev in naslove IP (uporabite vrednosti, ki veljajo za vašo lokalno nastavitev).

Domain:     tecmint.lan
Host 1:     ubuntu.tecmint.lan	 192.168.56.1
Host 2:     centos.tecmint.lan	 192.168.56.10

Razumevanje preklopa imenskih storitev v Linuxu

Preden nadaljujete, morate razumeti nekaj stvari o drugi pomembni datoteki, ki je /etc/nsswitch.conf. Omogoča funkcijo Name Service Switch, ki nadzoruje vrstni red poizvedb o storitvah za iskanje imenskih storitev.

Konfiguracija temelji na naročilu; če je datoteka pred dns, to pomeni, da bo sistem poizvedel datoteko/etc/hosts, preden bo preveril DNS za zahteve za imenske storitve. Če pa je DNS pred datotekami, se bo postopek iskanja domene najprej posvetoval z DNS pred drugimi ustreznimi storitvami ali datotekami.

V tem primeru želimo poiskati storitev\"datoteke". Če želite preveriti naročilo, vnesite.

$ cat /etc/nsswitch.conf
OR
$ grep hosts /etc/nsswitch.conf

Lokalno konfigurirajte DNS z uporabo datoteke/etc/hosts v Linuxu

Zdaj odprite datoteko/etc/hosts z izbranim urejevalnikom, kot sledi

$ sudo vi /etc/hosts

Nato dodajte spodnje vrstice na konec datoteke, kot je prikazano na spodnjem posnetku zaslona.

192.168.56.1   ubuntu.tecmint.lan
192.168.56.10  centos.tecmint.lan

Nato preizkusite, ali vse deluje dobro, kot ste pričakovali. Z ukazom ping iz gostitelja 1 lahko gostitelja 2 pingate tako, da ga uporabite tako.

$ ping -c 4 centos.tecmint.lan 
OR
$ ping -c 4 centos

Na Host 2 imamo nastavljen strežnik Apache HTTP. Tako lahko tudi preizkusimo, ali storitev prevajanja imen deluje na naslednji način, tako da odpremo URL http://centos.tecmint.lan.

Pomembno: Če želite domenska imena uporabljati na katerem koli gostitelju v omrežju, morate zgoraj navedene nastavitve konfigurirati v datoteki/etc/hosts.

Kaj to pomeni, v zgornjem primeru smo konfigurirali samo datoteko gostitelja gostitelja 1 in na njej lahko uporabimo samo domenska imena. Za uporabo enakih imen na Host 2 moramo naslove in imena dodati tudi v njegovo datoteko gostitelja.

Na koncu uporabite ukaz nslookup, da preizkusite, ali storitev prevajanja imen dejansko deluje, ti ukazi poizvedujejo samo po DNS in spregledajo morebitne konfiguracije v datotekah/etc/hosts in /etc/nsswitch.conf.

Morda boste radi prebrali tudi te naslednje povezane članke.

  1. Namestite in konfigurirajte strežnik DNS samo za predpomnjenje v RHEL/CentOS 7
  2. Nastavite osnovni strežnik DNS za rekurzivno predpomnjenje in konfigurirajte cone za domeno
  3. 8 ukazov Linux Nslookup za odpravljanje težav z DNS (strežnik domenskih imen)
  4. Uporabni primeri gostiteljskih ukazov za poizvedovanje po iskanju DNS

To je to! V spodnjem oddelku za komentarje delite z nami kakršne koli dodatne misli ali vprašanja o tej temi.