This is an old revision of the document!
Table of Contents
Práctica 01: Router Linux entre dos LAN
Módulo: Planificación y Administración de Redes · Curso: 1.º ASIR · Versión: V_26_11
Esta práctica configura una máquina Debian como router entre dos redes internas. No hay Internet, NAT, DNS ni firewall: el objetivo es comprender el direccionamiento, la puerta de enlace y el reenvío IPv4.
Regla de trabajo: se usa NetworkManager y ``nmcli``. No se deben crear archivos ``.network`` de systemd-networkd para estas mismas interfaces. Antes de empezar, crea una instantánea de las tres máquinas virtuales.
1. Objetivos
- Configurar dos redes IPv4 independientes en un router Linux.
- Asignar una dirección estática y una puerta de enlace a cada cliente.
- Activar el reenvío IPv4 y comprobar el paso de paquetes entre redes.
2. Escenario
| Máquina | Adaptadores VirtualBox | Direcciones previstas |
|---|---|---|
| Router | Adaptador 1: Red interna LAN10 Adaptador 2: Red interna LAN20 | ``enp0s3``: 192.168.10.1/24 ``enp0s8``: 192.168.20.1/24 |
| Cliente LAN10 | Adaptador 1: Red interna LAN10 | ``enp0s3``: 192.168.10.10/24 Gateway: 192.168.10.1 |
| Cliente LAN20 | Adaptador 1: Red interna LAN20 | ``enp0s3``: 192.168.20.10/24 Gateway: 192.168.20.1 |
No conectes ninguna máquina a NAT. Si el ping a ``1.1.1.1`` falla, es correcto: no existe una interfaz WAN ni NAT.
3. Preparación de VirtualBox
Con las máquinas apagadas, abre Configuración > Red. Activa Cable conectado en todas las tarjetas.
- En el router, conecta el adaptador 1 a la red interna ``LAN10`` y el adaptador 2 a ``LAN20``.
- En Cliente LAN10, conecta el único adaptador a ``LAN10``.
- En Cliente LAN20, conecta el único adaptador a ``LAN20``.
Arranca las tres máquinas y comprueba los nombres reales de las interfaces:
ip -br link nmcli device status
``ip -br link`` muestra los nombres y el estado de las tarjetas. ``nmcli device status`` debe indicar que NetworkManager las administra; no deben aparecer como ``unmanaged``. Sustituye ``enp0s3`` y ``enp0s8`` por los nombres reales si fueran distintos.
4. Configuración del router
Ejecuta en la VM Router:
sudo nmcli connection add type ethernet ifname enp0s3 con-name Router-LAN10 ipv4.method manual ipv4.addresses 192.168.10.1/24 ipv4.never-default yes sudo nmcli connection add type ethernet ifname enp0s8 con-name Router-LAN20 ipv4.method manual ipv4.addresses 192.168.20.1/24 ipv4.never-default yes sudo nmcli connection up Router-LAN10 sudo nmcli connection up Router-LAN20
- ``ipv4.method manual`` configura IP estática.
- ``/24`` equivale a máscara 255.255.255.0.
- ``ipv4.never-default yes`` evita que una LAN se convierta en ruta por defecto.
- ``connection up`` activa el perfil creado.
Comprueba el resultado:
ip -4 -br address ip route
Deben aparecer 192.168.10.0/24 y 192.168.20.0/24 como redes directamente conectadas. No debe existir una ruta ``default``.
5. Activar el reenvío IPv4
Linux no reenvía paquetes entre interfaces por defecto. Actívalo en el router:
sudo sysctl -w net.ipv4.ip_forward=1 sysctl net.ipv4.ip_forward
El segundo comando debe mostrar el valor ``1``.
Para conservarlo tras reiniciar:
sudo nano /etc/sysctl.d/99-router-lab.conf
Escribe:
net.ipv4.ip_forward=1
Guarda y aplica:
sudo sysctl --system
6. Cliente LAN10
Ejecuta en Cliente LAN10:
sudo nmcli connection add type ethernet ifname enp0s3 con-name Cliente-LAN10 ipv4.method manual ipv4.addresses 192.168.10.10/24 ipv4.gateway 192.168.10.1 sudo nmcli connection up Cliente-LAN10 ip -4 -br address ip route
La puerta de enlace ``192.168.10.1`` es la primera tarjeta del router. ``ip route`` debe mostrar ``default via 192.168.10.1``.
7. Cliente LAN20
Ejecuta en Cliente LAN20:
sudo nmcli connection add type ethernet ifname enp0s3 con-name Cliente-LAN20 ipv4.method manual ipv4.addresses 192.168.20.10/24 ipv4.gateway 192.168.20.1 sudo nmcli connection up Cliente-LAN20 ip -4 -br address ip route
La puerta de enlace ``192.168.20.1`` es la segunda tarjeta del router. ``ip route`` debe mostrar ``default via 192.168.20.1``.
8. Pruebas
En Cliente LAN10:
ping -c 3 192.168.10.1 ping -c 3 192.168.20.10 ip route get 192.168.20.10
En Cliente LAN20:
ping -c 3 192.168.20.1 ping -c 3 192.168.10.10
Los pings a la puerta de enlace verifican cada LAN. Los pings al cliente de la otra red verifican el router. ``ip route get 192.168.20.10`` debe indicar que Cliente LAN10 envía el tráfico mediante ``192.168.10.1``.
En el router, opcionalmente observa los paquetes mientras un cliente hace ping:
sudo tcpdump -ni any icmp
Detén la captura con ``Ctrl+C``.
9. Entrega
- Captura de ``ip -4 -br address`` e ``ip route`` en las tres máquinas.
- Dos pings correctos entre Cliente LAN10 y Cliente LAN20.
- Captura de ``sysctl net.ipv4.ip_forward`` con valor ``1``.
