Netwerk topologie:
Afbeelding 1: netwerktopologie van dit artikel
Hier zal ik een CentOS 8-machine configureren als een DNS-server. De CentOS 8-machine heeft een statisch IP-adres 192.168.20.20. De andere computers in het netwerk hebben toegang tot de DNS-server om domeinnamen op te lossen.
Statisch IP-adres instellen:
U moet een statisch IP-adres instellen op uw CentOS 8-machine als u een DNS-server wilt instellen. Om een statisch IP-adres op CentOS 8 in te stellen, raadpleeg mijn artikel Static IP configureren op CentOS 8.
DNS-server installeren op CentOS 8:
BIND 9 is beschikbaar in de officiële pakketrepository van CentOS 8. Het is dus heel eenvoudig te installeren.
Werk eerst de cache van de DNF-pakketrepository bij met de volgende opdracht:
$ sudo dnf makecache
Installeer nu BIND 9 met de volgende opdracht:
$ sudo dnf install bind
Om de installatie te bevestigen, drukt u op Y en druk vervolgens op
BIND 9 moet worden geïnstalleerd.
BIND 9 DNS-server configureren:
De hoofdconfiguratie van BIND is: /etc/named.conf. U voegt uw aangepaste DNS-databases toe in de /var/genoemd/ map. Nadat de DNS-database is gemaakt, voegt u uw aangepaste zonebestanden toe aan de /etc/genoemd/ directory en voeg de zonebestanden toe aan de /etc/named.conf configuratiebestand. Dat is eigenlijk hoe je de BIND 9 DNS-server configureert.
Laten we een DNS-database maken voor linuxhint.lokaal domeinnaam.
Een nieuw bestand maken db.linuxhint.lokaal in de /var/genoemd/ map als volgt:
$ sudo vim /var/named/db.linuxhint.lokaal
Typ nu de volgende regels in de db.linuxhint.lokaal bestand en sla het bestand op.
$TTL 1d$ORIGIN linuxhint.lokaal.
@ IN SOA ns root (
2020031201 ; serieel
12u ; Vernieuwen
15m ; Opnieuw proberen
3w ; Verlopen
2 uur ; Minimum
)
@ IN A 192.168.20.20
@ IN NS ns
ns IN A 192.168.20.20
@ IN MX 10 mail
mail IN A 192.168.20.20
hulp IN A 192.168.20.111
ondersteuning IN A 192.168.20.112
www IN A 192.168.10.12
router IN A 192.168.2.1
ftp IN CNAME www
Zodra u een DNS-database heeft toegevoegd voor: linuxhint.lokaal domein, kunt u controleren of de bestandssyntaxis in orde is met het volgende commando:
$ sudo genaamd-checkzone linuxhint.lokaal /var/named/db.linuxhint.lokaal
Zoals u kunt zien, zijn er geen syntaxisfouten. Als die er is, ziet u de respectievelijke foutmeldingen.
Maak nu een zonebestand aan linuxhint.lokaal.zones in de /etc/genoemd/ directory voor linuxhint.lokaal domein als volgt:
$ sudo vim /etc/named/linuxhint.lokaal.zones
Typ nu de volgende regels in de linuxhint.lokaal.zones het dossier.
zone "linuxhint".lokaal" INtype meester;
bestand "db.linuxhint.lokaal";
;
Bewerk nu de /etc/named.conf bestand als volgt:
$ sudo vim /etc/named.conf
Eerst moet u uw netwerksubnet toevoegen aan: toestaan-query. Anders kan geen van de computers in uw netwerk de DNS-server gebruiken.
Het netwerksubnet is: 192.168.20.0/24. Dus dit is wat ik daar heb toegevoegd.
U moet ook het IP-adres van uw CentOS 8-machine toevoegen die u als DNS-server configureert als: luister verder adres. In mijn geval is dat 192.168.20.20. Dus ik heb het daar toegevoegd.
Voeg tot slot de linuxhint.lokaal.zones bestand van de /etc/genoemd/ directory aan het einde van de /etc/named.conf bestand met de volgende regel:.
omvatten "/etc/named/linuxhint.lokaal.zones";
Start nu de genaamd service met het volgende commando:
$ sudo systemctl start met de naam
Zoals je kunt zien, is de genaamd service loopt.
$ sudo systemctl-status met de naam
Voeg ook de genoemde service toe aan het opstarten van het systeem van CentOS 8. De DNS-server start dus automatisch bij het opstarten.
$ sudo systemctl inschakelen genaamd
Als u wijzigingen aanbrengt in het configuratiebestand van de DNS-server na het starten van de genaamd service, moet u de genaamd service om de wijzigingen door te voeren.
Om de . opnieuw te starten genaamd service, voer de volgende opdracht uit:
$ sudo systemctl herstart genaamdDNS-server testen:
U kunt de DNS-naamserver testen met: graven.
Ga als volgt te werk om te controleren of de DNS-server luistert op de uitgaande netwerkinterface:
$ graven @192.168.20.20 linuxhint.lokaal
Super goed! De DNS-server is toegankelijk via de uitgaande netwerkinterface van CentOS 8.
De DNS-naamserver is ook lokaal toegankelijk voor de CentOS 8-machine.
$ dig @localhost linuxhint.lokaal
Ik kan ook www . oplossen.linuxhint.lokaal zoals je kunt zien in de onderstaande schermafbeelding.
$ graaf @127.0.0.1 www.linuxhint.lokaal
Het DNS-serveradres van de netwerkinterface wijzigen:
Nu kunt u het DNS-serveradres van uw netwerkinterface wijzigen om standaard de lokale DNS-server te gebruiken. Bekijk mijn artikel Statische IP configureren op CentOS 8 voor een gedetailleerde instructie over hoe je dat doet.
Zoals u kunt zien, kan BIND de internetdomeinnamen oplossen.
BIND kan ook het lokaal geconfigureerde domein linuxhint oplossen.lokaal
De firewall configureren:
Om DNS-verzoeken door de firewall toe te staan, opent u nu de DNS-serverpoort 53 met de volgende opdracht:
$ sudo firewall-cmd --add-service=dns --permanent
Voer de volgende opdracht uit om de wijzigingen door te voeren:
$ sudo firewall-cmd --reload
De DNS-server testen vanaf andere computers:
Ik heb een Windows 10-machine op hetzelfde netwerksubnet geconfigureerd om de DNS-server te gebruiken die ik zojuist op de CentOS 8-machine heb geconfigureerd.
Zoals u kunt zien, is de DNS-resolutie voor linuxhint.lokaal subdomeinen werken.
$ nslookup ns.linuxhint.lokaal$ nslookup-ondersteuning.linuxhint.lokaal
$ nslookup www.linuxhint.lokaal
$ nslookup-e-mail.linuxhint.lokaal
Dus zo configureer je de BIND 9 DNS-server op CentOS 8. Bedankt voor het lezen van dit artikel.