Configurando interfaces de red virtuales en Linux

Estimados, de nuevo en acción retomando mi rumbo. Les traigo un traducción de un howto que me llamo la atención y creo que es bueno tener información en castellano. Así que aquí esta:

La entrada original la pueden tener aqui (si te gusta leer en ingles), comencemos.

Introducción

¿Sabia que puedes asignar mas de una dirección IP a una única interfaz de red? Esta técnica es muy utilizada, por ejemplo cuando se trabaja con Apache y host virtuales, esto para permitir accesar al mismo servicio pero usando dos direcciones IP.

Interfaz de red virtual temporal 

El proceso de crear interfaces de red virtual en +GNU/Linux es muy simple. Esto involucra una ejecución simple del comando ifconfig


ifconfig eth0:0 123.123.22.22

El comando anterior creara una nueva interfaz de red virtual basada en la interfaz física de eth0. Lo condición mas importante para crear una interfaz de red virtual es la interfaz física de red, como en nuestro ejemplo, eth0 debe existir. El ejemplo completo seria:

# ifconfig eth0 
eth0      Link encap:Ethernet  HWaddr 3c:97:0e:02:98:c8  
          inet addr:192.168.100.23  Bcast:192.168.100.255  Mask:255.255.255.0
 
# ping 192.168.100.23
PING 192.168.100.23 (192.168.100.23) 56(84) bytes of data.
64 bytes from 192.168.100.23: icmp_req=1 ttl=64 time=0.023 ms
64 bytes from 192.168.100.23: icmp_req=2 ttl=64 time=0.059 m

A este punto, podemos configurar una nueva interfaz de red virtual basados en eth0. Posterior a ejecutar el comando ifconfig la nueva interfaz de red virtual estará disponible para su uso.

# ifconfig eth0:0
eth0:0    Link encap:Ethernet  HWaddr 3c:97:0e:02:98:c8  
          UP BROADCAST MULTICAST  MTU:1500  Metric:1
          Interrupt:20 Memory:f1600000-f1620000 

# ifconfig eth0:0 123.123.22.22
# ifconfig eth0:0
eth0:0    Link encap:Ethernet  HWaddr 3c:97:0e:02:98:c8  
          inet addr:123.123.22.22  Bcast:123.255.255.255  Mask:255.0.0.0
# ping 123.123.22.22
PING 123.123.22.22 (123.123.22.22) 56(84) bytes of data.
64 bytes from 123.123.22.22: icmp_req=1 ttl=64 time=0.060 ms
64 bytes from 123.123.22.22: icmp_req=2 ttl=64 time=0.057 ms

Desactivando la interfaz de red virtual

Para desactivar la interfaz de red virtual antes creada podemos usar el mismo comando ifconfig pero con el parámetro down, ejemplo:

# ifconfig eth0:0 down

Asignación permanente de direcciones virtuales

La configuración antes mencionada no durara luego de un reinicio (o apagado). Si deseas mantener permanente una interfaz de red virtual, necesitaras modificar archivos de configuración relevantes en tu distribución particular de Linux.

Debian/Ubuntu

Estática

Para Debian o Ubuntu Linux necesitas editar el archivo /etc/network/interfaces con tu editor favorito y agregar las siguientes lineas:

iface eth0:0 inet static
address 123.123.22.22
netmask 255.0.0.0
broadcast 123.255.255.255

DHCP

También es posible usar interfaces de red virtuales con DHCP. En ese caso, necesitas agregar en /etc/network/intefaces la siguiente linea:

iface eth0:0 inet dhcp

para aplicar los cambios reinicia la red con:

 # /etc/init.d/networking restart

RedHat / Fedora / CentOS

Estática

Para RedHat, Fedora y CentOS Linux, el directorio responsable para la asignación permanente de direcciones IP es /etc/sysconfig/network-scripts. En este directorio necesitas crear un archivo correspondiente a la interfaz de red virtual. Para el ejemplo, el archivo se llamara ifcfg-eth0:0, crear el archivo nuevo y agregar las siguiente lineas para crear la direccion virtual de manera permanente posterior al reinicio.

DEVICE=eth0:0
IPADDR=123.123.22.22
NETMASK=255.0.0.0
NETWORK=123.0.0.0
BROADCAST=123.255.255.255
ONBOOT=yes

DHCP

DEVICE=eth0:0
BOOTPROTO=dhcp
ONBOOT=yes

Una vez listo el archivo, hay que reiniciar la interfaz con:

# service network restart

Conclusión

Anteriormente un servidor físico servia a un solo sitio web. Esto ya no es una opción viable para servicios de hosting hoy en día  por lo que la habilidad del sistema operativo de crear interfaces de red virtuales hoy día es una necesidad y con lo anterior es posible tenerlo.

Entradas populares de este blog

Desactivando NetworkManager

Como montar particiones LVM en Linux