q-in-q-example-with-tags

Q-in-Q en Cisco, qué es y para qué se usa.

Un túnel 802.1Q ( Q-in-Q ) es una técnica utilizada por proveedores Metro Ethernet que ofrecen VPN a nivel 2 a sus clientes. Un túnel 802.1Q (o dot1q) es algo muy sencillo… el proveedor pone una etiqueta 802.1Q en todas las tramas que recibe de un cliente con un id único. Usando diferentes id de VLAN para cliente, podemos separar el tráfico de los diferentes clientes y transportarlos de forma transparente por la red del proveedor.

Una de las ventajas de esta solución es que es muy fácil de implementar, no se necesita ningún hardware complejo y no necesitamos ningún protocolo de enrutamiento entre la red del proveedor y los clientes (a no ser que sea una VPN en una MPLS). Desde el punto de vista del cliente, sus sedes están interconectadas en capa 2.

En este post os muestro cómo configurar un túnel Q-in-Q y cómo funciona. Usaremos la siguiente topología:

Pulsa Like para leer:[wp-like-lock]

Cisco Q-in-Q Lab Topology

Los dos routers los hemos llamado R1 y R2 y vamos a suponer que son dos sedes de un cliente las cuales queremos interconectar de forma transparente a través de los switches del proveedor, SW1, SW2 y SW3. Nuestro cliente quiere extender la VLAN 12 entre sus sedes.

En este ejemplo, el cliente usará la VLAN 12 para su propio tráfico, pero el proveedor ha decidido que usará la VLAN 123 para transportar TODO el tráfico de este cliente, en resumen, todo el tráfico entre R1 y R2:

Q in Q Example with Tags

Cuando R1 envía tráfico, etiquetará las tramas con el id de VLAN 12. Una vez que llega al proveedor, el SW1 añadirá una etiqueta de VLAN adicional, la 123. El SW2 reenvía las tramas a R2 y elimina la segunda etiqueta y entrega la trama etiquetada con id VLAN 12 original.

 

Esta es otra forma de ver lo ocurrido de forma gráfica:

Ethernet 802.1Q Double Tagged Frame

Después de explicar la teoría del funcionamiento, así es como se pone en funcionamiento:

R1 y R2  son configurados con subinterfaces y hemos decidido aplicarles ips de la red 192.168.X.0/24. Todas las tramas son etiquetadas con el id de VLAN 12.

En la parte del proveedor, tenemos que configurar varias cosas mas. Lo primero, trunks 802.1Q entre los switches SW1 – SW3 y SW2 – SW3:

La siguiente parte es cuando configuramos el tunel Q-in-Q realmente. Tenemos que indicar que usaremos la VLAN 123 para transportar el tráfico en el tunel.

El comando switchport mode dot1q-tunnel le dice al switch que etiquete el tráfico y switchport access vlan  es necesario para especificar el id de VLAN 123 para el Q-in-Q.

Hay que estar seguros de que la VLAN 123 es alcanzable desde los tres switches. Para que la alcancen debemos crear dicha vlan en el SW3 con el siguiente comando:

Ya está todo listo, ahora hay que hacer pruebas:

Bien!, el ping llega! ahora podemos hacer algunas comprobaciones mas:

 

El comando dot1q-tunnel no da demasiada información. Lo único que vemos son las interfaces sobre las que hemos configurado el tunel. Una buena forma de probar que los switches del proveedor están transportando las tramas, es ver los trunks entre los Switches.

Como puede verse, la única vlan, aparte de la 1, es la 123. No veremos la vlan 12 aqui porque es tráfico del cliente y éste es encapsulado dentro de la vlan 123. La prueba es mirar el spanning-tree:

Los switches no tienen spanning-tree para la vlan 12 porque al proveedor no le importa el uso que se le de a dicha vlan ya que es del cliente.

Todos estos protocolos son los que pueden ser usados de cara al cliente:

 

One thought on “Q-in-Q en Cisco, qué es y para qué se usa.