VLAN: Revelando los misterios de las VLAN

vlan

Las VLAN, acrónimo Virtual Local Area Network (red de área local virtual), es una o varias redes lógicas que coexisten adentro de una única red física, y cuál sería su utilidad? La más conocida es dividir un único dominio de broadcast en varios dominios de broadcast más chicos, también por un tema de seguridad para tener separadas las redes que son prioritarias de las redes de usuarios.

La historia de las VLAN

Cuando recién empezaba la década de 1980, La Ethernet ya era una tecnología que estaba consolidada y ofrecía velocidades de hasta 1 Mbits/s, que era mucho mayor que la gran mayoría de las alternativas que existían en aquella época.

En este tiempo el gran problema que se había que solucionar en las redes Ethernet, es que tenían una topología en bus, utilizaban como medio físico de transmisión el cable coaxial, que era compartido, por lo tanto, La Ethernet era una red de difusión y como tal, cuando dos estaciones transmiten simultáneamente, se produce colisiones y se desperdicia ancho de banda en transmisiones fallidas.

Así que podemos concluir que en este momento la Ethernet no ofrecía escalabilidad, ya que, cuando la red aumentaba mucho de tamaño disminuyen sus prestaciones.

El Carrier sense multiple access with collision detection, más conocido como CSMA/CD, impone limitaciones en cuanto al ancho de banda máximo y a la máxima distancia entre dos estaciones. Conectar múltiples redes Ethernet era en aquel momento complicado, ya que los routers para la interconexión eran caros y requerían un mayor tiempo de procesado por paquete grande, lo que terminaba por aumentar el retardo.

Pensando en una manera de solucionar estos problemas, W. Kempf inventó un dispositivo que trabajaba en capa 2 de Modelo OSI, utilizando un software para interconectar dos LANs, este dispositivo lo conocemos como Bridge o Puente.

En 1989 una compañía llamada Kalpana desarrolló el primer switch Ethernet de siete puertos, puente multipuerto implementado en hardware, dispositivo de conmutación de tramas de nivel 2.

El uso de los switches para interconectar redes Ethernet permite separar los dominios de colisión, lo que aumenta mucho la eficiencia y la escalabilidad de la red Ethernet.

Esta nueva red que ahora creciendo en tamaño, necesita ser tolerante a fallos y tener un alto nivel de disponibilidad, y eso requiere que se usen topologías redundantes: enlaces múltiples entre switches y equipos redundantes. De esta manera, ante un fallo en un único punto es posible recuperar de forma automática y rápida el servicio.

Este nuevo diseño de redes Ethernet redundantes requiere la habilitación de un nuevo protocolo, el spanning tree o simplemente STP, viene para asegurarse de que solo haya activo un camino lógico para ir de un nodo a otro, así evitar el fenómeno conocido como tormentas broadcast.

Todo andaba bien, pero, en esta topología lógica de la red, los switches de núcleo se convierten en cuellos de botella, ya que la mayor parte del tráfico de la red circula a través de ellos.

Fue ahí que finalmente David Sincoskie logro aliviar la sobrecarga de los switches creando las virtual LAN, al añadir una etiqueta a las tramas Ethernet con la que fue posible diferenciar el tráfico.

En el momento que definimos varias VLANs distintas, cada una de ellas tendrá su propio spanning tree, y se podrá asignar los distintos puertos de un switch a cada una de estas VLANs. Para que estas VLANs puedan caminar entre los varios switchs de la red Ethernet, sin que tengamos que tener un enlace entre switchs para cada una de las VLANs existentes, fue creado un enlace especial al que llamamos trunk.

Hoy en día el uso de las VLANs es generalizado en las redes Ethernet modernas, todavía, usarlas para el propósito original, suele ser un tanto extraño, ya que lo habitual es utilizarlas para separar dominios de difusión (hosts que pueden ser alcanzados por una trama broadcast).

Clasificación de VLAN

VLAN de nivel 1 (por puerto). También conocida como “port switching”. Se especifica qué puertos del switch pertenecen a la VLAN, los miembros de dicha VLAN son los que se conecten a esos puertos.

VLAN de nivel 2 por direcciones MAC. Se asignan hosts a una VLAN en función de su dirección MAC. Tiene la ventaja de que no hay que reconfigurar el dispositivo de conmutación si el usuario cambia su localización, es decir, se conecta a otro puerto de ese u otro dispositivo. El principal inconveniente es que si hay cientos de usuarios habría que asignar los miembros uno a uno.

VLAN de nivel 2 por tipo de protocolo. La VLAN queda determinada por el contenido del campo tipo de protocolo de la trama MAC. Por ejemplo, se asociaría VLAN 1 al protocolo IPv4, VLAN 2 al protocolo IPv6, VLAN 3 a AppleTalk, VLAN 4 a IPX, y otros

