Rutas estáticas en GNU Linux
En la entrada de hoy hablamos de las rutas estáticas en GNU Linux. Tras unos días hablando de programas ya era hora de volver a mi tema favorito, que es la administración de sistemas.
Pero vayamos por partes, como diría Jack
¿Qué son las rutas estáticas?
El enrutamiento estático se produce cuando un enrutador utiliza una entrada configurada manualmente, en vez de una entrada dinámica.
En la mayoría de los casos dichas rutas han sido añadidas, por un administrador de red o sistemas, en una tabla de enrutamiento. A diferencia del enrutamiento dinámico, las rutas estáticas son fijas y no cambian si la red cambia o se reconfigura.
Aún así, tanto el enrutamiento estático y el dinámico no se excluyen entre sí.
Dichos enrutamientos se utilizan para mejorar la eficiencia del enrutamiento y también para tener una copia de seguridad, en el caso de que las rutas dinámicas no se intercambien.
También se pueden utilizar, por ejemplo, para obtener una puerta de enlace a un recurso.
Dicho enrutamiento tiene diferentes usos:
- El enrutamiento estático se puede usar para definir un punto de salida de un enrutador cuando no hay otras rutas disponibles o necesarias. Esto se llama una ruta por defecto.
- El enrutamiento estático se puede utilizar para redes pequeñas que requieren solo una o dos rutas. Esto suele ser más eficiente, ya que un enlace no se desperdicia al intercambiar información de enrutamiento dinámico.
- El enrutamiento estático se usa a menudo como un complemento del enrutamiento dinámico para proporcionar una copia de seguridad a prueba de fallas en caso de que no haya una ruta dinámica disponible.
- El enrutamiento estático se usa a menudo para ayudar a transferir información de enrutamiento de un protocolo de enrutamiento a otro (redistribución de enrutamiento).
Añadir rutas estáticas en GNU Linux
Para añadir y quitar utilizamos la herramienta “route”, lo primero sería “route add” y lo segundo, poara dar de baja la ruta estática, “route del”, veamos unos ejemplos:
# Para añadir una nueva ruta
route add -net 192.168.1.0 netmask 255.255.255.0 gw 192.168.0.1
# Para eliminar una ruta
route del -net 192.168.1.0 netmask 255.255.255.0 gw 192.168.0.1
De esta manera las rutas estáticas no son persistentes, si deseamos que sean persistentes, debemos añadirlas de manera manual, en los ficheros correspondientes de configuración de la interfaz de red.
Para añadirlo debemos utilizar los hooks “post-up” y “pre-down” para así realizar “route del”
Un ejemplo en el caso de Debian, Ubuntu y LinuxMint, debemos editar el fichero /etc/network/interfaces.
Veamos el caso de mi portátil con Ubuntu 18.04:
auto eth0
iface eth0 inet static
address 192.168.0.20
netmask 255.255.255.0
gateway 192.168.0.1
post-up route add -net 192.168.1.0 netmask 255.255.255.0 gw 192.168.0.175
pre-down route del -net 192.168.1.0 netmask 255.255.255.0 gw 192.168.0.175
En el caso de RHEL, Centos o Scientific Linux, debemos editar el fichero /etc/sysconfig/network-scripts/ifcfg-eth0, la interfaz es de ejemplo.
Una vez hecho los cambios, debemos reiniciar la interfaz de red:
#Utilizando ifconfig
ifconfig eth0 restart
#O bien utilizando IF
ifdown eth0
ifup eth0
Si las rutas se han creado de manera satisfactoria lo podemos comprobar con la herramienta «netstat», como sigue:
netstat -rn
Con el resultado en mi caso:
davidochobits@toshibaturbo:~$ netstat -rn
Kernel IP routing table
Destination Gateway Genmask Flags MSS Window irtt Iface
0.0.0.0 192.168.0.1 0.0.0.0 UG 0 0 0 enp14s0
192.168.0.0 0.0.0.0 255.255.255.0 U 0 0 0 enp14s0
192.168.1.0 192.168.0.175 255.255.255.0 UG 0 0 0 enp14s014s0
Espero que el artículo os haya parecido interesante.
Fuentes consultadas: