Jak stworzyć lokalny serwer DNS w Linuksie za pomocą Bind9 lub dnsmasq – konfiguracja krok po kroku
Linux

Jak stworzyć lokalny serwer DNS w Linuksie za pomocą Bind9 lub dnsmasq – konfiguracja krok po kroku

🌐 Jak stworzyć lokalny serwer DNS w Linuksie za pomocą Bind9 lub dnsmasq – konfiguracja krok po kroku

Lokalny serwer DNS pozwala:

  • przyspieszyć rozwiązywanie nazw,
  • stworzyć własne aliasy domenowe dla serwerów LAN (np. nas.local, dev.lab),
  • filtrować, przekierowywać lub blokować ruch DNS (np. blokada reklam),
  • działać offline w środowiskach testowych.

W tym poradniku pokażę dwa rozwiązania:

  • Bind9 – pełnoprawny, zaawansowany serwer DNS (strefy, rekurencja, forwarding),
  • dnsmasq – lekki i prosty serwer DNS (często używany w domowych routerach, OpenWRT itp.).

🧱 Opcja 1: Konfiguracja lokalnego DNS z Bind9 (Debian/Ubuntu)

📦 Krok 1: Instalacja Bind9

sudo apt update
sudo apt install bind9 bind9-utils -y

⚙️ Krok 2: Plik strefy lokalnej domeny

Załóżmy, że chcesz obsługiwać lokalną domenę lab.local.

Utwórz plik strefy:

sudo nano /etc/bind/db.lab.local

Przykład zawartości:

$TTL 604800
@   IN  SOA lab.local. admin.lab.local. (
            2025080501 ; Serial
            604800     ; Refresh
            86400      ; Retry
            2419200    ; Expire
            604800 )   ; Negative Cache TTL

@   IN  NS  ns.lab.local.
ns  IN  A   192.168.1.1
www IN  A   192.168.1.100
nas IN  A   192.168.1.200

🧭 Krok 3: Zdefiniuj strefę w named.conf.local

sudo nano /etc/bind/named.conf.local

Dodaj:

zone "lab.local" {
    type master;
    file "/etc/bind/db.lab.local";
};

🔄 Krok 4: Restart i sprawdzenie

sudo systemctl restart bind9
sudo named-checkconf
sudo named-checkzone lab.local /etc/bind/db.lab.local

📍 Krok 5: Ustaw klienta (np. w /etc/resolv.conf)

nameserver 127.0.0.1

Teraz zapytanie:

dig nas.lab.local

zwróci IP 192.168.1.200.

Czytaj  Tworzenie kopii zapasowych danych w Linuksie

 

Jak stworzyć lokalny serwer DNS w Linuksie za pomocą Bind9 lub dnsmasq – konfiguracja krok po kroku
Jak stworzyć lokalny serwer DNS w Linuksie za pomocą Bind9 lub dnsmasq – konfiguracja krok po kroku

💡 Bonus: Forwardowanie zapytań do zewnętrznych DNS

W named.conf.options:

forwarders {
    8.8.8.8;
    1.1.1.1;
};

🧱 Opcja 2: Konfiguracja lokalnego DNS z dnsmasq (prostsze)

📦 Krok 1: Instalacja dnsmasq

sudo apt install dnsmasq -y

⚙️ Krok 2: Edycja pliku /etc/dnsmasq.conf

Dodaj:

domain=lab.local
local=/lab.local/
address=/nas.lab.local/192.168.1.200
address=/dev.lab.local/192.168.1.150
listen-address=127.0.0.1

🔄 Krok 3: Restart usługi

sudo systemctl restart dnsmasq

Sprawdź:

dig nas.lab.local @127.0.0.1

✅ Kiedy wybrać Bind9, a kiedy dnsmasq?

Funkcja Bind9 dnsmasq
Pełne strefy DNS
Forwarding DNS
Łatwość konfiguracji
Obsługa DHCP
Filtrowanie nazw, reklamy ✅ (np. z listą hostów)
Wydajność w dużych sieciach

🔒 Bezpieczeństwo

  • Zablokuj port 53 dla świata (jeśli DNS tylko lokalny)
  • Ogranicz listen-address tylko do 127.0.0.1 lub lokalnej sieci
  • W Bind9 możesz dodać reguły ACL

🔁 Inne zastosowania lokalnego DNS

  • nazwy kontenerów Docker/Kubernetes w sieci lokalnej,
  • lokalne laboratoria testowe,
  • środowiska offline (np. przemysł, wojsko, R&D),
  • lokalna kontrola nad DNS bez zależności od zewnętrznych serwerów.

🏁 Podsumowanie

Stworzenie lokalnego serwera DNS:
✔️ przyspiesza rozwiązywanie nazw,
✔️ pozwala tworzyć własne aliasy i testowe domeny,
✔️ działa w środowiskach bez internetu,
✔️ zapewnia lepszą kontrolę nad ruchem DNS.

 

Polecane wpisy
Tworzenie bootowalnego USB z Ubuntu – krok po kroku
Tworzenie bootowalnego USB z Ubuntu – krok po kroku

Tworzenie bootowalnego USB z Ubuntu – krok po kroku Bootowalny pendrive z Ubuntu to podstawowe narzędzie do instalacji systemu Linux, Czytaj dalej

Podstawowe polecenia konsoli w Linuksie
Podstawowe polecenia konsoli w Linuksie

Podstawowe polecenia konsoli w Linuksie: przewodnik dla początkujących Linux oferuje potężny interfejs wiersza poleceń, który umożliwia użytkownikom sterowanie systemem, zarządzanie Czytaj dalej

Marek "Netbe" Lampart Inżynier informatyki Marek Lampart to doświadczony inżynier informatyki z ponad 25-letnim stażem w zawodzie. Specjalizuje się w systemach Windows i Linux, bezpieczeństwie IT, cyberbezpieczeństwie, administracji serwerami oraz diagnostyce i optymalizacji systemów. Na netbe.pl publikuje praktyczne poradniki, analizy i instrukcje krok po kroku, pomagając administratorom, specjalistom IT oraz zaawansowanym użytkownikom rozwiązywać realne problemy techniczne.