VLAN – Trunk utilizando 802.1q (dot1q)

A utilização de VLAN (Virtual Local Area Network) permite que uma rede física seja dividida em várias redes lógicas dentro de um Switch. A partir da utilização de VLANs, uma estação não é capaz de comunicar-se com estações que não são pertencentes a mesma VLAN (para isto, é necessário a utilização de uma sub-rede por VLAN e que o tráfego passe primeiro por um roteador para chegar a outra rede [ou utilizando um Switch Multicamada para efetuar o Roteamento]).

Se não utilizássemos uma interface como Trunk e precisássemos passar o tráfego da VLAN para o outro Switch, seria necessário a passagem de um cabo de cada VLAN para o outro dispositivo, como no exemplo abaixo.

Como a maioria dos Switches possui entre 24 e 48 portas a solução ficaria inviável, inutilizando a maioria das portas para conexões entre os dispositivos.

O protocolo IEEE 802.1q permite utilizarmos apenas um cabo na comunicação entre os Switches, marcando cada Frame (quadro) com o ID de cada VLAN.

A marcação efetuada (chamada de TAG) adiciona aos quadros Ethernet 4 bytes no frame original e calculam um novo valor de checagem de erro para o campo FCS.

Dos valores contidos dentro do campo TAG o número da VLAN é adicionado ao campo VLAN id permitindo a identificação da VLAN entre os Switches.

Uma observação relevante é a utilização do campo Priority (também dentro da TAG) para função de QoS em camada 2 para Ethernet, chamado de 802.1p ou CoS (Class of Services), permitindo a diferenciação de classes de serviços por Switches sem a necessidade de leitura do campo IP.

Já a comunicação entre computadores no mesmo Switch que pertencem a mesma VLAN não são “tagueadas” (untagged). Muitas placas de rede para PC’s e impressoras não são compatíveis com o protocolo 802.1Q e ao receberem um frame tagged, não compreenderão o TAG de VLAN e descartarão a informação.
Os Switches que recebem na sua interface Trunk um frame com TAG, irão remover o campo e entregar o quadro ao destino sem a marcação.

A regra é bem simples para a maioria dos casos (salvo exceções):

  • Para comunicação entre Switches, configure as interfaces como Trunk ( Tagged)
  • Para comunicação entre Switches e hosts, servidores, impressoras; configure as interfaces como Access (untagged) com o ID da VLAN

Configuração

Para a maioria dos Switches Cisco IOS, configure as portas como trunk da seguinte maneira (desde que as VLANs  já tenham sido criadas no Switch ou aprendidas via VTP):

interface GigabitEthernet 1/0/x
! acesso a interface GigabitEthernet
port link-type trunk
! configuração da interface como trunk (frames encaminhados como tagged)
port trunk permit vlan all
! configuração da porta permitindo todas as VLANs no trunk

Um detalhe importante a ser percebido é  sintaxe switchport trunk encapsulation dot1q . Apesar do protocolo 802.1q não encapsular o quadro Ethernet, a sintaxe Cisco solicita a configuração do protocolo via o comando   .  Suponho que a sintaxe deva ter surgido quando a Cisco apostava na utilização de interfaces Trunk utilizando o protocolo ISL  que efetivamente encapsulava o quadro Ethernet.

Portas de acesso:

interface GigabitEthernet 1/0/x
! acesso a interface GigabitEthernet
port link-type access
! configuração da interface como acesso (frames encaminhados como untagged)
port access vlan 2
! configuração da porta na vlan 2

Obs: Por default os frames da VLAN 1 não são encaminhados com TAG dentro do Trunk.

Abraços a todos!!!

Cisco IOS: Configurando QinQ

A feature QinQ (802.1Q sobre 802.1Q), conhecido também como Stacked VLAN ou VLAN sobre VLAN, suporta a utilização de duas TAGs 802.1Q no mesmo quadro Ethernet para trafegar uma VLAN dentro de outra VLAN – sem alterar o TAG 802.1Q original.

No caso do QinQ(802.1ad), a visão do o cliente é como se a Operadora tivesse estendido um cabo (como uma fibra apagada ou cabo UTP) entre 2 equipamentos, Switches por exemplo.

Já para a Operadora não importa se o cliente está mandando o tráfego (entre 2 filiais) com TAG ou sem TAG, pois ele adicionará mais uma TAG ao cabeçalho e removerá na outra ponta apenas a ultima TAG inserida.

Em resumo, o tráfego no sentido de entrada na porta configurada com QinQ adicionará uma TAG 802.1Q ao quadro (TAG da Operadora/Provedor), mesmo em casos que já houver a marcação de VLANs, entretanto no sentido de saída, é removido apenas a última TAG acrescentada, sendo mantida a TAG 802.1Q inserida pelo cliente.

Configurando

No Exemplo acima, com Switches Cisco, para o tráfego ser “tunelado” com a TAG adicional, devemos configurar os Switches A e B com uma VLAN para cada cliente , a configuração das interfaces conectadas aos Switches também deverão usar o comando “switchport mode do1q-tunnel”.

Em caso de necessidade de transporte de protocolos da camada enlace como CDP, LACP e STP, é possivel utilizar na interface algum dos comandos abaixo:

l2protocol-tunnel [cdp | stp | vtp]

A configuração dos Switches de cada cliente, nessa topologia, não sofre nenhuma alteração em particular; e a visão de cada cliente  será  como se os Switches estivessem diretamente conectados.

O “encapsulamento”  do QinQ adiciona 4 bytes ao cabeçalho para cada quadro. Os Switches que recebem e encaminham os quadros  QinQ devem aumentar o MTU para 1504.  O MTU configurado, será verificado  utilizando o comando show system mtu.  Para aumentar o MTU  utilize o commando system mtu 1504, entretanto, essa mudança requer que o Switch seja reiniciado.

Os frames com a TAG 802.1Q possuem o TPID 0x8100, no caso do QinQ (IEEE 802.1ad) o TPID poderá ter outros valores, como 0x9100.

Abraços a todos!

VLAN DESIGN – COMO PLANEJAR MELHOR A SEGMENTAÇÃO DE REDES

Nesse vídeo listamos alguns pontos para um melhor planejamento na segmentação de redes com a utilização de VLANs.

TOPOLOGIA DE REDE CAMPUS – NETWORK DESIGN – 2 E 3 CAMADAS

A integração da rede campus utilizando dados, voz e vídeo torna-se essencial para a alta disponibilidade e impulsionamento dos negócios. Logo, uma rede local (LAN) projetada corretamente é um requisito fundamental, pois uma rede construída de forma hierárquica torna mais fácil o seu gerenciamento, expansão e troubleshooting para detecção de problemas. O design de rede hierárquico envolve a divisão da rede em camadas discretas, facilitando escalabilidade e desempenho.