Categoria: Switches

Switching camada 2–Tabelas CAM e TCAM

Os switches são equipamentos inteligentes, e que possuem grande capacidade de encaminhamento de frames. Para isso duas tabelas são usadas: CAM e TCAM.

Quando os frames chegam em uma interface de um switch, eles são colocados na fila de entrada (ingress queue) desta porta. Depois, quando o switch decide por qual porta este frame deverá ser enviado, ele é colocado na fila de saída (egress queue), da porta escolhida.

Se o switch não conhecer o MAC address de destino, o frame é enviado para a fila de saída de todas as portas (menos aquela por onde o frame foi recebido), e então é feito o flooding.

As duas tabelas são usadas para escolher por onde o frame deverá ser enviado, se poderá ser enviado e como.

CAM – Content Addressable Memory: A tabela CAM, também chamada de MAC Address Table ou Layer 2 Fowarding Table, armazena os MAC address aprendidos pelo switch. O switch usa a informação do campo MAC Address Source dos frames que recebe, para preencher esta tabela.

CAM Table

Por padrão, um MAC aprendido dinamicamente fica na tabela CAM por 300 segundos após a uma atividade registrada. Este tempo é conhecido como aging timer, e podemos alterá-lo. Também é possível criar uma entrada estática.

Criando uma entrada estática na tabela CAM

BrainSW05(config)# mac address-table static 0012.1122.3355 vlan 10 interface fa0/5

Aumentando o Aging timer para 400 segundos, na VLAN 10

BrainSW05(config)# mac address-table aging-time 400 vlan 10

Apagando da Tabela CAM um MAC aprendido dinamicamente

BrainSW05(config)# clear mac address-table dynamic 0012.da8e.c496

A tabela CAM fica armazenada na memória RAM, o que torna sua consulta rápida.

É importante lembrar que a tabela CAM é finita, e se não houver espaço para cadastrar os novos MAC dos frames que o switch recebe, ele passará a fazer o floding sempre que chegar um frame destinado ao endereço MAC não gravado.

Use o comando show mac address-table count para ver quanto espaço ainda tem na Tabela CAM.

TCAM – Ternary Content Addressable Memory: A tabela TCAM é usada para armazenar access-lists baseadas em MAC Address e access-lists usadas na configuração de QoS. Em switches camada 3, access-lists baseadas em endereços IPs e portas também ficam na TCAM.

Assim como a CAM, a TCAM fica armazenada na memória RAM, porém ela é mais complexa, e um switch pode ter mais de uma TCAM (uma para o tráfego que entra, outra para o tráfego que sai, outra para QoS,…).

Ela conta com os campos Valor, Máscara e Resultado, não pode ser configurada, mas em alguns switches podemos especificar o tamanho que ela terá, otimizando-a para uma funcionalidade específica.

Mudando o tamanho / otimizando a TCAM

BrainSW05(config)#sdm prefer ?
  default                    Default bias
  dual-ipv4-and-ipv6  Support both IPv4 and IPv6
  lanbase-routing      Lanbase routing
  qos                        QoS bias

Até a próxima.

Testando a comunicação com Radius/Tacacs Server

A partir da CLI – Command Line Interface, de roteadore, switches e access-points Cisco, podemos testar a comunicação com o servidor Radius e/ou Tacacs.

Esta funcionalidade nos permite verificar o status do servidor antes de aplicarmos a configuração de aaa, por exemplo.

Para isso basta, no modo de configuração privilegiado, e com o servidor já cadastrado, usar o comando test aaa group.

Testando a autenticação de dentro de um roteador

BrainGW01#
BrainGW01#test aaa group tacacs+ admin cisco123 new-code
Sending password
User successfully authenticated

USER ATTRIBUTES

username             "admin"
reply-message        "Password: "
BrainGW01#

Se usarmos um usuário com a senha errada veremos a resposta abaixo.

BrainGW01#
BrainGW01#test aaa group tacacs+ admin cisco1 new-code
Sending password
User rejected

BrainGW01#

Esta funcionalidade foi introduzida na versão 12.2(28)SB, e a partir da versão 12.2(4)T recebeu algumas melhorias, como a possibilidade de criar um profile para associar ao teste.

Mais informações neste link.

Até a próxima.

Hora certa nos logs

Por , 03/11/2011 15:42

