Reglas-Rutas-Red
Primero comprobamos el estado del demonio que configura la red.
sudo systemctl status route-rules.service
root@vader:~# sudo systemctl status route-rules.service
● route-rules.service - Configurar reglas de enrutamiento
Loaded: loaded (/etc/systemd/system/route-rules.service; enabled; vendor preset: enabled)
Active: active (exited) since Fri 2024-10-18 19:55:21 CEST; 2s ago
Process: 830285 ExecStart=/usr/local/bin/route-rules.sh (code=exited, status=0/SUCCESS)
Main PID: 830285 (code=exited, status=0/SUCCESS)
CPU: 15ms
oct 18 19:55:21 vader systemd[1]: Starting Configurar reglas de enrutamiento...
oct 18 19:55:21 vader route-rules.sh[830286]: RTNETLINK answers: File exists
oct 18 19:55:21 vader route-rules.sh[830287]: RTNETLINK answers: File exists
oct 18 19:55:21 vader route-rules.sh[830288]: RTNETLINK answers: File exists
oct 18 19:55:21 vader route-rules.sh[830289]: RTNETLINK answers: File exists
oct 18 19:55:21 vader systemd[1]: Finished Configurar reglas de enrutamiento.
root@vader:~#
Comprobamos la existencia del script.
sudo nano /usr/local/bin/route-rules.sh
ls -l /usr/local/bin/route-rules.sh
Y si existe el script pero el demonio no existe hay que crearlo y activarlo.
Modificamos permisos del script.
sudo chmod +x /usr/local/bin/route-rules.sh
Creamos el servicio.
sudo nano /etc/systemd/system/route-rules.service
Añadimos lo siguiente.
[Unit]
Description=Configurar reglas de enrutamiento
After=network.target
[Service]
Type=oneshot
ExecStart=/usr/local/bin/route-rules.sh
RemainAfterExit=yes
[Install]
WantedBy=multi-user.target
Y activamos el servicio e iniciamos el servicio.
sudo systemctl enable route-rules.service
sudo systemctl start route-rules.service
Comprobamos que este todo correcto.
sudo systemctl status route-rules.service
SI NADA FUNCIONA HACED LO SIGUIENTE
Editar archivo rt_tables y añadir las tablas table_1 y table_2 al final del archivo.
nano /etc/iproute/rt_tables
200 table_1
201 table_2
Aplicamos rutas a las tablas.
ip route add 192.168.1.0/24 dev enp7s0 src 192.168.1.13 table table_1
ip route add default via 192.168.1.1 dev enp7s0 table table_1
ip route add 192.168.2.0/24 dev ens6 src 192.168.2.14 table table_2
ip route add default via 192.168.2.1 dev ens6 table table_2
Aplicamos reglas de enrutamiento
ip rule add from 192.168.1.0/24 table table_1
ip rule add from 192.168.2.0/24 table table_2
VERIFICAMOS LA CONFIGURACIÓN
ip rule show
ip route show table table_1
ip route show table table_2
Creamos script
sudo nano /usr/local/bin/route-rules.sh
#!/bin/bash
# Rutas para la red 192.168.1.0/24
ip route add 192.168.1.0/24 dev enp7s0 src 192.168.1.13 table table_1
ip route add default via 192.168.1.1 dev enp7s0 table table_1
# Rutas para la red 192.168.2.0/24
ip route add 192.168.2.0/24 dev ens6 src 192.168.2.14 table table_2
ip route add default via 192.168.2.1 dev ens6 table table_2
# Reglas de enrutamiento basadas en origen
ip rule add from 192.168.1.0/24 table table_1
ip rule add from 192.168.2.0/24 table table_2
Modificamos permisos del script.
sudo chmod +x /usr/local/bin/route-rules.sh
Creamos el servicio.
sudo nano /etc/systemd/system/route-rules.service
Añadimos lo siguiente.
[Unit]
Description=Configurar reglas de enrutamiento
After=network.target
[Service]
Type=oneshot
ExecStart=/usr/local/bin/route-rules.sh
RemainAfterExit=yes
[Install]
WantedBy=multi-user.target
Y activamos el servicio e iniciamos el servicio.
sudo systemctl enable route-rules.service
sudo systemctl start route-rules.service
Comprobamos que este todo correcto.
sudo systemctl status route-rules.service
No Comments