O que um switch de camada 2 faz quando o endereço MAC destino de um quadro recebido não está na tabela Mac?

As redes modernas possuem cada vez mais um nível de complexidade maior por causa da convergência dos serviços. Cada vez mais encontramos redes com suporte a sistemas de telefonia, conferências de vídeo. Além disso, o ambiente de TI remoto é  cada vez mais uma realidade tirando os serviços locais e transferindo-os para a nuvem. Esse cenário exige uma análise profunda dos serviços oferecidos e quais as necessidades de equipamentos e configurações.

Um projeto de redes baseia-se nos seguintes princípios:

  • Hierarquia
  • Resiliência
  • Flexibilidade

Sistema Hierárquico nas redes

Estamos falando da divisão da rede em níveis operacionais onde os equipamentos e funções adequadas serão devidamente adicionados e configurados. Podemos citar:

  • Núcleo (core): equipamentos chamados de “core” e/ou “borda” da rede. Neste nível são aplicadas regras de acesso à rede como um todo bem como o roteamento para redes externas. Equipamentos comuns são firewalls e roteadores além dos equipamentos das operadoras que atendem o ambiente.
  • Distribuição: equipamentos responsáveis pela integração da rede local e suas subredes. São aplicadas regras de acesso entre as subredes e seu roteamento. Aqui são definidos serviços essenciais da LAN como DHCP, DNS, e demais serviços oferecidos por servidores. Se houverem divisões de subredes, a divisão em VLANs ocorre nestes equipamentos. Encontramos aqui switches multicamada e também roteadores.
  • Acesso: equipamentos para a conexão dos dispositivos finais. São aqui aplicadas regras de proteção de portas e aprendizado de endereços MAC. Encontramos aqui Switches e Access Points.

Switches

Switches são os equipamentos mais adequados para nossas redes modernas pois é capaz de isolar os canais de comunicação (interfaces) criando “pontes” permitindo o tráfego unicast como padrão. Broadcasts e multicasts são são realizados quando o endereço do quadro recebido solicitar essa comunicação.

Além disso, os switches gerenciáveis permitem o monitoramento e gerenciamento do tráfego facilitando a identificação e solução de problemas mais facilmente.

Comutação de Dados:

O processo de encaminhamento de quadros através de switches utiliza uma tabela para relacionar as interfaces e os endereços MAC ligados à ela. Isso permite que o dispositivo identifique a porta destino e encaminhe o quadro somente a ela. A chamada Tabela MAC (MAC ADDRESS TABLE) é alimentada à medida que quadros são recebidos pelo switch. Ele verifica se o endereço de origem consta na tabela, caso não o encontre, ele registra no campo da interface por onde o recebeu.

Ao receber um quadro cujo endereço de destino não consta na tabela ainda, o switch apela para o broadcast até que o endereço do destino seja registrado em alguma interface. Essa tabela é armazenada na RAM do equipamento podendo ser armazenada rapidamente.

Métodos de Encaminhamento nos Switches

O método de encaminhamento refere-se ao processo de recebimento do quadro e seu encaminhamento para a interface de destino. Existem 2 métodos:

  • Store and Forward: o switch recebe o quadro inteiro realiza uma checagem de erros (CRC) e o armazena em cache para verificar a tabela MAC e depois encaminhar na interface de destino. Este método possui uma latência alta.
  • Cut-Through: o switch ao receber o quadro já verifica o endereço de destino e o encaminha imediatamente para a interface de destino. Possui a menor latência e não faz checagem de erros, deixando essa tarefa para o destino. O método cut-through possui também uma variação chamada de Fragment-Free que aguarda a chegada dos primeiros 64 bytes do frame para certificar-se de que não está recebendo um fragmento de colisão.

Vale lembrar aqui que um quadro ethernet possui entre 64 e 1500 bytes por padrão sendo assim, qualquer quadro menor que 64 bytes é um fragmento de uma colisão ocorrida no meio físico e será descartado de qualquer forma. Tratamos desse assunto ao analisarmos o meio ethernet

Atributos do modo de operação de um Switch

Bandwitch:a largura de banda que a interface irá operar. Por padrão todos os switches possuem essa configuração num modo automático de acordo com seu limite (10/100 | 10/100/1000 | 10/100/10000). Só precisamos fixar essa configuração caso seja necessário fixar uma banda específica. Tome cuidado pois portas com largura de banda fixadas não negociam, se não encontrarem no outro lado a mesma configuração, não funcionarão.

Duplex: refere-se ao método de acesso ao meio permitindo configurar entre half, full ou automático. Por padrão o modo automático é pré-configurado. Da mesma forma que com a largura de banca, só travamos essa configuração nas opções half e full se realmente for necessário.

MDIx: conforme a norma técnica de conectorização de cabos ethernet, dispositivos que operam com suas portas na mesma camada precisam de um cabo chamado crossover para fecharem um enlace. Isso ocorre pelas posições TX (Transmissão) e RX (Recebimento) na organização dos pares no cabo. Switches com suporte MDIx conseguem realizar a inversão da pinagem de forma lógica tornando desnecessária a confecção ou aquisição de cabos crossover. Essa funcionalidade, se compatível com o switch, virá ativada por padrão.