Sempre é bom deixar os equipamentos configurados para gerar logs. Isso facilita muito na hora do throubleshooting. Mas também é importante que os logs sejam gerados com o horário correto.

Para isso, primeiro precisamos configurar o clock do equipamento. Você pode usar um NTP ou configurar o horário localmente.

Configurando o horário localmente em um switch Cisco 2960

BrainSW01#clock set 16:15:00 3 nov 2011
BrainSW01#conf t
BrainSW01(config)#clock timezone GMT -3
BrainSW01(config)#end
BrainSW01#

Com esta configuração o equipamento utilizará o horário local (atenção para o horário de verão, nesta época temos que alterar para GMT -2).

Você pode verificar se o horário está correto com o comando show clock.

Com o horário certo, basta configurar o timestamps do log para que seja utilizado o horário local. Por padrão esta funcionalidade vem desabilitada.

Configurando o timestamps

BrainSW01#conf t
BrainSW01(config)#service timestamps log datetime localtime

Com esta configuração os logs serão gerados e marcados com o horário do equipamento.

teste#conf t
teste(config)#hostname BrainSW01
BrainSW01(config)#end
BrainSW01#
.Nov  3 16:24:17: %SYS-5-CONFIG_I: Configured from console by admin on vty0 (10.10.10.3)
BrainSW01#

Os mesmos comandos são utilizados para configurar o horário nos logs de roteadores.

Mais informações sobre System Message Logging neste link.

Até a próxima.

L2/L3 IOU Rack: Laboratório Cisco em casa

Por , 17/09/2011 15:44

Quem tal um rack com seis roteadores e quatro switches layer 3, para você brincar a vontade? E o melhor: de graça!

Pois saiba que isto é possível graças ao L2/L3 IOU, uma VM pronta para usar, criada para permitir a elaboração de diversas topologias, e treinar na prática para as certificações.

Você vai precisar do VMware Workstation, para rodar a VM onde os equipamentos serão emulados. Se não tiver, instale antes de continuar. É recomendado o uso da versão 7, porém eu testei com a versão 6.5.3 e funcionou.

Preparando a VM

1) Faça o download através de um dos links abaixo, e descompacte os arquivos. Você encontrará dois arquivos .rar.

O Cisco_IOU_Rack_v3_Video.rar é um vídeo mostrando como iniciar o LAB e acessar os equipamentos (o resumo eu coloquei abaixo). Já o arquivo  Cisco_IOU_Rack_VM_by_flyxj.rar é a VM (Debian), onde temos os equipamentos.

Download Via Wupload: L2/L3 IOU

Download L2/L3 IOU, via Rapidshare: Part1Part2Part3Part4 – Part5 – Part6 – Part7

2) Descompacte o arquivo onde está a VM e abra o VMware Workstation. Inicie o VMware, clique em File > Open e selecione o local onde está o arquivo descompactado.

Depois clique em Edit > Virtual Network Editor.

L2L3IOU - VM1

3) Para o LAB funcionar é OBRIGATÓRIO fazer as seguintes configurações:

- VMnet0: Bridged to an automatically chosen adapter – Bridged
- VMnet1: Local Area Connection 3 – Subnet 192.168.20.0/24 – DHCP Enabled – Host Only
- VMnet8: Local Area Connection 4 – Subnet 192.168.80.0/24 – DHCP Enabled – NAT

Configuração VMnet1

Após a configuração das 3 VMnets, clique em Summary e veja se sua configuração ficou como na imagem abaixo. Este é o passo mais importante. Se algo estiver diferente disso o LAB pode não funcionar.

VMnets configuradas

4) Com as VMnets configuradas basta iniciar a VM e começar a usar o LAB.

Usando o LAB

1) Quando a VM inicializar você vai ver a tela abaixo, com as informações básicas para o uso LAB. Faça o login usando o usuário e senha indicados, e entre no diretório LAB.

Cisco IOU Racks

2) Dentro do diretório LAB você pode usar o comando show para visualizar a topologia, e o comando Rx ou Sx para iniciar o respectivo roteador e swtich.

Topologia com 3 roteadore e 1 switch iniciado

3) Para acessar os equipamentos basta você dar um Telnet no IP / Porta.

  • R1: 192.168.80.160:2001
  • R2: 192.168.80.160:2002
  • R3: 192.168.80.160:2003
  • S4: 192.168.80.160:2004
  • S5: 192.168.80.160:2005
  • R6: 192.168.80.160:2006
  • R7: 192.168.80.160:2007
  • R8: 192.168.80.160:2008
  • S9: 192.168.80.160:2009
  • S10:192.168.80.160:2010

