Wyszukiwanie w witrynie

Jak zainstalować serwer DHCP w CentOS, RHEL i Fedorze


DHCP (Protokół dynamicznej konfiguracji hosta) to protokół sieciowy, który umożliwia serwerowi automatyczne przypisywanie adresu IP i udostępnianie klientowi w sieci innych powiązanych parametrów konfiguracji sieci, od predefiniowaną pulę adresów IP.

Oznacza to, że za każdym razem, gdy klient (podłączony do sieci) uruchamia się, otrzymuje „dynamiczny” adres IP, w przeciwieństwie do „statycznego” adresu IP, który nigdy się nie zmienia. Adres IP przypisany klientowi DHCP przez serwer DHCP jest w „dzierżawie”, czas dzierżawy może się różnić w zależności od tego, jak długo klient będzie prawdopodobnie potrzebował połączenia lub konfiguracji DHCP.

W tym samouczku omówimy, jak zainstalować i skonfigurować serwer DHCP w dystrybucjach CentOS/RHEL i Fedora.

Konfiguracja środowiska testowego

Do tej konfiguracji użyjemy następującego środowiska testowego.

DHCP Server - CentOS 7 
DHCP Clients - Fedora 25 and Ubuntu 16.04

Jak działa DHCP?

Zanim przejdziemy dalej, wyjaśnijmy krótko, jak działa DHCP:

  • Gdy komputer kliencki (skonfigurowany do korzystania z DHCP) i podłączony do sieci jest włączony, przekazuje komunikat DHCPDISCOVER do serwera DHCP.
  • A gdy serwer DHCP odbierze komunikat żądania DHCPDISCOVER, odpowiada komunikatem DHCPOFFER.
  • Następnie klient otrzymuje komunikat DHCPOFFER i wysyła do serwera komunikat DHCPREQUEST, wskazując, że jest przygotowany na uzyskanie konfiguracji sieci oferowanej w ramach DHCPOFFER mocny> przekaz.
  • Na koniec serwer DHCP odbiera od klienta komunikat DHCPREQUEST i wysyła komunikat DHCPACK pokazujący, że klient może teraz używać przypisanego mu adresu IP .

Krok 1: Instalacja serwera DHCP w CentOS

1. Instalacja DCHP jest dość prosta, wystarczy uruchomić poniższe polecenie.

yum -y install dhcp

Ważne: zakładając, że do systemu jest podłączony więcej niż jeden interfejs sieciowy, ale chcesz, aby serwer DHCP był uruchamiany tylko na jednym z interfejsów, ustaw serwer DHCP aby uruchomić tylko na tym interfejsie w następujący sposób.

2. Otwórz plik /etc/sysconfig/dhcpd, dodaj nazwę konkretnego interfejsu do listy DHCPDARGS, np. jeśli interfejs to eth0, następnie dodaj:

DHCPDARGS=eth0

Zapisz plik i wyjdź.

Krok 2: Konfiguracja serwera DHCP w CentOS

3. Na początek, aby skonfigurować serwer DHCP, pierwszym krokiem jest utworzenie pliku konfiguracyjnego dhcpd.conf, a głównym plikiem konfiguracyjnym DHCP jest zwykle / etc/dhcp/dhcpd.conf (domyślnie pusty), przechowuje wszystkie informacje sieciowe wysyłane do klientów.

Istnieje jednak przykładowy plik konfiguracyjny /usr/share/doc/dhcp*/dhcpd.conf.sample, który jest dobrym punktem wyjścia do konfiguracji serwera DHCP.

W pliku konfiguracyjnym DHCP zdefiniowane są dwa typy instrukcji:

  • parametry – określają, jak wykonać zadanie, czy wykonać zadanie lub jakie opcje konfiguracji sieci wysłać do klienta DHCP.
  • deklaracje – określ topologię sieci, zdefiniuj klientów, zaoferuj adresy klientom lub zastosuj grupę parametrów do grupy deklaracji.

Dlatego zacznij od skopiowania przykładowego pliku konfiguracyjnego jako głównego pliku konfiguracyjnego w następujący sposób:

cp /usr/share/doc/dhcp-4.2.5/dhcpd.conf.example /etc/dhcp/dhcpd.conf 

4. Teraz otwórz główny plik konfiguracyjny i zdefiniuj opcje serwera DHCP:

vi /etc/dhcp/dhcpd.conf 

