w tym artykule pokażę Ci, jak skonfigurować BIND 9 serwer DNS na CentOS 8. Więc zaczynajmy.

Topologia sieci:

Rysunek 1: topologia sieci tego artykułu

tutaj skonfiguruję maszynę CentOS 8 jako serwer DNS. Maszyna CentOS 8 ma statyczny adres IP 192.168.20.20. Inne komputery w sieci będą mogły uzyskać dostęp do serwera DNS w celu rozwiązywania nazw domen.,

Konfigurowanie statycznego adresu IP:

musisz skonfigurować statyczny adres IP na komputerze CentOS 8, jeśli chcesz skonfigurować serwer DNS. Aby skonfigurować statyczny adres IP na CentOS 8, sprawdź mój artykuł Konfigurowanie statycznego adresu IP na CentOS 8.

Instalacja serwera DNS na CentOS 8:

BIND 9 jest dostępny w oficjalnym repozytorium pakietów CentOS 8. Jest więc bardzo łatwy w instalacji.,

najpierw zaktualizuj bufor repozytorium pakietów DNF za pomocą następującego polecenia:

$ sudo dnf makecache

teraz zainstaluj BIND 9 za pomocą następującego polecenia:

$ sudo dnf install bind

aby potwierdzić instalację, naciśnij y, a następnie naciśnij <wprowadź>.

BIND 9 powinien być zainstalowany.,

Konfiguracja BIND 9 serwera DNS:

główną konfiguracją Binda jest/etc / named.conf. Dodajesz własne bazy danych DNS w katalogu/var/ named/. Po utworzeniu bazy danych DNS dodajesz własne pliki stref w katalogu/etc/ named /i dołączasz pliki stref w katalogu/etc / named.plik konfiguracyjny conf. W ten sposób konfigurujesz serwer DNS BIND 9.

stwórzmy bazę danych DNS dla linuxhint.lokalna nazwa domeny.

Utwórz nowy plik db.linuxhint.,lokalne w katalogu/var/ named/w następujący sposób:

$ sudo vim/var/named / db.linuxhint.local

Teraz wpisz następujące linie w db.linuxhint.plik lokalny i zapisz plik.

$TTL 1D
$ORIGIN linuxhint.lokalne.
@ IN SOA NS root (
2020031201 ; Serial
12h ; Refresh
15m ; Retry
3W ; Expire
2h ; Minimum
)
@ in a 192.168.20.20
@ IN a 192.168.20.20
@ IN MX 10 mail
mail IN a 192.168.20.20
pomoc w 192.168.20.111
pomoc w 192.,168.20.112
www w 192.168.10.12
router w 192.168.2.1
ftp w CNAME www

Po dodaniu bazy danych DNS dla linuxhint.domeny lokalnej, możesz sprawdzić czy składnia pliku jest prawidłowa za pomocą następującego polecenia:

$ sudo named-checkzone linuxhint.local / var/named / db.linuxhint.local

jak widać, nie ma błędów składniowych. Jeśli takie istnieją, zobaczysz odpowiednie komunikaty o błędach.,

Now, create a zone file linuxhint.local.zones in the /etc/named/ directory for linuxhint.local domain as follows:

$ sudo vim /etc/named/linuxhint.local.zones

Now, type in the following lines in the linuxhint.local.zones file.

zone „linuxhint.local” IN {
type master;
file „db.linuxhint.local”;
};

Now, edit the /etc/named.,plik conf w następujący sposób:

$ sudo vim/etc / named.conf

najpierw musisz dodać swoją podsieć sieciową, aby zezwolić na zapytanie. W przeciwnym razie żaden z komputerów w sieci nie będzie mógł korzystać z serwera DNS.

podsieć sieciowa to 192.168.20.0/24. Więc, to jest to, co tam dodałem.

musisz również dodać adres IP komputera CentOS 8, który konfigurujesz jako serwer DNS jako adres nasłuchu. W moim przypadku jest to 192.168.20.20., Dodałem go tam.

na koniec Dołącz linuxhint.lokalne.plik stref z katalogu/ etc/ named /na końcu pliku/etc / named.plik conf z następującym wierszem.

include „/etc/named / linuxhint.lokalne.strefy”;

Teraz uruchom nazwaną usługę za pomocą następującego polecenia:

$ sudo systemctl start nazwana

jak widzisz, usługa o nazwie działa.,

$ sudo systemctl status named

Dodaj również nazwaną usługę do uruchamiania systemu CentOS 8. Tak więc serwer DNS uruchomi się automatycznie przy rozruchu.

$ sudo systemctl włącz nazwane

Jeśli dokonasz jakichkolwiek zmian w pliku konfiguracyjnym serwera DNS po uruchomieniu nazwanej usługi, musisz ponownie uruchomić nazwaną usługę, aby zmiany zaczęły obowiązywać.,

aby ponownie uruchomić nazwaną usługę, uruchom następujące polecenie:

$ sudo systemctl restart nazwany

testowanie serwera DNS:

możesz przetestować serwer nazw DNS za pomocą dig.

aby sprawdzić, czy serwer DNS nasłuchuje na wychodzącym interfejsie sieciowym w następujący sposób:

$ dig @192.168.20.20 linuxhint.local any

Super! Serwer DNS jest dostępny z wychodzącego interfejsu sieciowego CentOS 8.,

serwer nazw DNS jest również dostępny lokalnie dla maszyny CentOS 8.

$ dig @localhost linuxhint.local any

mogę również rozwiązać www.linuxhint.lokalne, jak widać na poniższym zrzucie ekranu.

$ dig @127.0.0.1 www.linuxhint.,lokalny

zmiana adresu serwera DNS interfejsu sieciowego:

teraz możesz zmienić adres serwera DNS swojego interfejsu sieciowego, aby domyślnie używać lokalnego serwera DNS. Sprawdź mój artykuł Konfigurowanie statycznego adresu IP na CentOS 8, aby uzyskać szczegółową instrukcję, jak to zrobić.

jak widać, BIND może rozwiązać nazwy domen internetowych.

BIND może również rozwiązać lokalnie skonfigurowaną domenę linuxhint.,, aby zezwolić na żądania DNS przez zaporę sieciową, Otwórz port serwera DNS 53 za pomocą następującego polecenia:

$ sudo firewall-cmd –add-service=DNS –permanent

aby zmiany weszły w życie, uruchom następujące polecenie:

$ sudo firewall-cmd –Reload

testowanie serwera DNS z innych komputerów:

skonfigurowałem maszynę z systemem Windows 10 w tej samej podsieci sieciowej, aby używała serwera DNS, który właśnie skonfigurowałem maszyna CentOS 8.,

As you can see, the DNS resolution for linuxhint.local sub domains works.

$ nslookup ns.linuxhint.local

$ nslookup support.linuxhint.local

$ nslookup www.linuxhint.local

$ nslookup mail.linuxhint.,local

tak skonfigurujesz BIND 9 serwer DNS na CentOS 8. Dzięki za przeczytanie tego artykułu.