Os switches são divididos em 3 tipos físicos para se adequarem aos cenários de sua implementação. São eles:

  • Tamanho Fixo:o mais comum, não permitem crescimento em sua estrutura, seus recursos e opções limitam-se aos fornecidos. Em uma rede ampla, vários switches fixos podem ser instalados porém é necessário observar a conexão entre eles. O chamado “cascateamento” consiste em um switch ser ligado ao outro. Neste caso, haverá impacto dependendo do tamanho desta “cascata” pois o tráfego passará por todos para alcançar o destino. As tabelas MAC também são afetadas pois para que a comutação na camada 2 ocorra, precisarão ter todos os endereços MAC de todos os equipamentos ligados em cada switch.
  • Modular:Um único chassi com espaço para instalação de placas de interfaces. Neste caso um único switch poderá operar com um número de interfaces flexível de acordo com o tamanho da infraestrutura e seu crescimento.
  • Empilhável:fisicamente similar ao switch fixo. Ele possui uma porta designada para a conexão com os demais switches diferente de uma interface comum de rede. Na prática os switches empilháveis quando conectados entre si formam um cluster.

Segurança nos Switches

Por padrão o aprendizado de endereços MAC de um switch é diretamente relacionado ao espaço de RAM disponibilizado para isso independentemente se vierem apenas de uma única interface ou de todas. Isso pode ser, em certos casos, uma falha de segurança que pode ser explorada por criminosos para alterar a dinâmica do encaminhamento dos quadros.

O seguinte cenário pode ilustrar isso: um esgotamento do espaço na tabela MAC causado pelo envio de diversos quadros com endereços MAC falsos. Como o switch não consegue mais armazenar endereços, quando os verdadeiros hosts começarem a encaminhar quadros, por não terem seus endereços na tabela o switch fará broadcast para encaminhá-los. Com isso, o invasor ligado a uma das interfaces deste switch poderá usar um software de captura para armazenar todos os quadros recebidos tornando-se um interceptador.

Esse cenário é um exemplo de formas de se causar danos à rede. Outro problema que pode ocorrer também é um usuário da rede desconectar o cabo de sua estação de trabalho, ligando-o a um pequeno roteador sem fios para fornecer conectividade a outros dispositivos wireless. Um ato desse pode permitir o acesso de estranhos à rede da empresa e, dependendo das intenções e capacidade do invasor, acessar servidores e outros dispositivos.

Podemos prevenir essas e outras ações controlando o aprendizado das portar, limitando o número de endereços MAC aceitos e até mesmo travarmos um endereço específico em uma interface. Nos Switches Cisco conseguimos isso ao ativar nas interfaces o recurso chamado port-security.

Podemos realizar 3 configurações de segurança nas interfaces:

Configuração Estática: endereços MAC configurados de forma manual na porta. O endereço será armazenado no arquivo de configuração do switch.

Switch(config-int)# switchport port-security

Switch(config-int)# switchport port-security mac-address xx:xx:xx:xx:xx:xx

Configuração Dinâmica: endereços MAC são aprendidos e armazenados na tabela MAC na RAM do switch limitados ao valor definido. Caso não coloquemos um limite a porta se comportará normalmente aprendendo todos os endereços.

Switch(config-int)# switchport port-security maximum [1-132]

Configuração Dinâmica Sticky:  endereçoa MAC são aprendidos e armazenados no arquivo de configuração do switch.

Switch(config-int)# switchport port-security mac-address sticky

Com o processo port-security configurado, se uma violação ocorrer haverão 3 opções de comportamento da porta possíveis:

  • Protect:  A porta nega para o dispositivo causador da violação mas nenhuma notificação é recebida.
  • Restrict: A porta nega para o dispositivo causador da violação e uma notificação de segurança é emitida.
  • Shutdown: A porta entra em modo Shutdown. Para reverter é necessário entrar no equipamento e desligar e religar manualmente.

Sua configuração segue:

Switch(config-int)# switchport port-security violation (protect | restrict | shutdown)

Modo Encaminha o Tráfego Envia Mensagem Syslog Exibe mensagem de erro Aumenta o contador de violação Desliga a Interface
PROTECT NÃO NÃO NÃO NÃO NÃO
RESTRICT NÃO SIM NÃO SIM NÃO
SHUTDOWN NÃO NÃO NÃO SIM SIM
Modos de Violação

O vídeo abaixo mostra a configuração do port-security. O arquivo disponível para download foi criado no Cisco Packet Tracer 8, lembre-se de manter seu aplicativo atualizado. Acompanhe!

Dúvidas?

Entre em contato por um dos meios abaixo e tire suas dúvidas, mande comentários, sugestões!! Compartilhe com seus amigos!

Qual será a ação de um switch se receber um quadro com endereço MAC que não consta da tabela?

Quando um quadro de dados de entrada for recebido por um switch e o endereço MAC destino não estiver na tabela, o switch encaminhará o quadro para todas as portas, exceto para a porta na qual ele foi recebido.

Que ação ocorre quando um quadro que entra em um switch tem um endereço MAC de destino unicast aparecendo na tabela de endereços MAC?

Se o endereço MAC de destino for um endereço unicast, o switch procurará uma correspondência entre o endereço MAC de destino do quadro e uma entrada em sua tabela de endereços MAC. Se o endereço MAC de destino estiver na tabela, ele encaminhará o quadro pela porta especificada.

Que ação ocorre quando um quadro que entra em um switch tem um endereço MAC de destino Multicast?

O quadro recebido tem como MAC de destino um endereço multicast ou broadcast à o switch faz o flooding do quadro para todas as portas da mesma VLAN, menos para a de origem. O quadro também é enviado para os trunks que tem a VLAN em questão permitida.

O que um switch faz quando um quadro é recebido em uma interface é o endereço físico MAC do destino é desconhecido?

Note que quando o switch recebe esse quadro ele constata que não conhece aquele MAC e envia uma cópia do quadro para todas as portas (flooding), menos para a porta do computador A. Quando o computador C recebe o quadro ele responde e o switch vincula seu MAC de origem com a porta fast 0/3.