Cum se configurează DNS local utilizând fișierul /etc/hosts în Linux


DNS (Domain Name System or Service) este un sistem/serviciu de denumire ierarhic descentralizat care traduce numele de domenii în adrese IP pe Internet sau într-o rețea privată și un server care oferă astfel de un serviciu se numește server DNS.

Acest articol explică cum să configurați un DNS local folosind fișierul hosts (/etc/hosts) în sistemele Linux pentru rezoluția locală a domeniului sau testarea site-ului web înainte de a fi difuzat.

De exemplu, este posibil să doriți să testați un site web la nivel local cu un nume de domeniu personalizat înainte de a intra public prin modificarea fișierului /etc/hosts de pe sistemul dvs. local pentru a indica numele domeniului către adresa IP a serverul DNS local pe care l-ați configurat.

/etc/hosts este un fișier de sistem de operare care traduce numele de gazdă sau de domeniu în adrese IP. Acest lucru este util pentru testarea modificărilor site-urilor web sau a configurației SSL înainte de a prelua un site în mod public.

Atenție: această metodă va funcționa numai dacă gazdele au o adresă IP statică. Prin urmare, asigurați-vă că ați setat adrese IP statice pentru gazdele dvs. Linux sau nodurile care rulează alte sisteme de operare.

În scopul acestui articol, vom folosi următoarele domenii, nume de gazdă și adrese IP (utilizați valori care se aplică setărilor dvs. locale).

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

Înțelegerea comutatorului serviciului de nume în Linux

Înainte de a trece mai departe, ar trebui să înțelegeți câteva lucruri despre un alt fișier important care este /etc/nsswitch.conf. Oferă funcționalitatea Name Service Switch care controlează ordinea în care serviciile sunt interogate pentru căutările de servicii de nume.

Configurația se bazează pe comandă; dacă fișierele sunt înainte de dns, înseamnă că sistemul va interoga fișierul /etc/hosts înainte de a verifica DNS pentru solicitări de servicii de nume. Dar dacă DNS este înaintea fișierelor, atunci procesul de căutare a domeniului va consulta DNS mai întâi înainte de orice alte servicii sau fișiere adecvate.

În acest scenariu, dorim să interogăm serviciul „fișiere”. Pentru a verifica comanda, tastați.

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

Configurați DNS local folosind fișierul /etc/hosts în Linux

Acum deschideți fișierul /etc/hosts folosind editorul dorit, după cum urmează

sudo vi /etc/hosts

Apoi adăugați liniile de mai jos la sfârșitul fișierului, așa cum se arată în captura de ecran de mai jos.

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

Apoi, testați dacă totul funcționează bine conform așteptărilor, folosind comanda ping de la Gazda 1, puteți trimite ping la Gazda 2 folosind numele de domeniu, cum ar fi asa de.

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

Pe Gazda 2, am configurat serverul Apache HTTP. Prin urmare, putem testa și dacă serviciul de traducere a numelor funcționează după cum urmează, accesând adresa URL http://centos.tecmint.lan.

Important: pentru a utiliza numele de domeniu pe orice gazdă din rețea, trebuie să configurați setările de mai sus în fișierul său /etc/hosts.

Ce înseamnă acest lucru, în exemplul de mai sus, am configurat doar fișierul hosts al Gazdă 1 și putem folosi doar numele de domeniu de pe acesta. Pentru a folosi aceleași nume pe Gazda 2, trebuie să adăugăm adresele și numele și în fișierul său gazde.

În cele din urmă, ar trebui să utilizați comanda gazdă sau comanda nslookup pentru a testa dacă serviciul de traducere a numelui funcționează efectiv, aceste comenzi interogează doar DNS și trec cu vederea orice configurație în /etc/hosts și /etc/nsswitch fișiere .conf.

De asemenea, v-ar putea dori să citiți următoarele articole conexe.

  1. Instalați și configurați serverul DNS pentru caching-only în RHEL/CentOS 7
  2. Configurați un server DNS de cache recursiv de bază și configurați zonele pentru domeniu
  3. 8 comenzi Linux Nslookup pentru a depana DNS (Server de nume de domeniu)
  4. Exemple utile de comandă „gazdă” pentru interogarea căutărilor DNS

Asta este! Împărtășiți-ne orice gânduri sau întrebări suplimentare despre acest subiect, prin secțiunea de comentarii de mai jos.