jueves, 15 de marzo de 2012

Enrutamiento entre vlan, utilizando un Switch Cisco L3 y un servidor dhcp en Linux

Saludes esta vez tratare un pequeño caso de estudio que esta conformado por un servidor dhcp en Linux, para dos vlans (vlan 10 y vlan 20), el cual esta conectado a un switch Cisco L3, tal como aparece en el diagrama.

En este ejemplo, las nubes naranjas representan los equipos de red conectados a los puertos 1-10 de cada switch L2 y las nubes blancas representan los equipos de red conectados a los puertos 11-20.


Los puertos de red que interconectan los switches y el servidor dhcp deberán de ser configurados como puertos troncales, esto para permitir el paso del trafico de las vlans 10 y 20. Este ejemplo esta basado en un entorno de 2 vlans, sin embargo, puede funcionar para mas vlans.

En este caso no explicare como configurar el servidor dhcp, solamente las configuraciones que se deberán de realizar en el switch L3 y L2.

Creación de las interfaces de vlan en el servidor Linux, para mayor detalle sobre configuración de interfaces de vlan en servidores linux, y servidores dhcp para multiples vlan ver los siguientes enlaces:


Configuraciones a Realizar en el servidor DHCP/Linux

1) Creación de las interfaces de vlans y asignación de direcciones IP
   
linux# vconfig add eth0 10
linux# vconfig add eth0 20
linux# ifconfig eth0.10 172.16.10.2 netmask 255.255.255.0 broadcast 172.16.10.255
linux# ifconfig eth0.20 172.16.20.2 netmask 255.255.255.0 broadcast 172.16.20.255


2) Configuraciones en el servicio dhcp, estas indicaran que el enrutamiento se realizara en el switch L3. Para esto editaremos el archivo /etc/dhcp.conf

Para la Subred 1 (Perteneciente a la Vlan 10)
Configuración para la red 172.16.10.0/24
# Los datos de la red vlan 10 se asignan de manera dinámica
subnet 172.16.10.0 netmask 255.255.255.0
{
range 172.16.10.10 172.16.10.20;
option subnet-mask 255.2255.255.0;
option broadcast-address 172.16.10.255;
option domain-name "test1.com";
option domain-name-servers 172.16.100.2; (En este caso la dir del servidor DNS)
option routers 172.16.10.1; (Configurada en el switch L3)
}


Para la Subred 2 (Perteneciente a la Vlan 20)
Configuración para la red 172.16.20.0/24
# Los datos de la red vlan 20 se asignan de manera dinámica
subnet 172.16.20.0 netmask 255.255.255.0
{
range 172.16.20.10 172.16.20.20;
option subnet-mask 255.2255.255.0;
option broadcast-address 172.16.00.255;
option domain-name "test2.com";
option domain-name-servers 172.16.100.2; (En este caso la dir del servidor DNS)
option routers 172.16.20.1; (Configurada en el switch L3)
}


Configuraciones a Realizar en el Switch L3

1) Configuración de enlaces troncales para los puertos G1-G3 (basados en el diagrama los puertos que interconectan a los dos switches y al servidor Linux)

Switch> enable
Switch#
Switch#congure  terminal
Switch(config)#int range g0/1 – 3
Switch(config-if-range)#switchport trunk encapsulation dot1q
Switch(config-if-range)#switchport mode trunk

2) Configuración de las interfaces L3, que permitirán realizar el enrutamiento de las dos vlans.

Switch#
Switch#congure  terminal
Switch(config)#int vlan 10
Switch(config-if)#
Switch(config-if)#ip address 172.16.10.1 255.255.255.0
Switch(config-if)#no shutdown
Switch(config-if)#exit
Switch(config-if)#
Switch(config)#int vlan 20
Switch(config-if)#
Switch(config-if)#ip address 172.16.20.1 255.255.255.0
Switch(config-if)#no shutdown
Switch(config-if)#exit

Como puede observarse las direcciones IP que se configuraron en cada interfaces de vlan, corresponde con la dirección IP que se configuro en el archivo dhcp.confoption routers 172.16.20.1;” y de esta manera le estamos diciendo en el servidor dhcp a los equipos que el enrutamiento se realizara en el Switch L3, ahora bien, si se deseara que el enrutamiento lo realizara el servidor dhcp, bastaría con indicarle en este parámetro la dirección IP del servidor dhcp, y activar el ip_forwarding en el servidor Linux.

Con esto tenemos configurado los puertos del G0/1-3 como puertos troncales y las interfaces que realizaran el enrutamiento en el switch L3, una buena practica consiste en poner una descripción en cada puerto para indicar el propósito del mismo, ejemplo:

Switch(config)#interface  g0/3
Switch(config-if)#description << Servidor DHCP>>

Configuraciones a Realizar en el Switch L2

El primer paso para esta configuraciones sera crear las vlans en ambos switches:

Switch>en
Switch#configure  terminal
Switch(config)#
Switch(config)#vlan 10
Switch(config-vlan)#name subred1
Switch(config-vlan)#exit
Switch(config)#
Switch(config)#vlan 20
Switch(config-vlan)#name subred2
Switch(config-vlan)#exit

Ahora solo es necesario agregar los puertos a las vlans correspondientes, importante recordar que se deben de realizar las configuraciones de acuerdo a las vlans que se necesiten.

Switch(config)#interface range f0/1-10
Switch(config-if-range)#
Switch(config-if-range)#switchport access vlan 10
Switch(config-if-range)#exit
Switch(config)#interface range f0/11-20
Switch(config-if-range)#switchport access vlan 20
Switch(config-if-range)#exit

Como indique anteriormente, si hay alguna duda sobre estas configuraciones podría ser recomendable leer estos enlaces:

10 comentarios:

basconcelodavid dijo...

Necesito rearmar una red de LAN con 3 routers y 3 swich para 33 computadoras, alguien me puede recomendar que administracion puedo utilizar?

nunyhz@live.com mi mail les agradezco

Unknown dijo...

Buen articulo Derman, la verdad estaba buscando algo parecido para aprender,, gracias por publicarlo !!

Dionicio Arriaga dijo...

Buen día, tengo 4 vlan desde un servidor con CentOS 5.4, las 4 con salida a internet y si hago ping de una a otra se contesta y si abro por ejemplo la configuración de un access point 192.168.1.x desde otra red 192.168.100.X puedo entrar a lo que sea del AP, la pregunta es: cómo hago para que no se comunique ninguna red con cualquier otra???
Que nada más salgan a internet y ya.
Gracias.

Derman Zepeda dijo...

Bueno, en este caso seria tan sencillo como crear un par de reglas en el iptables, indicando que el trafico de que viene de las diferentes subredes no se permita en la otra.

iptables -t nat -A POSTROUTING -s 192.168.1.0/24 -d 192.168.100.0/24 -j DROP

lmtzcarlos dijo...

Muy buen tutorial

Solo me queda una duda la interface eth0 se le configura una ip o no?

Gracias

Derman Zepeda dijo...

Con respecto a la duda de asignar o no una dirección ip a la interface eth0 de este servidor dhcp, es opcional, sin embargo no es necesario.

Milton Padilla dijo...

Excelente publicación Derman, la verdad me ha servido mucho esta información.

omer dijo...

Hola, profesor Derman, soy algier , se acuerda de mi, nos dio clase en la uca..saludes

profesor tiene algun manual de vlan de cisco

gracias...saludes!!!

omer dijo...

Un ejemplo completo de vlan..

saludes!!!
que DIOS lo vendiga!!!

Unknown dijo...

Una pregunta. Cómo configurar servidor DNS y NAT Internet en Linux.

Publicar un comentario