Powrót do listy
Przewiń do zadania

Przygotowanie środowiska

1. Instalacja biblioteki

Na samym początku pobieramy najważniejsze dla nas biblioteki poniższymi komendami:

sudo apt install isc-dhcp-server
sudo apt install net-tools

2. Odczytanie nazwy karty sieciowej

Wywołaj komendę diagnostyczną, aby sprawdzić aktualny identyfikator interfejsu:

ifconfig

Przykładowa odpowiedź komendy to:

eth0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500 inet 192.168.1.100 netmask 255.255.255.0 broadcast 192.168.1.255 ether ca:b7:8d:41:0d:e8 txqueuelen 0 (Ethernet) RX packets 1004 bytes 92530 (92.5 KB) RX errors 0 dropped 0 overruns 0 frame 0 TX packets 875 bytes 1901885 (1.9 MB) TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0

W tym przypadku identyfikator karty siecowej to eth0.

4. Wybranie karty sieciowej w ustawieniach serwera

Aby serwer DHCP poprawnie działał musi wiedzieć na której karcie sieciowej ma działać. Z tego powodu wpiszemy to w odpowiedni plik.

sudo nano /etc/default/isc-dhcp-server

W miejscu INTERFACESv4 wpisujemy nazwę karty sieciowej, którą sprawdzaliśmy wcześniej.

# Podgląd struktury pliku isc-dhcp-server
INTERFACESv4="eth0"Tutaj wprowadzamy nazwę karty dla interfejsu v4. INTERFACESv6=""Tutaj wprowadzamy nazwę karty dla interfejsu v6. (Możemy zostawić puste)

Edytowanie głównego pliku konfiguracyjnego

1. Otworzenie pliku konfiguracyjnego

Główny plik konfiguracyjny dla serwera DHCP znajduje się w lokalizacji: /etc/dhcp/dhcpd.conf, dlatego użyjemy następującej komendy do edytowania tego pliku:

sudo nano /etc/dhcp/dhcpd.conf

2. Edycja pliku

Po otwarciu i edycji najważniejszego fragmentu, skrypt powinien wyglądać jak poniżej.

# Podgląd struktury pliku konfiguracyjnego dhcpd.conf
subnet 192.168.10.0 netmask 255.255.255.0 {Rozpoczęcie zakresu, wpisujemy tutaj adres sieci oraz maskę. range 192.168.10.100 192.168.10.150Zakres dostępnych adresów IP, ważne jest to, że to ma być oddzielone spacją. option routers 8.8.8.8Wpisanie adresów DNS }Zamknięcie zakresu

Dodatkowo w tym pliku można przypisać konretnemu urządzeniowi swój adres IP.

# Podgląd struktury pliku konfiguracyjnego dhcpd.conf
host fantasia {Tutaj rozpoczyna się przypisywanie IP, możemy tutaj ustalić naszą własną nazwę. hardware ethernet 00:00:00:00:00:00Tutaj wpisujemy adres MAC danego urządzenia fixed-address 192.168.10.155Tutaj wpisujemy jaki adres IP ma otrzymać to urządzenie. }Tutaj zamykamy edycję

Wygodne w edycji tego pliku jest to, że wszystko już jest w domyślnej wersji tego skryptu, wystarczy tylko odnaleźć konretny fragment i usunąć hasztagi które znajdują się na początku linijki.

Wprowadzenie zmian i sprawdzenie działania

1. Ustawieni statycznego adresu

Aby serwer DHCP działał poprawnie musimy przede wszystkim na własnym komputerze ustawić taki adres IP aby był zgodny z adresem sieci. Bez tego serwer nie uruchomi się i będą występowały problemy. Do zmiany adresu użyjemy usługi NETPLAN, o której więcej w innej lekcji.

# Przykładowa wersja pliku konfiguracyjnego karty sieciowej
network: ethernets: eth0: dhcp4: false addresses: [192.168.10.1/24] gateway4: 192.168.10.1 nameservers: addresses: [8.8.8.8]

2. Restart usług serwera

Musimy zresetować usługi serwera. Do tego wykorzystamy poniższą komendę:

sudo systemctl restart isc-dhcp-server

3. Sprawdzenie działania serwera

Do sprawdzenia, czy serwer DHCP działa poprawnie wystarczy wpisać komendę:

sudo systemctl status isc-dhcp-server

Jeśli odpowiedź przy statusie będzie na zielono oznacza, że DHCP został poprawnie zrobiony.