DHCP
Pas 1: Instal·lar el servidor DHCP a Rocky Linux
Primer, hem d’instal·lar el paquet del servidor DHCP. Pots fer-ho executant la següent comanda:
sudo dnf install dhcp-server -y
[11:29:18][~][vagrant@router]-$ sudo dnf install dhcp-server -y
OpenLogic Public Repo for rocky 9 10 kB/s | 5.3 kB 00:00
Rocky Linux 9 - BaseOS 2.5 MB/s | 2.3 MB 00:00
Rocky Linux 9 - AppStream 5.7 MB/s | 8.0 MB 00:01
Rocky Linux 9 - Extras 38 kB/s | 15 kB 00:00
Dependencies resolved.
==============================================================================================================================================================================================================================================
Package Architecture Version Repository Size
==============================================================================================================================================================================================================================================
Installing:
dhcp-server x86_64 12:4.4.2-19.b1.el9 baseos 1.2 M
Transaction Summary
==============================================================================================================================================================================================================================================
Install 1 Package
Total download size: 1.2 M
Installed size: 3.9 M
Downloading Packages:
dhcp-server-4.4.2-19.b1.el9.x86_64.rpm 3.9 MB/s | 1.2 MB 00:00
----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
Total 2.4 MB/s | 1.2 MB 00:00
Running transaction check
Transaction check succeeded.
Running transaction test
Transaction test succeeded.
Running transaction
Preparing : 1/1
Running scriptlet: dhcp-server-12:4.4.2-19.b1.el9.x86_64 1/1
Installing : dhcp-server-12:4.4.2-19.b1.el9.x86_64 1/1
Running scriptlet: dhcp-server-12:4.4.2-19.b1.el9.x86_64 1/1
Verifying : dhcp-server-12:4.4.2-19.b1.el9.x86_64 1/1
Installed:
dhcp-server-12:4.4.2-19.b1.el9.x86_64
Complete!
Pas 2: Configurar l’arxiu de configuració DHCP
L’arxiu principal de configuració del servidor DHCP és /etc/dhcp/dhcpd.conf. Edita aquest arxiu per configurar el rang d’adreces IP que el servidor DHCP assignarà als clients.
[11:29:18][~][vagrant@router]-$ sudo vim /etc/dhcp/dhcpd.conf
# Configuració d'opcions globals del DHCP
default-lease-time 600;
max-lease-time 7200;
# Configuració de la subxarxa
subnet 192.168.1.0 netmask 255.255.255.0 {
range 192.168.1.10 192.168.1.100;
option routers 192.168.1.1;
option subnet-mask 255.255.255.0;
option domain-name-servers 8.8.8.8, 8.8.4.4;
}
Pas 3: Configurar la interfície de xarxa
Una vegada dhcp configurat, és hora de configurar les interfícies de xarxa. Al ser un router, necessitem dues, una en una xarxa externa, i una a la xarxa interna. La xarxa externa ja es configura automàticament amb el dhcp de la xarxa externa, així que hem de configurar l’IP de l’interfície que funciona amb la xarxa interna. Per fer això, escrivim aquesta comanda, canviant el nom de l’interfície i la IP que volem utilitzar.
[09:17:49][~][vagrant@router]-$ sudo nmcli connection delete 'System enp0s9'
[09:17:49][~][vagrant@router]-$ sudo nmcli connection add type ethernet ifname enp0s9 con-name enp0s9 ipv4.addresses 172.25.2xx.12/16 ipv4.method manual
[09:17:49][~][vagrant@router]-$ sudo nmcli connection up enp0s9
[11:29:18][~][vagrant@router]-$ sudo nmcli connection add type ethernet ifname enp0s8 con-name enp0s8 ipv4.addresses 192.168.1.1/24 ipv4.method manual
Connection 'enp0s8' (b9668883-5183-45f8-bf14-cfd8148d7f33) successfully added.
sudo nmcli connection up enp0s8
[11:29:30][~][vagrant@router]-$ sudo nmcli connection up enp0s8
Connection successfully activated (D-Bus active path: /org/freedesktop/NetworkManager/ActiveConnection/12)
Pas 4 : Habilitar y encendre dhcp
Ara hem d’abilitar el servei de dhcp al router.
[11:29:38][~][vagrant@router]-$ sudo systemctl enable dhcpd
Created symlink /etc/systemd/system/multi-user.target.wants/dhcpd.service → /usr/lib/systemd/system/dhcpd.service.
Per ùltim, l’encenem
[11:31:06][~][vagrant@router]-$ sudo systemctl start dhcpd
Pas 5 : Habilitar enrutació
Per aconseguir que pugui haver connexió entre la xarxa local, i xarxes externes, hem de configurar el router perquè pugui fer forwarding. Això ho fem escrivint aquesta línia en aquest fitxer.
[11:32:27][~][vagrant@router]-$ sudo vim /etc/sysctl.conf
net.ipv4.ip_forward = 1
Ens assegurem de que s’ha aplicat el canvi
[11:33:11][~][vagrant@router]-$ sudo sysctl -p
vm.swappiness = 10
net.ipv4.ip_forward = 1
Pas 6 : Configurar NAT
Ara hem de configurar NAT per poder fer una connexió entre altres xarxes sense necessitat de configuracions externes
[11:33:28][~][vagrant@router]-$ sudo iptables -t nat -A POSTROUTING -o enp0s9 -j MASQUERADE
[11:34:20][~][vagrant@router]-$ sudo iptables-save | sudo tee /etc/sysconfig/iptables
# Generated by iptables-save v1.8.10 (nf_tables) on Tue Nov 19 11:34:27 2024
*nat
:PREROUTING ACCEPT [0:0]
:INPUT ACCEPT [0:0]
:OUTPUT ACCEPT [0:0]
:POSTROUTING ACCEPT [0:0]
-A POSTROUTING -o enp0s9 -j MASQUERADE
COMMIT
# Completed on Tue Nov 19 11:34:27 2024
Pas 7 : Afegir ruta en el teu pc
Hem d’afegir la ruta de la xarxa que hem creat, al nostre PC. D’aquesta manera, podrem connectar-nos
sudo ip route add 192.168.1.0/24 via 172.25.199.254
Pas 8: Configuració Firewall
Per un bon funcionament de les connexions entrants i sortints, hem de permetre les connexions a través del firewall
[11:47:32][~][vagrant@router]-$ sudo firewall-cmd --state
running
[11:48:51][~][vagrant@router]-$ sudo firewall-cmd --add-icmp-block-inversion
success
[11:49:05][~][vagrant@router]-$ sudo firewall-cmd --add-service=dhcp --zone=public --permanent
success
[11:49:11][~][vagrant@router]-$ sudo firewall-cmd --add-rich-rule='rule protocol value="icmp" accept' --permanent
success
[11:49:15][~][vagrant@router]-$ sudo firewall-cmd --reload
success
[11:49:21][~][vagrant@router]-$ sudo firewall-cmd --zone=public --add-interface=enp0s8 --permanent
The interface is under control of NetworkManager, setting zone to 'public'.
success
[11:49:26][~][vagrant@router]-$ sudo firewall-cmd --zone=public --add-masquerade --permanent
success
[11:49:34][~][vagrant@router]-$ sudo firewall-cmd --reload
success
Amb aquesta configuració, tot hauria de funcionar perfectament