Sådan konfigureres lokal DNS ved hjælp af/etc/hosts-fil i Linux
DNS (Domain Name System or Service) er et hierarkisk decentraliseret navngivningssystem/-tjeneste, der oversætter domænenavne til IP-adresser på Internettet eller et privat netværk, og en server, der leverer en sådan tjeneste, kaldes en DNS-server.
Denne artikel forklarer, hvordan du opsætter en lokal DNS ved hjælp af værtsfilen (/ etc/hosts) i Linux-systemer til lokal domæneopløsning eller afprøvning af webstedet, før du tager live.
For eksempel vil du muligvis teste et websted lokalt med et brugerdefineret domænenavn, før du går live offentligt ved at ændre/etc/hosts-filen på dit lokale system for at pege domænenavnet til IP-adressen på den lokale DNS-server, du har konfigureret.
/ Etc/hosts er en operativsystemfil, der oversætter værtsnavne eller domænenavne til IP-adresser. Dette er nyttigt til at teste webstedsændringer eller SSL-opsætningen, før en webside offentliggøres.
OBS: Denne metode fungerer kun, hvis værterne har en statisk IP-adresse. Sørg derfor for, at du har indstillet statiske IP-adresser til dine Linux-værter eller noder, der kører andre operativsystemer.
Med henblik på denne artikel bruger vi følgende domæne, værtsnavne og IP-adresser (brug værdier, der gælder for din lokale indstilling).
Domain: tecmint.lan Host 1: ubuntu.tecmint.lan 192.168.56.1 Host 2: centos.tecmint.lan 192.168.56.10
Forståelse af Name Service Switch i Linux
Inden du går videre, skal du forstå et par ting om en anden vigtig fil, der er /etc/nsswitch.conf. Det giver Name Service Switch-funktionalitet, der styrer den rækkefølge, i hvilke tjenester der forespørges for navneservicetopslag.
Konfigurationen er baseret på ordre; hvis filer er før dns, betyder det, at systemet spørger/etc/hosts-filen, før det kontrollerer DNS for navneserviceanmodninger. Men hvis DNS er før filer, vil domæneopslagsprocessen først høre DNS før eventuelle andre relevante tjenester eller filer.
I dette scenarie ønsker vi forespørgsel om "filer" -tjenesten. For at kontrollere ordren skal du skrive.
$ cat /etc/nsswitch.conf OR $ grep hosts /etc/nsswitch.conf
Konfigurer DNS lokalt ved hjælp af/etc/hosts-fil i Linux
Åbn nu filen/etc/hosts ved hjælp af din valgte editor som følger
$ sudo vi /etc/hosts
Tilføj derefter nedenstående linjer til slutningen af filen som vist på skærmbilledet nedenfor.
192.168.56.1 ubuntu.tecmint.lan 192.168.56.10 centos.tecmint.lan
Test derefter, om alt fungerer godt som forventet, ved hjælp af ping-kommandoen fra vært 1, kan du pinge vært 2 ved hjælp af det domænenavn sådan.
$ ping -c 4 centos.tecmint.lan OR $ ping -c 4 centos
På værten 2 har vi konfigureret Apache HTTP-server. Så vi kan også teste, om navnet oversættelsestjeneste fungerer som følger ved at gå til URL http: //centos.tecmint.lan.
Vigtigt: For at bruge domænenavne på enhver vært på netværket skal du konfigurere ovenstående indstillinger i dens/etc/hosts-fil.
Hvad betyder dette, i ovenstående eksempel konfigurerede vi kun værtsfilen til vært 1, og vi kan kun bruge domænenavne på den. For at bruge de samme navne på vært 2 skal vi også tilføje adresser og navne til dens værtsfil.
Endelig skal du bruge kommandoen nslookup til at teste, om navnet oversættelsestjeneste rent faktisk fungerer, disse kommandoer søger kun efter DNS og overser alle konfigurationer i/etc/hosts og /etc/nsswitch.conf filer.
Du kan også lide at læse disse følgende relaterede artikler.
- Installer og konfigurer kun cache-DNS-server i RHEL/CentOS 7
- Opsæt en grundlæggende rekursiv caching-DNS-server og konfigurer zoner til domæne
- 8 Linux Nslookup-kommandoer til fejlfinding af DNS (Domain Name Server)
- Nyttige 'vært' kommandoeksempler til forespørgsel om DNS-opslag
Det er det! Del eventuelle yderligere tanker eller spørgsmål om dette emne med os via kommentarfeltet nedenfor.