Dos proveedores de Internet a la vez
Muy buen artículo vía sysadm
Cada vez es más habitual contratar accesos a Internet alternativos, redundantes, sea por soportar nuevas necesidades de ancho de banda o porque la disponibilidad de los sistemas que administramos se torna crítica. En estos casos, tenemos que configurar los sistemas para que sean capaces de responder desde cualquiera de las conexiones, de una forma transparente, y es lo que vamos a simular en este post.
Debo recalcar que con la simulación que aquí desarrollamos, el balanceo sólo se producirá en base a las propiedades round-robin de nuestros servidores DNS. Como sugerencia, podemos usar algún servidor DNS que reparta la carga verificando la integridad del servidor que se encuentra detrás y conseguiremos la mayor disponibilidad de nuestros servicios.
Objetivo
Utilizando VMware Server vamos a montar tres servidores Linux: dos con funciones de ruteo, y un tercero, el Linux con el que vamos a trabajar.
Los dos con funciones de router tendrán doble tarjeta de red, una de ellas conectada directamente a uno de nuestros interfaces físicos de red, para que con el bridge configurado en VMware vean nuestra LAN, y el segundo interfaz dentro de sendas redes virtuales; el tercer equipo será el servidor al que le activaremos el doble gateway a Internet. En el dibujo siguiente vemos la estructura:
La zona recuadrada es la zona virtual que vamos a configurar.
Preparativos
Necesitamos crear tres máquinas virtuales:
- rISP1: El primero de los router. Yo he usado Damn Small Linux, como distribución muy sencilla, de arranque desde imagen, tipo Knoppix, y, como ésta basada en Debian. Con discos de 200MB es más que suficiente y después de arrancarla, desde el menú de su entorno gráfico, la he instalado en su disco virtual. En VMware le he asignado dos interfaces ethernet, conectado el primero de ellos al bridge, VMnet0, y el segundo a VMnet2.eth0 en bridge.
eth1 en VMnet2. - rISP2: El segundo router. Sólamente he copiado la carpeta de la máquina virtual anterior y la he importado en VMware. He cambiado la conexión de su segundo interfaz de red a la red virtual VMnet3.eth0 en bridge.
eth1 en VMnet3. - LAMP: Para esta máquina he montado una OpenSuSE 10.1, en la que crearé mi servidor web al que accederemos. Esta máquina no estará conectada físicamente a ninguna red. En VMware le he creado tres interfacez de red, conectados a VMnet2, VMnet3 y VMnet1.eth0 en VMnet2.
eth1 en VMnet3.
eth2 en VMnet1.
Una vez arrancadas e instaladas las máquinas virtuales, configuraremos las IP que hemos definido en el esquema anterior:
Configuración IP en los router rISP1 y rISP2
En rISP1 y rISP2, editando /boot/grub/menu.lst, cambiamos todos los arranques para que las IP no se autoconfiguren por DHCP añadiendo la opción nodhcp. Una de las líneas antes del cambio:
kernel /boot/linux24 root=/dev/hda1 quiet vga=normal noacpi noapm nodma noscsi frugal
y después
kernel /boot/linux24 root=/dev/hda1 quiet vga=normal noacpi noapm nodma noscsi frugal nodhcp
(fijaos en la última palabra de la línea).
Ahora que ya no se autoconfiguran le indicamos al Damn Small Linux sus nuevas IP. Creamos en /etc/sysconfig/network-scripts los ficheros ifcfg-eth0 e ifcfg-eth1 con este contenido:
ifcfg-eth0 en rISP1:
DEVICE=eth0 IPADDR=192.168.0.201 NETMASK=255.255.255.0 NETWORK=192.168.0.0 BROADCAST=192.168.0.255 ONBOOT=yes
ifcfg-eth1 en rISP1
DEVICE=eth1 IPADDR=192.168.145.254 NETMASK=255.255.255.0 NETWORK=192.168.145.0 BROADCAST=192.168.145.255 ONBOOT=yes
ifcfg-eth0 en rISP2:
DEVICE=eth0 IPADDR=192.168.0.202 NETMASK=255.255.255.0 NETWORK=192.168.0.0 BROADCAST=192.168.0.255 ONBOOT=yes
ifcfg-eth1 en rISP2
DEVICE=eth1 IPADDR=192.168.146.254 NETMASK=255.255.255.0 NETWORK=192.168.146.0 BROADCAST=192.168.146.255 ONBOOT=yes
Y para terminar añadimos en el fichero /opt/bootlocal.sh de ambos equipos lo siguiente:
ifup -a echo 1 >/proc/sys/net/ipv4/ip_forward
Con ifup -a levantamos la red con los parámetros definidos antes. Con la segunda línea activamos el ruteo en el kernel de ambos router.
Para tener más control de por donde se dirige el tráfico activo apt-get, con dpkg-restore e instalo los paquetes tcpdump y tcpflow:
dpkg-restore apt-get install tcpdump apt-get install tcpflow
Configuración IP en el servidor LAMP
Usando yast2 configuro la red siguiendo el esquema, resaltando que por ahora le configuro únicamente un gateway (192.168.145.254). Eso es lo que podemos hacer con la herramienta.
Activación del doble gateway en LAMP
Primero creamos las tablas de ruteo que definiremos más adelante. Para ello editamos el fichero /etc/iproute2/rt_tables y le añadimos las siguientes líneas:
200 rISP1 201 rISP2
Siguiendo las instrucciones de la página Linux Advanced Routing & Traffic Control, creo un fichero /root/multigateway con este contenido:
#!/bin/bash IF1=eth0 IP1=192.168.145.11 P1=192.168.145.254 P1_NET=192.168.145.0/24 IF2=eth1 IP2=192.168.146.11 P2=192.168.146.254 P2_NET=192.168.146.0/24 ip route add $P1_NET dev $IF1 src $IP1 table rISP1 ip route add default via $P1 table rISP1 ip route add $P2_NET dev $IF2 src $IP2 table rISP2 ip route add default via $P2 table rISP2 # El equipo ya sabe llegar a sus subredes: #ip route add $P1_NET dev $IF1 src $IP1 #ip route add $P2_NET dev $IF2 src $IP2 # Ya lo tenemos por el único default gateway que configuramos #ip route add default via $P1 # Activamos las tablas cuando el origen sea de la IP del gateway ip rule add from $IP1 table rISP1 ip rule add from $IP2 table rISP2
Y al ejecutarlo ya estará el segundo gateway activo.
Me ocupo de que se ejecute al arranque del OpenSuSE, aunque eso lo dejaré pendiente para otro post.
5 Comments »
RSS feed for comments on this post. TrackBack URL







Hola
Es un articulo muy bueno, pero no me aparece la imagen con la estructura de la red. Puedes tocar el enlace?
en un par de dias pasare por aqui de nuevo a ver si ya esta.
Gracias por el articulo
vaya, muy buenas
hay un problema, este artículo, no es mío, tal y como he puesto en el principio, el problema es que he ido a la web, y no encuentro el artículo! e smuy extraño, si lo encuentro lo pongo :D
Me alegra que parezca interesante:
http://www.sysadm.org/blog/laboratorio-vmware-linux-y-dos-proveedores-de-internet/
Salu2
Hola a todos
mi preguntoa que si sepuede Hacer con Windows serve 2003
si!, pon un vmware con linux, y asigna le la otra tarjeta de red