¿Cómo crear multiples direcciones IP en una sola interfaz de red?

0
1191

El concepto de crear o configurar múltiples direcciones IP en una sola interfaz de red se llama IP aliasing .

IP aliasing es de gran utilidad para la creación de múltiples sitios virtuales en Apache utilizando una sola interfaz de red con diferentes direcciones IP en una subred única red.

La principal ventaja de utilizar este IP aliasing es, que no se requiere tener un adaptador físico asociado a cada IP , pero en cambio se pueden crear varias o muchas interfaces virtuales ( aliases ) a una sola tarjeta de red física.

Las instrucciones que aquí se dan aquí se muetran aplica para todas las principales distribuciones de Linux, como Red Hat , Fedora y CentOS. La creación de múltiples interfaces virtuales y la asignación de direcciones IP de forma manual es una tarea de enormes proporciones. Aquí vamos a ver cómo podemos asignar una dirección IP y también un rango de direcciones de IP. También cómo vamos a crear una interfaz virtual y asignar diferentes direcciones o rangos de dirección IP a una sola interfaz.

 

Creación de una interfaz virtual y asignar varias direcciones IP

Si tenemos una interfaz llamada “ifcfg-eth0”, es la interfaz por defecto para el dispositivo Ethernet. Ahora bien, si se tiene conectado una segunda tarjeta Ethernet, entonces hay un dispositivo “ifcfg-eth1” y así sucesivamente para cada dispositivo que haya conectado.

Estos archivos de dipositivos de red se encuentran en el directorio “/etc/sysconfig/network-scripts/“.

Para ello, hay que situarse en dicho directorio y mostrar el contenido del mismo con el comando ls -l” para listar todos los dispositivos.

[root@athena ~]# cd /etc/sysconfig/network-scripts/ [root@athena network-scripts]# ls -l ifcfg-eth0   ifdown-isdn    ifup-aliases  ifup-plusb     init.ipv6-global ifcfg-lo     ifdown-post    ifup-bnep     ifup-post      net.hotplug ifdown       ifdown-ppp     ifup-eth      ifup-ppp       network-functions ifdown-bnep  ifdown-routes  ifup-ippp     ifup-routes    network-functions-ipv6 ifdown-eth   ifdown-sit     ifup-ipv6     ifup-sit ifdown-ippp  ifdown-tunnel  ifup-isdn     ifup-tunnel ifdown-ipv6  ifup           ifup-plip     ifup-wireless
[root@athena network-scripts]#
[root@athena network-scripts]#

Ahora bien, supongamos que queremos crear tres interfaces virtuales adicionales con las direcciones IP ( 170.110.20.126 , 170.110.20.127 y 170.110.20.128 ) a la tarjeta de red. Por lo tanto, tenemos que crear tres archivos de aliases adicionales, observe que el archivo “ifcfg-eth0” deberá de mantenr la misma direccion IP primaria. Esta es la forma para configurar los tres aliases con las siguientes direcciones IP.

P.E.

Adapter            IP Address                Type ------------------------------------------------- eth0              170.110.20.25            Primary eth0:0            170.110.20.26            Alias 1 eth0:1            170.110.20.27            Alias 2 eth0:2            170.110.20.28            Alias 3
 
[root@athena ~]# cd /etc/sysconfig/network-scripts/ [root@athena network-scripts]# cp ifcfg-eth0 ifcfg-eth0:0 [root@athena network-scripts]# cp ifcfg-eth0 ifcfg-eth0:1 [root@athena network-scripts]# cp ifcfg-eth0 ifcfg-eth0:2

Donde :X” es el numero de dispositivo (interface) para crear el alias a partir de la interfaz eth0.

Para cada alias se debe de asignar un número secuencial. Por ejemplo, podemos copiar los parámetros existentes de la interfaz ifcfg-eth0 como interfaces virtuales llamando cada uno como ifcfg-eth0:0 , ifcfg-eth0:1 y ifcfg-eth0:2. Para ello debemos de situarnos en el directorio de los archivos antes mencionados y crear los archivos como se muestra a continuación.

Abrir el archivo ifcfg-eth0 para ver su contenido

[root@athena network-scripts]# vi ifcfg-eth0  DEVICE="eth0" BOOTPROTO=static ONBOOT=yes TYPE="Ethernet" IPADDR=170.110.20.125 NETMASK=255.255.255.224 GATEWAY=170.110.20.254 HWADDR=00:0D:29:24:FE:4C

Aquí sólo tenemos dos parámetros que nos interesan y son ( DEVICE e IPADDR ). Por lo tanto, se tiene que abrir cada archivo con el editor VI y debemos de cambiar el nombre del DEVICE a sus correspondientes alias y cambiar tambien la direccion IPADDR.

Por ejemplo, si tenemos los archivos abiertos “ifcfg-eth0:0“,”ifcfg-eth0:1” e “ifcfg-eth0:2” utilizando el editor VI entonces debemos de cambiar dichos parámetros. Tal como se muestra a continuación.