VLAN de nivel 3 por direcciones de subred. La cabecera de nivel 3 se utiliza para mapear la VLAN a la que pertenece. En este tipo de VLAN son los paquetes, y no las estaciones, quienes pertenecen a la VLAN. Estaciones con múltiples protocolos de red (nivel 3) estarán en múltiples VLANs.

VLAN de niveles superiores. Se crea una VLAN para cada aplicación: FTP, flujos multimedia, correo electrónico, entre otros. La pertenencia a una VLAN puede basarse en una combinación de factores como puertos, direcciones MAC, subred, hora del día, forma de acceso, condiciones de seguridad del equipo, entre otras.

VLAN estática o VLAN Dinámica

Estáticas: VLAN estáticas (o basadas en puertos) son creadas cuando son atribuidas a cada puerto de un switch a una VLAN. Cuando un nuevo dispositivo se conecta en la rede él asume la VLAN del puerto al cual está conectado.

En caso de cambio, se ese dispositivo va a ser conectado a un nuevo puerto por ejemplo, para que se mantenga en la misma VLAN original, será necesario que el administrador de la red reconfigure de manera manual el nuevo puerto en la misma VLAN.

Dinámicas: VLAN dinámicas son creadas y cambiadas dinámicamente por software, a través de un servidor VMPS (VLAN Management Policy Server), que es una base de datos que guarda los datos de todos los participantes de las VLAN.

VLAN dinámicas se basan en los criterios establecidos por el administrador de la red, como el MAC address o el nombre del usuario de red de cada dispositivo conectado al switch.

Protocolos relacionados a las VLAN

Cuando es necesario hacer la configuración de una o más VLAN es necesaria la participación de una serie de protocolos, entre los que destacan el IEEE 802.1Q, STP y VTP (Propietario Cisco) o GVRP (Definido por IEEE).

IEEE 802.1Q

En el momento que empiezas a escuchar un poco más sobre las VLANs, vas a ver que el protocolo IEEE 802.1Q es el gran astro, ya que se encarga del etiquetado de las tramas que es asociada inmediatamente con la información de la VLAN.

Todavía, mismo que hoy el protocolo de etiquetado IEEE 802.1Q sea el astro más común para el etiquetado de las VLANs, antes de su introducción, existían varios protocolos propietarios, como el ISL (Inter-Switch Link) de Cisco, una variante del IEEE 802.1Q, y el VLT (Virtual LAN Trunk) de 3Com.

El IEEE 802.1Q se caracteriza por utilizar un formato de trama similar a 802.3 (Ethernet) donde solo cambia el valor del campo Ethertype, que en las tramas 802.1Q vale 0x8100, y se añaden dos bytes para codificar la prioridad, el CFI y el VLAN ID. Este protocolo es un estándar internacional y compatible con bridges y switches sin capacidad de VLAN.

Spanning Tree Protocol (STP)

El cometido principal de Spanning Tree Protocol (STP) es evitar la aparición de bucles lógicos para que haya un sólo camino entre dos nodos. Así podemos evitar la saturación de los switches debido a las tormentas broadcast, una red con topología redundante, como ya dicho con anterioridad tiene que tener habilitado el protocolo STP.

Los switches que tiene habilitado Spanning Tree Protocol intercambian mensajes STP BPDU (Bridge Protocol Data Units) entre sí, para lograr que la topología de la red sea un árbol y solo haya activo un camino para ir de un nodo a otro.

Rapid Spanning Tree Protocol (RSTP) especificado en IEEE 802.1w, es una evolución del Spanning tree Protocol (STP), que reduce significativamente el tiempo de convergencia de la topología de la red cuando ocurre un cambio en la topología.

MSTP (IEEE 802.1Q) permite crear árboles de expansión diferentes y asignarlos a distintos grupos de VLAN mediante configuración. Esto permite utilizar enlaces en un árbol que están bloqueados en otro árbol.

VLAN Trunking Protocol (VTP)

El VTP utiliza  tramas de nivel 2 para gestionar la creación, borrado y renombrado de las VLANs en una red, sincronizando todos los dispositivos. Para eso hay que establecer primero un dominio de administración VTP, que es un conjunto contiguo de switches unidos con enlaces trunk que tienen el mismo nombre de dominio VTP.

Existen tres modos distintos en que los switches pueden estar configurados:

  1. Servidor: Este modo es el que viene configurado por defecto en los switches, él anuncia su configuración al resto de equipos y se sincroniza con otros servidores VTP.
  2. Cliente: En este modo, los switches no puede modificar la configuración de las VLANs, simplemente sincroniza la configuración sobre la base de la información que le envían los servidores.
  3. Transparente: Cuando un switch se encuentra en modo transparente la configuración de las VLANs debe ser realizada de manera manual ya que este equipo va a  ignorar todos los mensajes enviados por el VTP.

Una de las funciones del VTP es el prunning (podar), que intenta mantener en un camino, solamente las VLANs que tengan algún puerto configurado en los switches que estén más adelante en este camino.

Diseño de las VLAN

