Ubuntu1Ubuntu1

În urmă cu aproape 1 an mi-am luat primul Raspberry Pi și am început să fac diverse proiecte bazate pe acesta. De data aceasta, mi-am propus să fac un server DHCP dedicat pentru serverele Raspberry Pi.

În acest tutorial vă voi prezenta pas cu pas cum puteți configura un server DHCP pe Ubuntu Server.

Cum funcționează DHCP?

Când computerul pornește, acesta nu are o adresă IP (presupunând că nu are configurată o adresă IP statică, pe care majoritatea dispozitivelor nu o au). clientul DHCP trimite o interogare în ce privește informația necesară la serverul DHCP. Serverul DHCP gestionează o rezervă de adrese IP și informații despre configurarea parametrilor clientului, ca gateway-ul implicit, numele domeniului, serverul DNS, alte servere ca serverul de timp, ș.a.m.d. La primirea unei cereri valide, serverul atribuie calculatorului o adresă de IP, un contract de leasing (perioada de validitate a alocării respective), precum și alți parametri de configurare de IP, cum ar fi masca de subrețea și gateway-ul implicit . Interogarea este de obicei inițiată imediat după bootare, și trebuie să fie completată, înainte ca clientul să poată iniția comunicarea IP cu alte gazde.

Care sunt metodele de alocare DHCP?

În funcție de implementare, serverul DHCP poate avea trei metode de alocare a adreselor IP:
alocare dinamică: Un administrator de rețea atribuie o serie de adrese IP la DHCP, și fiecare computer din LAN este configurat să ceară o adresa de IP de la serverul DHCP în timpul inițializării de rețea. Procesul de cerere și aprobare folosește un concept ca un contract de leasing pe o perioada determinată, permițând serverului DHCP să revendice (și să realoce) adrese IP disponibile (refolosirea dinamică de adrese de IP).

alocare automată: Serverul DHCP alocă în permanență o adresă de IP disponibilă, din gama definită de administrator, către un client. Acest proces este asemănător alocării dinamice, dar serverul DHCP păstrează un tabel cu alocările de IP anterioare, astfel încât să poată atribui preferențial pentru un client aceeași adresă de IP pe care acesta a avut-o anterior.

alocare statică: Serverul DHCP alocă adresa de IP în baza unui tabel cu perechi adresa MAC/adresa IP, acestea fiind completate manual (probabil de către administratorul rețelei). Numai clienții care au adresa MAC lisată în acest tabel vor primi o adresă de IP. Această caracteristică (care nu e suportată de orice router) este denumită Static DHCP Assignment (de către DD-WRT), fixed-address (de către documentația dhcpd), DHCP reservation sau Static DHCP (de către Cisco/Linksys), și IP reservation sau MAC/IP binding (de către diverși alți producători de routere).

De ce ai nevoie?

Pentru acest proiect veți avea nevoie de următoarele echipamente:

– 1 x Raspberry Pi Compute Module 4 cu 8 GB RAM
– 1 x placă cu Dual Gigabit Ethernet pentru Raspberry Pi Compute Module 4
– 1 x alimentator 24Vdc (sau cu o tensiune corespunzătoare pentru placa Dual Gigabit Ethernet pentru Raspberry Pi Compute Module 4)
– 1 x card micro SD / stick USB de 32 GB sau un SSD extern
– 1 x tastatură
– 1 x monitor
– 1 x cablu HDMI

Etapa de pregătire

Instalarea sistemului de operare

În cazul în care Raspberry Pi Compute Module 4 are memorie internă eMMC pentru a instala sistemul de operare urmați instrucțiunile de aici, altfel poți urma instrucțiunile pentru instalarea pe card MicroSD, stick de memorie sau SSD, urmând instrucțiunile de aici, alegând ultima versiune de Ubuntu Server pe 64 de biți.

Activarea protocolului SSH

Apoi activezi protocolul SSH, urmând instrucțiunile de aici. La acest pas veți avea nevoie de monitor, tastatură și cablu HDMI.

Configurarea serverului DHCP

Instalarea serverului DHCP

Acum că sistemul de operare este instalat și actualizat, vă puteți conecta prin SSH și instala serverul DHCP folosind comanda:

