Redes-Linux.com
Esta página esta optimizada para ser visualizada tanto en navegadores gráficos, como en navegadores de texto.
 
Buscar en:


 
El Servidor
Current bandwidth utilization 0.01 Mbit/s
Ancho de banda utilizado
 
Redes-Linux
 
Tip Today by ugu.com
 
Más cosas
 
Conóceme
 
Nota: Este es un articulo escrito por Jordi Ivars (aka Ear3ndil)

31/05/2004   Introducción a Iproute   4:01 P.M.
Con Iproute podemos crear tablas de rutas alternativas a la tabla general de rutas que usamos generalmente con route. Así pues, podemos hacer que todo el tráfico proveniente de un interfaz o segmento de red salga por uno de nuestros dispositivos de red y otro tráfico proveniente de otro segmento salga por el otro dispositivo. O bien que un tipo de tráfico, por ejemplo smtp, salga por un interfaz, y otro tipo por el otro. Todo eso lo hacemos con IPROUTE.

Debemos de tener instalado IPROUTE en nuestro Linux (con Debian, apt-get install iproute) y el Kernel con soporte para:
  • IP: advanced router (CONFIG_IP_ADVANCED_ROUTER)
  • IP: policy routing (CONFIG_IP_MULTIPLE_TABLES)
  • IP: use netfilter MARK value as routing key (CONFIG_IP_ROUTE_FWMARK)
Una vez instalado, podemos empezar a crear las rutas que necesitemos para conseguir que todo lo que venga de una IP determinada podamos enviarla por una ruta distinta a la de defecto.

Primero, creamos la tabla de rutas de la siguiente manera:
echo 200 Web >> /etc/iproute2/rt_tables 

Si crearamos mas tablas, no repetiriamos el número 200 ni el nombre Web. La creación de una segunda tabla seria esta (esto no es necesario para lo que necesitamos hacer):
echo 201 Maquinas_Viejas >> /etc/iproute2/rt_table 

El siguiente paso es añadir las máquinas que queremos que salgan por la ruta alternativa, de la siguiente forma:
ip rule add from 192.168.1.242 lookup Web 

Podemos añadir todas las máquinas que queramos de esa forma, añadamos otra:
ip rule add from 192.168.1.247 lookup Web 

Y por último establecemos la ruta alternativa que tienen que usar las máquinas anteriores, es decir, las que pertenezcan a la tabla de rutas "Web" que hemos creado. Lo hariamos:
ip route del default via 172.27.0.2 dev eth2 table Web 

El default via seria la puerta de enlace externa (nunca una IP que esté en el firewall) por donde queremos que salga y el dev eth2 la interfaz por donde saldrán los paquetes hacia la nueva ruta.

Comandos que pueden sernos útiles son:
  • Para listar las tablas de rutas
    ip rule ls
  • Para listar las rutas de una table
    ip rule ls table Web
    donde Web es el nombre de la tabla.


Y eso seria todo lo necesario para sacar distintas IPs por puertas de enlace diferentes a la que tenga toda la red por defecto.

Por Jordi Ivars - www.oronetes.net -