Łapka LogoŁapka Infa
🌐
INF.02

Linux: Serwer DHCP i DNS

Zbuduj kręgosłup sieci lokalnej. Instalacja isc-dhcp-server oraz BIND9 na systemach opartych na Debianie krok po kroku.

Linux: Usługi DHCP i DNS

Zarządzanie siecią w Windows Server wyklikuje się przyjemnie w okienkach, ale egzaminy CKE potrafią rzucić pod nogi czystego Linuxa i polecenie: "Zainstaluj i skonfiguruj serwer DHCP przydzielający adresy od .100 do .200, a następnie postaw serwer DNS dla domeny egzamin.local". Na początku wygląda to jak czarna magia – wszystko opiera się o konsolę i edycję plików tekstowych. Krok po kroku rozszyfrujemy ten proces, byś na egzaminie z zamkniętymi oczami konfigurował te usługi.

(Poradnik bazuje na Debianie/Ubuntu – domyślnym standardzie w szkołach).

1. Serwer DHCP (isc-dhcp-server)

DHCP to automat rozdający adresy IP każdemu urządzeniu, które podepnie się do switcha/WiFi. Bez niego musiałbyś chodzić do każdego telefonu w firmie i wpisywać mu IP ręcznie.

Krok 1: Instalacja

Zaloguj się jako root (su - lub przedrostek sudo).

apt-get update
apt-get install isc-dhcp-server

Krok 2: Wybór karty sieciowej

Musisz powiedzieć serwerowi, którą kartą (kabelem) ma wypluwać te adresy. W nowoczesnym Linuxie karty mają nazwy jak enp0s3 (zamiast starego eth0). Sprawdź ją wpisując ip a. Edytujemy plik: nano /etc/default/isc-dhcp-server Znajdź linijkę INTERFACESv4="" i dopisz do środka swoją kartę: INTERFACESv4="enp0s3"

Krok 3: Magiczna Konfiguracja Puli

Wchodzimy do głównego pliku konfiguracyjnego: nano /etc/dhcp/dhcpd.conf (Możesz zjechać na sam dół, puste miejsce to Twój przyjaciel). Tworzymy tzw. podsieć i podajemy zasady:

subnet 192.168.1.0 netmask 255.255.255.0 {
    # Zasięg rozdawania adresów (od .100 do .200)
    range 192.168.1.100 192.168.1.200;
    
    # Brama domyślna dla klientów (adres Twojego routera/serwera)
    option routers 192.168.1.1;
    
    # Adres serwera DNS, z którego będą korzystać klienci
    option domain-name-servers 8.8.8.8;
}

Pułapka CKE 🪤 (Rezerwacja adresu po MAC): Często na arkuszu jest wymóg: "Drukarka o adresie MAC 00:11:22... ma zawsze dostawać ten sam adres .50". Zaraz pod klamrą subnet dodajesz:

host drukarka {
    hardware ethernet 00:11:22:33:44:55;
    fixed-address 192.168.1.50;
}

Krok 4: Restart usługi

Po każdej zmianie tekstu, serwer musi wczytać to od nowa: systemctl restart isc-dhcp-server Jeśli komenda wykona się w ciszy – gratulacje! Twój serwer rozdaje adresy.


2. Serwer DNS (bind9)

DNS to "Książka Telefoniczna" internetu. Zamienia ludzkie nazwy (np. google.pl) na numery IP komputerów (np. 142.250.180.1). Na CKE często musisz założyć "wewnętrzną" strefę o nazwie firmy, np. firma.local.

Krok 1: Instalacja

apt-get install bind9 bind9utils

Krok 2: Deklaracja nowej strefy

Zamiast wrzucać wszystko do jednego pliku, autorzy w BINDzie to podzielili. Najpierw mówimy systemowi: "Mamy nową stronę www!". Edytujemy plik: nano /etc/bind/named.conf.local

zone "firma.local" {
    type master;
    # Wskazujemy mu plik szczegółów, który zaraz stworzymy!
    file "/etc/bind/db.firma"; 
};

Krok 3: Wpisanie szczegółów (Rekordy DNS)

Kopiujemy domyślny, pusty szablon, żeby nie pisać go z palca: cp /etc/bind/db.empty /etc/bind/db.firma Wchodzimy do niego: nano /etc/bind/db.firma

Szukamy miejsca na dole pod słowem NS i dodajemy nasze rekordy:

  • Rekord A (Host): Kojarzy Nazwę bezpośrednio z IP (najpopularniejszy!)
  • Rekord CNAME (Alias): Przekierowuje jedną nazwę na drugą (np. www -> rekord główny).
; Główny wpis (firma.local. -> 192.168.1.10)
@       IN      A       192.168.1.10

; Wpis www.firma.local. wskazujący pod ten sam adres!
www     IN      A       192.168.1.10

; Rekord dla serwera FTP (ftp.firma.local. -> 192.168.1.20)
ftp     IN      A       192.168.1.20

Restart: systemctl restart bind9. Zrozumienie tych kilku linijek ratuje ogromną paczkę punktów. Linux przestaje być groźny, gdy widzisz, że sprowadza się do wyedytowania linijki tekstu i wpisania restartu!