sudo apt install isc-dhcp-server

Backup

Fișierul de configurare al serverului DHCP se află în /etc/dhcp/dhcpd.conf.

Înainte de a începe configurarea serverului DHCP, este recomandat să se facă un backup al fișierului de configurare. Puteți face asta cu comanda cp sau mv:

sudo cp /etc/dhcp/dhcpd.conf{,.backup}

Crearea unui nou fișier de configurare

Dacă atunci când ați făcut backupul fișierului de configurare ați folosit comanda move (mv), puteți crea un nou fișier de configurare de la zero, folosind comanda:

sudo nano /etc/dhcp/dhcpd.conf

Opțiunile de configurare din acest fișier depind de complexitatea rețelei.

Alocarea aleatorie a adreselor IP

În general serverele DHCP alocă adrese IP în mod aleatoriu, dintr-o plajă de IP-uri prestabilită, pentru asta fișierul de configurare va arăta astfel:

# a simple /etc/dhcp/dhcpd.conf
default-lease-time 600;
max-lease-time 7200;
authoritative;
 
subnet 192.168.1.0 netmask 255.255.255.0 {
 range 192.168.1.100 192.168.1.200;
 option routers 192.168.1.254;
 option domain-name-servers 192.168.1.1, 192.168.1.2;
#option domain-name "mydomain.example";
}

Conform fișierului de configurare de mai sus:

  • timpul de rezervare a unei adrese IP de către un dispozitiv este cuprins între 600 secunde (10 minute) și maxim 7200 secunde (2 ore).
  • acest server DHCP este în mod oficial serverul rețelei locale. (indicat de parametrul authoritative).
  • Serverul DHCP va aloca dispozitivelor adrese IP cuprinse în plaja 192.168.1.100 – 192.168.1.200.
  • Serverul va aloca, de asemenea, clienților gatewayul 192.168.1.254 și DNS-urile 192.168.1.1 și 192.168.1.2.

Poate fi inclus și un nume de domeniu.

Rezervarea adreselor IP

Dacă doriți ca anumiți să ia doar o singură adresă IP de fiecare dată o puteți rezerva pe baza adresei MAC a clientului. Pentru a afla adresa MAC a unui dispozitiv, urmați instrucțiunile de aici.

După ce ați aflat adresa MAC a clientului, introduceți-o în fișierul de configurare DHCP:

host archmachine {
hardware ethernet e0:91:53:31:af:ab;
fixed-address 192.168.1.20;
}

Astfel adresa IP 192.168.1.20 va fi rezervată dispozitivului cu adresa MAC e0:91:53:31:af:ab.

Fișierul de configurare va arăta așa:

# a simple /etc/dhcp/dhcpd.conf
default-lease-time 600;
max-lease-time 7200;
authoritative;
 
subnet 192.168.1.0 netmask 255.255.255.0 {
 range 192.168.1.100 192.168.1.200;
 option routers 192.168.1.254;
 option domain-name-servers 192.168.1.1, 192.168.1.2;
#option domain-name "mydomain.example";
}

host archmachine {
hardware ethernet e0:91:53:31:af:ab;
fixed-address 192.168.1.20;
}

Asocierea serverului DHCP cu o anumită interfață / port rețea

Serverul DHCP poate funcționa pe mai multe interfețe / porturi de rețea, astfel că va trebui să asociați un port de rețea pentru serverul DHCP creat.

Fișierul de configurare pentru asocierea serverului cu interfața de rețea se află în /etc/default/isc-dhcp-server.

Deschideți fișierul pentru a îl edita și introduceți interfața pe care doriți să funcționeze serverul, în cazul meu este eth1.

INTERFACESv4="eth1"

Restartarea serverului DHCP

Acum că ați finalizat configurarea serverului, restartați-l pentru a se aplica setările, folosind comanda:

sudo systemctl restart isc-dhcp-server.service

Verificarea statusului serverului DHCP

Puteți verifica oricând statusul serverului DHCP folosind comanda:

sudo systemctl status isc-dhcp-server.service

De Madalin

Lasă un răspuns

Adresa ta de email nu va fi publicată. Câmpurile obligatorii sunt marcate cu *