Cisco IOU Racks Sw10

IMPORTANTE: Não mude o hostname ou IP de acesso aos equipamentos (192.168.80.160). Isto pode fazer com que o LAB pare de funcionar.

Usei pouco até agora, mas por enquanto estou gostando.

As funcionalidades que testei funcionaram e outro fato positivo é que a VM não está consumindo muitos recursos, como é comum no Dynamips.

Se tiver alguma dúvida assista o vídeo que vem junto com o download. Também é possível encontrar mais exemplos no Youtube.

Encontrei as informações para este post no site Gopherden.

Até a próxima.

Roteamento no Cisco 2960S

Por , 13/09/2011 18:03

Acho que muita gente ainda não sabe, mas os switches Cisco da família 2960S, com software LAN Base, a partir da versão 12.2(55)SE, podem fazer roteamento.

As funcionalidades de roteamento são limitadas, sendo suportadas apenas rotas estáticas.

2960S-L3

Não é possível usar uma interface física para roteamento (no switchport). Diferente de outros equipamentos layer 3, como o 3560 e 3750, no 2960S o roteamento é suportado apenas em SVI – Switched Virtual Interfaces (interfaces VLANs).

Outro ponto muito importante é a quantidade de rotas suportadas: apenas 16 (contando com a rota default), e a quantidade de SVIs: 8.

De qualquer maneira, para pequenas redes, esta funcionalidade pode ser bem útil.

Configurando roteamento no 2960S

A configuração do 2960S é quase igual a dos demais switches layer 3. A única diferença que é temos que mudar o SDM Template e reiniciar o equipamento. Isso porque por padrão o 2960S vem com um template habilitado que não permite o roteamento.

BrainSW01#conf t
BrainSW01(config)#sdm prefer lanbase-routing
Changes to the running SDM preferences have been stored, but cannot take effect until the next reload.
Use ‘show sdm prefer’ to see what SDM preference is currently active.
BrainSW01(config)#exit
BrainSW01#reload
System configuration has been modified. Save? [yes/no]: y
Proceed with reload? [confirm]

Depois de reiniciar o switch, a configuração é a mesma que fazemos nos 3560/3750.

BrainSW01#conf t
BrainSW01(config)#ip routing
BrainSW01(config)#
BrainSW01(config)#int vlan 10
BrainSW01(config-if)#ip add 192.168.10.1 255.255.255.0
BrainSW01(config-if)#exit
BrainSW01(config)#int vlan 20
BrainSW01(config-if)#ip add 192.168.20.1 255.255.255.0
BrainSW01(config-if)#exit
BrainSW01(config)#ip route 0.0.0.0 0.0.0.0 192.168.10.2
BrainSW01(config)#ip route 10.0.0.0 255.255.255.0 192.168.10.254
BrainSW01(config)#ip route 172.16.0.0 255.255.255.0 192.168.20.254
BrainSW01(config)#exit
BrainSW01#

Com certeza, para quem trabalha com switches Cisco isto quebra um paradigma. Jamais imaginei dar um show ip route em um 2960…

BrainSW01#show ip route
Codes: C – connected, S – static, R – RIP, M – mobile, B – BGP
       D – EIGRP, EX – EIGRP external, O – OSPF, IA – OSPF inter area
       N1 – OSPF NSSA external type 1, N2 – OSPF NSSA external type 2
       E1 – OSPF external type 1, E2 – OSPF external type 2
       i – IS-IS, su – IS-IS summary, L1 – IS-IS level-1, L2 – IS-IS level-2
       ia – IS-IS inter area, * – candidate default, U – per-user static route
       o – ODR, P – periodic downloaded static route

Gateway of last resort is 192.168.10.2 to network 0.0.0.0

C    192.168.10.0/24 is directly connected, Vlan10
C    192.168.20.0/24 is directly connected, Vlan20
S    10.0.0.0/24 [1/0] via 192.168.10.254
S    172.16.0.0/24 [1/0] via 192.168.20.254
S*   0.0.0.0/0 [1/0] via 192.168.10.2
BrainSW01#

Veja mais informações no Catalyst 2960 and 2960-S Software Configuration Guide, 12.2(55)SE.

Até a próxima.

Tema Brainwork 0.2(beta)