Zacznij od ustawienia następujących parametrów globalnych, które będą miały zastosowanie do wszystkich podsieci (określ wartości, które mają zastosowanie w Twoim scenariuszu) u góry pliku:

option domain-name "tecmint.lan";
option domain-name-servers ns1.tecmint.lan, ns2.tecmint.lan;
default-lease-time 3600; 
max-lease-time 7200;
authoritative;

5. Teraz zdefiniuj podsieć; w tym przykładzie skonfigurujemy DHCP dla sieci LAN 192.168.56.0/24 (pamiętaj, aby użyć parametrów, które dotyczą Twojego scenariusza):

subnet 192.168.56.0 netmask 255.255.255.0 {
        option routers                  192.168.56.1;
        option subnet-mask              255.255.255.0;
        option domain-search            "tecmint.lan";
        option domain-name-servers      192.168.56.1;
        range   192.168.56.10   192.168.56.100;
        range   192.168.56.120  192.168.56.200;
}

Krok 3: Przypisz statyczny adres IP do klienta DHCP

Możesz przypisać statyczny adres IP do konkretnego komputera klienckiego w sieci, wystarczy zdefiniować poniższą sekcję w pliku /etc/dhcp/dhcpd.conf, w której musisz wyraźnie określić jego adresy MAC i stałą IP do przypisania:

host ubuntu-node {
	 hardware  ethernet 00:f0:m4:6y:89:0g;
	 fixed-address 192.168.56.105;
 }

host fedora-node {
	 hardware  ethernet 00:4g:8h:13:8h:3a;
	 fixed-address 192.168.56.110;
 }

Zapisz plik i zamknij go.

Uwaga: możesz sprawdzić lub wyświetlić adres MAC systemu Linux za pomocą następującego polecenia.

ifconfig -a eth0 | grep HWaddr

6. Teraz uruchom na ten czas usługę DHCP i włącz ją, aby uruchamiała się automatycznie przy następnym uruchomieniu systemu, używając następujących poleceń:

---------- On CentOS/RHEL 7 ---------- 
systemctl start dhcpd
systemctl enable dhcpd

---------- On CentOS/RHEL 6 ----------
service dhcpd start
chkconfig dhcpd on

7. Następnie nie zapomnij zezwolić na usługę DHCP (demon DHCPPD nasłuchuje na porcie 67/UDP), jak poniżej:

---------- On CentOS/RHEL 7 ----------
firewall-cmd --add-service=dhcp --permanent 
firewall-cmd --reload 

---------- On CentOS/RHEL 6 ----------
iptables -A INPUT -p tcp -m state --state NEW --dport 67 -j ACCEPT
service iptables save

Krok 4: Konfiguracja klientów DHCP

8. Teraz możesz skonfigurować swoich klientów w sieci tak, aby automatycznie otrzymywali adresy IP z serwera DHCP. Zaloguj się na komputerze klienckim i zmodyfikuj plik konfiguracyjny interfejsu Ethernet w następujący sposób (nie podawaj nazwy/numeru interfejsu):

vi /etc/sysconfig/network-scripts/ifcfg-eth0

Dodaj poniższe opcje:

DEVICE=eth0
BOOTPROTO=dhcp
TYPE=Ethernet
ONBOOT=yes

Zapisz plik i wyjdź.

9. Ustawienia możesz także przeprowadzić za pomocą GUI na komputerze stacjonarnym, ustaw Metodę na Automatyczną (DHCP), jak pokazano na zrzucie ekranu poniżej (komputer stacjonarny Ubuntu 16.04).

10. Następnie zrestartuj usługi sieciowe w następujący sposób (ewentualnie możesz zrestartować system):

---------- On CentOS/RHEL 7 ----------
systemctl restart network

---------- On CentOS/RHEL 6 ----------
service network restart

W tym momencie, jeśli wszystkie ustawienia były prawidłowe, Twoi klienci powinni automatycznie otrzymywać adresy IP z serwera DHCP.

Możesz także przeczytać:

  1. Jak zainstalować i skonfigurować wieloadresowy serwer DHCP ISC w systemie Debian Linux
  2. 10 przydatnych poleceń „IP” do konfiguracji interfejsów sieciowych

W tym samouczku pokazaliśmy, jak skonfigurować serwer DHCP w RHEL/CentOS. Skorzystaj z poniższego formularza komentarza, aby nam odpisać. W nadchodzącym artykule pokażemy, jak skonfigurować serwer DHCP w Debianie/Ubuntu. Do tego czasu zawsze pozostawaj w kontakcie z TecMint.