Los primeros diseñadores de redes solían configurar las VLANs con el objetivo de reducir el tamaño del dominio de colisión en un segmento Ethernet y mejorar así su rendimiento.

Cuando los switches lograron esto, porque cada puerto es un dominio de colisión, su prioridad fue reducir el tamaño del dominio de difusión. Ya que, si aumenta el número de terminales, aumenta el tráfico difusión y el consumo de CPU por procesado de tráfico broadcast no deseado.

Una de las maneras más eficientes de lograr reducir el domino de difusión es con la división de una red grande en varias VLANs.

El diseño de las actuales Redes corporativas

Las redes corporativas modernas suelen estar configuradas de forma jerárquica, según Cisco las redes de campus son formadas de tres capas:

Capa de Núcleo o Core: Esta capa emplea un backbone de alta velocidad, es por donde llegan todos los accesos provenientes de internet y es donde se unirán todas las distintas secciones de la red en una sola red.

Capa de Distribución: La función de esta capa es la de controlar el flujo de información de la capa de acceso al realizar el enrutamiento entre las VLANs que se han definido, permitiendo implementar políticas de seguridad

Capa de Acceso: La finalidad de esta capa es la de permitir la conexión entre los dispositivos finales (pc, laptop, impresoras, smartphones) proporcionando un medio de conexión a través de switches y access points.

Por razones de seguridad y confidencialidad, en la actualidad, aconsejan limitar el ámbito del tráfico de difusión, para que un usuario no autorizado no pueda acceder a recursos e  información que no le corresponde.

Por ejemplo, la red corporativa los departamentos financiero y de contabilidad,   en general se encuentran en VLANs separadas de los demás usuarios, ya que cada uno de estos grupos trata con informaciones confidenciales y cada una de las VLANs constituye un dominio de difusión. De esta manera la comunicación entre miembros del mismo grupo se puede hacer en nivel 2, y los grupos están aislados entre sí, sólo se pueden comunicar a través de rutas.

La definición de múltiples VLANs y el uso de enlaces trunk, frente a las redes LAN interconectadas con un router, es una solución escalable. Si se deciden crear nuevos grupos se pueden acomodar fácilmente las nuevas VLANs haciendo una redistribución de los puertos de los switches. Además, la pertenencia de un miembro de la corporación a una VLAN es independiente de su ubicación física.

Comandos relacionados a VLAN en los Cisco IOS

Presentamos algunos de los comandos que son más comúnmente utilizados para la configuración de las VLANs en los switches y routers que utilizan el Cisco IOS.

Creando nuevas VLAN

Switch> enable

Switch# configure terminal

Switch(config)# vlan 10

Switch(config-vlan)# name VLAN-ejemplo-10

Switch(config-vlan)# exit

Switch(config)# vlan 20

Switch(config-vlan)# name “VLAN ejemplo 20”

Switch(config-vlan)# exit

Switch(config)# vlan 30

Switch(config-vlan)# name  ejemplo30

Switch(config-vlan)# exit

Definir un puerto como Trunk:

Switch(config)# interface gigabitEthernet 0/1

Switch(config-if)# switchport

Switch(config-if)# switchport mode trunk

Switch(config-if)# switchport trunk native vlan 10

Switch(config-if)# switchport trunk allowed vlan 20, 30

Switch(config-if)# exit

Definimos como VLAN nativa la VLAN 10 y permitimos que pasen solamente de las VLANs 10, 20 y 30.

Definir un puerto como Acceso:

Switch> enable

Switch# configure terminal

Switch(config)# interface fastEthernet 0/1

Switch(config-if)# switchport

Switch(config-if)# switchport mode access

Switch(config-if)# switchport  access vlan 10

Switch(config-if)# exit

Switch(config)# interface fastEthernet 0/2

Switch(config-if)# switchport

Switch(config-if)# switchport mode access

Switch(config-if)# switchport  access vlan 20

Switch(config-if)# exit

Switch(config)# interface fastEthernet 0/3

Switch(config-if)# switchport

Switch(config-if)# switchport mode access

Switch(config-if)# switchport  access vlan 30

Switch(config-if)# exit

Definir subinterface en un Router:

Router > enable

Router # configure terminal

Router(config)# interface fastEthernet 0/1

Router(config-if)# no ip address

Router(config-if)# exit

Router(config)# interface fastEthernet 0/1.10

Router(config-if)# encapsulation dot1q 10 native

Router(config-if)# ip address 172.16.10.1 255.255.255.0

Router(config-if)# exit

Router(config)# interface fastEthernet 0/1.20

Router(config-if)# encapsulation dot1q 20

Router(config-if)# ip address 172.16.20.1 255.255.255.0

Router(config-if)# exit

Router(config)# interface fastEthernet 0/1.30

Router(config-if)# encapsulation dot1q 30

Router(config-if)# ip address 172.16.30.1 255.255.255.0

Router(config-if)# exit

Esta configuración permite al router intercambiar datos entre las VLANs.

Comments

comments