ifcfg-eth0:0

DEVICE=”eth0:0
BOOTPROTO=static
ONBOOT=yes
TYPE=”Ethernet”
IPADDR=170.110.20.126
NETMASK=255.255.255.224

GATEWAY=170.110.20.254
HWADDR=00:0D:29:24:FE:4C

ifcfg-eth0:1

DEVICE=”eth0:1
BOOTPROTO=static

ONBOOT=yes
TYPE=”Ethernet”
IPADDR=170.110.20.127
NETMASK=255.255.255.224
GATEWAY=170.110.20.254
HWADDR=00:0D:29:24:FE:4C

ifcfg-eth0:2

DEVICE=”eth0:2
BOOTPROTO=static
ONBOOT=yes
TYPE=”Ethernet”
IPADDR=170.110.20.128
NETMASK=255.255.255.224
GATEWAY=170.110.20.254
HWADDR=00:0D:29:24:FE:4C

Una vez realizado todos los cambios, guardar y re-iniciar el servicio de red para que los cambios se vean reflejados.

[root@athena network-scripts]# service network restart

 

Y para verificar que todas las interfaces virtuales se estan corriendo, hay que ejecutar el comando ifconfig o el comando ip.

 

[root@athena network-scripts]# ifconfig eth0      Link encap:Ethernet  HWaddr 00:0D:29:24:F4:4C           inet addr:170.110.20.125  Bcast:170.110.20.100  Mask:255.255.255.224           inet6 addr: fe80::20c:29ff:fe28:fd4c/64 Scope:Link           UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1           RX packets:237 errors:0 dropped:0 overruns:0 frame:0           TX packets:198 errors:0 dropped:0 overruns:0 carrier:0           collisions:0 txqueuelen:1000           RX bytes:25429 (24.8 KiB)  TX bytes:26910 (26.2 KiB)           Interrupt:18 Base address:0x2000  eth0:0    Link encap:Ethernet  HWaddr 00:0D:29:24:F4:4C           inet addr:170.110.20.126  Bcast:170.110.20.100  Mask:255.255.255.224           UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1           Interrupt:18 Base address:0x2000  eth0:1    Link encap:Ethernet  HWaddr 00:0D:29:24:F4:4C           inet addr:170.110.20.127  Bcast:170.110.20.100  Mask:255.255.255.224           UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1           Interrupt:18 Base address:0x2000  eth0:2    Link encap:Ethernet  HWaddr 00:0D:29:24:F4:4C           inet addr:170.110.20.128  Bcast:170.110.20.100  Mask:255.255.255.224           UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1           Interrupt:18 Base address:0x2000

Tambien se puede realizar un ping para verificar que cada interfaz responda a la peticion, tal como se muestra a continuación.

[root@athena network-scripts]# ping 170.110.20.126 PING 170.110.20.126 (170.110.20.126) 56(84) bytes of data. 64 bytes from 170.110.20.126: icmp_seq=1 ttl=64 time=1.33 ms 64 bytes from 170.110.20.126: icmp_seq=2 ttl=64 time=0.165 ms 64 bytes from 170.110.20.126: icmp_seq=3 ttl=64 time=0.159 ms  --- 170.110.20.126 ping statistics --- 3 packets transmitted, 3 received, 0% packet loss, time 2002ms rtt min/avg/max/mdev = 0.159/0.552/1.332/0.551 ms  [root@athena network-scripts]# ping 170.110.20.127 PING 170.110.20.127 (170.110.20.127) 56(84) bytes of data. 64 bytes from 170.110.20.127: icmp_seq=1 ttl=64 time=1.33 ms 64 bytes from 170.110.20.127: icmp_seq=2 ttl=64 time=0.165 ms 64 bytes from 170.110.20.127: icmp_seq=3 ttl=64 time=0.159 ms  --- 170.110.20.127 ping statistics --- 3 packets transmitted, 3 received, 0% packet loss, time 2002ms rtt min/avg/max/mdev = 0.159/0.552/1.332/0.551 ms  [root@athena network-scripts]# ping 170.110.20.128 PING 170.110.20.128 (170.110.20.128) 56(84) bytes of data. 64 bytes from 170.110.20.128: icmp_seq=1 ttl=64 time=1.33 ms 64 bytes from 170.110.20.128: icmp_seq=2 ttl=64 time=0.165 ms 64 bytes from 170.110.20.128: icmp_seq=3 ttl=64 time=0.159 ms  --- 170.110.20.128 ping statistics --- 3 packets transmitted, 3 received, 0% packet loss, time 2002ms rtt min/avg/max/mdev = 0.159/0.552/1.332/0.551 ms

[root@athena network-scripts]#

 

Si todo esta funcionando sin problemas ahora puede configurar cualquier servicio en esas ips virtuales.

 

Suerte!!!

LEAVE A REPLY

Please enter your comment!
Please enter your name here