Custo OSPF

O protocolo OSPF permite a todos roteadores em uma área ter a visão completa da topologia. O protocolo possibilita assim a decisão do caminho mais curto baseado no custo que é atribuído a cada interface, com o algoritmo Dijkstra. O custo de uma rota é a soma dos custos de todas as interfaces de saída para um destino. Por padrão, os roteadores calculam o custo OSPF baseado na fórmula Cost =Reference bandwidth value / Link bandwidth.

Caso o valor da “largura de banda de referência” não seja configurado, os roteadores usarão o valor de 100Mb para cálculo. Por exemplo, se a interface for 10Mb, calcularemos 100Mb dividido por 10Mb, então o custo da interface será 10. Já os valores fracionados, serão arredondados para valor inteiro mais próximo e toda velocidade maior que 100Mb será atribuído o custo 1.

Veja no exemplo abaixo o custo que o R1 atribui as suas interfaces:

R1#show ip ospf interface ethernet 1/1
Ethernet1/1 is up, line protocol is up
 Internet Address 192.168.13.1/24, Area 0
 Process ID 1, Router ID 1.1.1.1,Network Type BROADCAST,Cost: 10
! saída omitida

R1#show ip ospf interface ethernet 1/0
Ethernet1/0 is up, line protocol is up
 Internet Address 192.168.12.1/24, Area 0
 Process ID 1, Router ID 1.1.1.1,Network Type BROADCAST,Cost: 10
! saída omitida  e o custo atribuído para a Loopback é 1
R1#show ip ospf interface loo 1
Loopback1 is up, line protocol is up
 Internet Address 1.1.1.1/24, Area 0
 Process ID 1, Router ID 1.1.1.1, Network Type LOOPBACK, Cost: 1

O custo do Roteador R1 para a Loopback do Roteador R2 será 11.

R1#show ip route | inc 2.2.2.2
O       2.2.2.2 [110/11] via 192.168.12.2, 01:01:46, Ethernet1/0

Alterando o custo de uma interface …

R1#interface Ethernet1/0
ip ospf cost 200
! Alterando o custo da interface para 200

R1#show ip route 2.2.2.2
Routing entry for 2.2.2.2/32
Known via "ospf 1", distance 110, metric 21, type intra área
Last update from 192.168.13.3 on Ethernet1/1, 00:10:06 ago
Routing Descriptor Blocks:
* 192.168.13.3, from 2.2.2.2, 00:10:06 ago, via Ethernet1/1
Route metric is 21, traffic share count is 1


Caso seja necessário alterar a referência para largura de banda utilize o seguinte comando em um roteador Cisco IOS:

R1(config)# router ospf 100
R1(config-router)#auto-cost reference-bandwidth ?
    The reference bandwidth in terms of Mbits per second

O “auto-cost reference-bandwidth 100″ é o default para 100Mb, onde 100Mb na topologia tem o custo = 1 .  Assim, para ter links 1G com o custo = 1 , o “auto-cost…” deve ser configurado como 1000. Se a referência for links 10G , “auto-cost…” seria 10000 , para 100G, seria 100000 .

Obs: Lembre-se de sempre manter o “auto-cost reference-bandwidth” consistente em todos os roteadores para evitar comportamentos inesperados no roteamento.

Até logo!

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!!!

Iniciando os testes de APIs Meraki com DevNet Sandbox

O Cisco Meraki é um conjunto de soluções de rede gerenciadas pela internet que permite uma única fonte de gerenciamento sobre locais, infraestrutura e dispositivos. Componentes incluem uma solução completa de TI gerenciada por nuvem para atendimento as soluções de wireless, switching, segurança, gerenciamento de dispositivos móveis (MDM) e comunicações, integrando o hardware, software e a nuvem.

Há cinco maneiras pelas quais uma aplicação pode estender as funcionalidades da plataforma Meraki:

  • A Dashboard API, que fornece um serviço RESTful para provisionamento, gerenciamento e monitoramento de dispositivos.
  • Alertas de webhook, um serviço que permite atualizações em tempo real da saúde e configuração da rede.
  • A API de localização, um método HTTP POST configurado no Meraki Dashboard que fornece informações de localização do cliente (GPS, X/Y) com base no posicionamento do mapa do Meraki Access Point (AP) e na intensidade do sinal do cliente.
  • O External Captive Portal (EXCAP), que permite que uma organização crie modelos de engajamento personalizados para dispositivos que aproveitam seu ambiente WiFi.
  • MV Sense, que oferece chamadas de API REST e fluxo de dados em tempo real para aproveitamento das câmeras MV12

O ambiente “Meraki DevNet Always On Read Only Sandbox” fornece um ambiente de desenvolvimento para validar e testar o ‘Cisco Meraki Dashboard’, Dashboard API, integração do Captive Portal, MV Sense, Webhook Alerts e Location Scanning.

Todas as chamadas de API são muito bem documentadas usando a especificação OpenAPI (Swagger interface). Há ótimo trabalho disponibilizando tudo como um Documento Postman, um recurso muito útil no desenvolvimento de uma API.

Postman é uma ferramenta de desenvolvimento de API baseada no modelo web/cliente, perfeita para simular chamadas e explorar como funcionam determinadas APIs. A plataforma da Meraki está atualmente na sua API versão 1.x .

Qual o uso das APIs?
Existem muitos casos de uso para essas APIs, atendendo a requisitos de escalabilidade ​​para os administradores e automatização para as redes Meraki. Os casos de uso comuns são:

  • Provisionamento em massa (usando a API do painel)
  • Monitoramento avançado (usando MV Sense e APIs MR)
  • Automação de rede (usando chamadas MS)
  • Integrações na nuvem (integrar Meraki com dispositivos de terceiros — com Cisco Umbrella, por exemplo)

Cisco Sandbox

O ambiente Cisco DevNet Sandbox permite que engenheiros, desenvolvedores, administradores de rede, arquitetos ou qualquer pessoa que queira desenvolver e testar as APIs, controladores, equipamentos de rede, suíte de colaboração e muito mais da ferramentas da Cisco, possa fazê-lo gratuitamente!

https://developer.cisco.com/site/sandbox

Ambiente Meraki

Nesse post faremos um laboratório utilizando a infraestrutura Meraki (Meraki Always On).

Faça login, no dashboard com as credenciais fornecidas, acesse o ambiente “DevNet Sandbox”

Certifique se o use o uso de API está ativo “Enable access to the Cisco Meraki Dashboard”. Logado no painel vá para: Organization -> Settings -> Dashboard API Access, marque a caixa:

Gere uma API key para aquela conta. Cada conta poderá ter até 2 API Keys.

Clique no seu Perfil (canto superior direito): My Profile -> API Access -> Clique em “Generate API Key” copie e armazene em local seguro.

Postman

Depois de seguir os passos acima, você pode começar a fazer chamadas de API para seu dashboard e dispositivos usando o Postman ou seus scripts Python.

Se você precisar de ajuda com o Postman, incluindo como importar a API Postman Meraki, confira: https://developer.cisco.com/meraki/build/meraki-postman-collection-getting-started/  com poucos cliques é possível instalar a Coleção “Meraki Dashboard API – v1”

Vamos fazer nossa primeira chamada de API e definir o escopo da nossa documentação da API, pois existem algumas maneiras de fazer isso:

  • Você pode acessá-lo através do Meraki Dashboard: Clique em Help -> API Docs.
  • Importe o documento de API mais recente do Postman para sua conta do Postman.

Após importar para sua conta você poderá ver quantas chamadas de API estão disponíveis e como ela está organizada, confira abaixo:

Escolha um request que você possa preencher facilmente com as informações que já possui (por enquanto só temos a chave da API, portanto precisamos de uma solicitação que exija apenas o valor da Chave da API), por exemplo, poderíamos listar todas as Organizações disponíveis no Chave de API que estamos usando, depois de inserir os campos obrigatórios no cabeçalho da API:

baseURL: https://api.meraki.com/api/v1

apiKey: ae829149e162f8dd0535ca5f0b98e96f1d3adc29 (a API key gerada )

1º Passo, crie um ambiente. Clique no ícone do olho na parte superior direita e  “Add” para criar um novo ambiente.

2º Defina as variáveis. Adicione as informações baseURL e keyAPI

3º Execute o teste para coletar o ID do ambiente “DevNet Sandbox” dentro de “Organization” do ambiente Meraki.

Armado com essas informações, podemos começar a criar scripts e integrar nosso ambiente Meraki com outras ferramentas/plataformas.

Uma vez que coletamos a informação do ID da Organização, podemos atualizar as variáveis e coletar as informações de rede.

Por exemplo, podemos coletar o ID das redes.

Uma vez que coletamos a informação do ID da Rede, podemos atualizar as variáveis e coletar as informações de rede.

Por exemplo, podemos coletar as informações detalhadas dos equipamentos de rede, como endereço IP, serial, geolocalização, modelo, etc.

Coletar os SSIDs da rede:

Visualizando o mesmo SSID no ambiente Meraki:

Com o método PUT podemos alterar ou inserir nos parâmetros para a os SSIDs da Rede.

Referências

Andre Camillo: https://andrecamillo.medium.com/getting-started-with-meraki-apis-7633a822a9da

Charles Judd: https://www.youtube.com/watch?v=86uq_Imi-L0

Meraki API V1: https://developer.cisco.com/meraki/api-v1/

Postman, API development tool: https://www.postman.com/

Meraki API V1 Postman Documentation (import from here):  https://documenter.getpostman.com/view/897512/SzYXYfmJ

Getting started with Postman: https://developer.cisco.com/meraki/build/meraki-postman-collection-getting-started/

https://documenter.getpostman.com/view/897512/SzYXYfmJ#intro

MPLS (Multi Protocol Label Switching)

Apesar de existirem inúmeros sites em português com ótimas referencias de Introdução ao Protocolo MPLS, escreveremos uma serie de artigos com a utilização de MPLS em diversos cenários. Esse post servirá como uma pequena introdução para a descrição e utilização do protocolo com o foco um pouco mais simples na arquitetura e serviços.

O protocolo MPLS (Multi Protocol Label Switching) foi criado para permitir o encapsulamento de diversos protocolos de rede para serem encaminhados por Roteadores baseando-se apenas no endereço do Label ao invés do endereço de rede. A tecnologia é largamente utilizada pelos Provedores de Internet com diversas topologias de serviços orientado a redes em apenas uma única rede convergida com o MPLS em seu Backbone, permitindo a utilização de Redes Privadas (VPNs MPLS), Qualidade de Serviço (QoS), Any Transport over MPLS (AToM) e Engenharia de tráfego (MPLS-TE).

Ele é chamado de Multiprotocolo pois é utilizado com qualquer protocolo da camada de Rede e em certos cenários permite até o transporte de protocolos da Camada de Enlace sobre MPLS, apesar de quase todo o foco estar voltado no uso do MPLS com o IP.

O objetivo de uma rede MPLS dentro dos Provedores de Serviço não é o de conectar diretamente a sistemas finais.  Ao invés disto ela é uma rede de trânsito, para transporte de pacotes.

Em sua função básica os Roteadores do Backbone chamados de Provider Routers (P) encaminham o tráfego baseando-se apenas nos Labels.  Já os roteadores que são responsáveis por receber os pacotes IP e encapsulá-los com labels em uma rede MPLS são chamados de Provider Edge Routers (PE).

A terminologia dada aos equipamentos em uma rede MPLS é muito importante para identificarmos a função de cada equipamento na topologia e a sua função na arquitetura.

De certa forma, um cliente ao comprar uma comunicação entre as filiais utilizando um link MPLS privado (MPLS VPN), não terá necessariamente em seus roteadores o encaminhamento de pacotes via labels e muito menos a troca deles. Os roteadores designados para clientes, chamados de Customer Edge Routers (CE) possuem a função de prover conectividade na rede MPLS situados na “borda do cliente” (saída para rede).

A conectividade entre PE e CE poderá ser tanto provida por roteamento estático ou via IGP.

Mas o que são os Labels?

Em uma tradução literal, poderíamos dizer que label teria a atribuição de um rótulo. Em sua função no modo frame o label é inserido na frente do cabeçalho da camada de rede. Um pacote pode ter um ou mais rótulos dependendo do serviço oferecido na rede MPLS.

O label é um identificador, de tamanho fixo e significado local. Todo pacote ao entrar numa rede MPLS recebe um label. Desta forma os roteadores só analisam os labels para encaminhar os pacotes. O cabeçalho MPLS deve ser posicionado depois de qualquer cabeçalho da camada de enlace e antes do cabeçalho da camada de rede, ele é conhecido como Shim Header pelo seu posicionamento entre os 2 cabeçalhos e é “carinhosamente” chamado de protocolo da camada 2,5.do Modelo OSI.

Nos próximos posts daremos foco no processo de encaminhamento e troca de labels, outros termos comuns em uma rede MPLS e a configuração de Roteadores para a troca de labels.

Um grande abraço

Referências:

http://www.gta.ufrj.br/grad/01_2/mpls/mpls.htm
http://pt.wikipedia.org/wiki/MPLS
Designing and Implementing, IP/MPLS-Based Ethernet Layer 2 VPN Services, An Advanced Guide for VPLS and VLL, Zhuo ( Frank) Xu – Wiley Publishing, INC – 2010
MPLS Fundamentals, Luc De Ghein. – Cisco Press – 2006
TCP sobre MPLS, ENNE, ANTONIO JOSE FIGUEIREDO – Ciência Moderna – 2009

OSPF – Tipos de LSA’s (Summary LSA – Tipo 4 – ASBR)

Todos os Roteadores de uma área OSPF possuem a visão completa dos links daquela área e a partir dessa visão calculam individualmente qual o melhor caminho para determinado destino.

Para a formação da tabela dos links, chamado de LSDB, o OSPF baseia-se nos LSA’s (Link State Advertisements) para transmitir informações para os Roteadores Vizinhos. Os principais tipos de LSA’s são:

Tipo 1 – Representa um Roteador
Tipo 2 – Representa o DR
Tipo 3 – Representam os links de outra Area OSPF declarados por um ABR
Tipo 4 – Representa um ASBR (Autonomous System Border Router)
Tipo 5 – Representa uma rota externa ao domínio OSPF
Tipo 7 – Usado em áreas NSSA.

OSPF – LSA Tipo 4 (Summary LSA – ASBR)

Os LSA’s do tipo 4 são gerados pelos Roteadores ABR (Area Border Router), informando o Router ID e o custo para o Roteador ASBR fora da área.

Os Roteadores ASBR são responsáveis por redistribuir destinos externos dentro do processo OSPF, como por exemplo, RIP, Rotas estáticas, interfaces diretamente conectadas não inseridas no OSPF e etc.

  • LS Age: Tempo em segundos que o LSA foi originado.
  • Options: Identifica capacidades opcionais suportadas pelo Roteador como circuitos por demanda e etc.
  • LS Type: Representa o tipo do LSA, neste post citaremos o tipo 4
  • Link-State ID: Representa o ID do ASBR.
  • Advertising Router: identifica o Router ID do Roteador que está gerando o LSA.
  • LS Sequence Number: Identifica os novos LSAs pelo numero de seqüência. Incrementando sequencialmente entre 0x80000001 e 0x7FFFFFFF.
  • LS Checksum: Verifica o checksum no LSA
  • Length: Identifica o tamanho do LSA.
  • Network Mask: No caso do ASBR o valor da mascara será 0.0.0.0
  • metric: Métrica para o destino
  •  TOS e TOS metric: Representam o tipo de Serviço e geralmente são marcados com o valor 0

Referências

TCP/IP, Volume I 2nd Edition (Jeff Doyle, Jennifer Carroll)

Endereços IPv4 Multicast

As aplicações multicast utilizam endereços IP multicast que são referenciados como grupos multicast. Diferente de endereços IP unicast, que são atribuídos geralmente para um host, um endereço multicast é utilizado como endereço de destino de um pacote IP. O pacote com endereço IP multicast é transportado pela rede para aplicações especificamente multicast.

Diferente de um endereço unicast, um endereço multicast não é atribuído para um dispositivo de rede. Um endereço de origem no cabeçalho IP de um pacote com destino multicast, deverá ser sempre um endereço unicast.

Endereços IPv4 reservados para uso Multicast

Os endereços IPv4 reservados pela IANA para multicast são classificados como classe D, do range 224.0.0.0 à 239.255.255.255. Não há a necessidade de configurarmos a máscara de rede para endereços multicast pois ele não são hierárquicos. Os primeiros bits do primeiro octeto iniciarão sempre com 1110, os últimos 28 bits não são estruturados.

Diferente de endereços IPv4 unicast onde os blocos são delegados para os Regional Internet Registries (RIRs), os  endereços IPv4 multicast são atribuídos pelo IANA. O registro atual de grupos é especificado da seguinte forma:

Address Range                 Size       Designation
-------------                 ----       -----------
224.0.0.0 - 224.0.0.255       (/24)      Local Network Control Block
224.0.1.0 - 224.0.1.255       (/24)      Internetwork Control Block
224.0.2.0 - 224.0.255.255     (65024)    AD-HOC Block I
224.1.0.0 - 224.1.255.255     (/16)      RESERVED
224.2.0.0 - 224.2.255.255     (/16)      SDP/SAP Block
224.3.0.0 - 224.4.255.255     (2 /16s)   AD-HOC Block II
224.5.0.0 - 224.255.255.255   (251 /16s) RESERVED
225.0.0.0 - 231.255.255.255   (7 /8s)    RESERVED
232.0.0.0 - 232.255.255.255   (/8)       Source-Specific Multicast Block
233.0.0.0 - 233.251.255.255   (16515072) GLOP Block
233.252.0.0 - 233.255.255.255 (/14)      AD-HOC Block III
234.0.0.0 - 238.255.255.255   (5 /8s)    RESERVED
239.0.0.0 - 239.255.255.255   (/8)       Administratively Scoped Block

Sobre a lista acima, o bloco 224.0.0.0/24 é atribuído aos protocolos de roteamento para comunicação local no segmento, como por exemplo 224.0.0.5 que é utilizado pelo OSPF para encaminhar mensagens para todos os roteadores. O bloco 224.0.1.0/24 é utilizado por protocolos de roteamento, mas que podem ser encaminhados por toda a rede privada, como por exemplo o 224.0.1.39 para RP do PIM-SM. O 239.0.0.0/8 possui função similar aos endereços IPv4 da RFC 1918 (endereços IPv4 de escopo privado).

Endereço MAC

A atribuição de um endereço IPv4 multicast para um grupo multicast automaticamente gera um endereço MAC multicast. O endereço MAC reservado inicia com 0100.5e e o restante é completado com os últimos 23 bits do endereço IPv4.

Por exemplo, o endereço 239.1.1.1 gerará o endereço MAC 0100.5e01.0101.

Infelizmente esse método não prove endereços MAC multicast únicos para cada grupo multicast, pois somente os últimos 23 bits são utilizados. O endereço 238.1.1.1 também produz o endereço MAC 0100.5e01.0101, mas a chance de conflito de grupos multicast é muito baixa e caso o conflito aconteça a aplicação validará o endereço IPv4 multicast e descartará o tráfego. Mas o administrador deverá atentar-se a esses cenários ao criar novos grupos multicast.

Referências

CCIE Routing and Switching Certification Guide, 4th Edition, Cisco Press, Wendell Odom, Rus Healy, Denise Donohue

DHCP Snooping

A feature DHCP Snooping permite a proteção da rede contra Servidores DHCP não autorizados.

Com o DHCP Snooping configurado, o Switch inspeciona as mensagens DHCP entre uma máquina cliente e servidor com a troca das mensagens: DHCP Discover, DHCP Offer, DHCP Request e o DHCP Ack, como o desenho abaixo:

O comando “ip dhcp snooping” configurado globalmente habilita o serviço no Switch.

Com o serviço habilitado, informe explicitamente qual VLAN deverá filtrar as mensagens DHCP Offer e DHCP Ack ; com o comando “ip dhcp snooping vlan vlan-range”.

ip dhcp snooping
! Habilitando o processo globalmente
ip dhcp snooping vlan 20
! Habilitando o dhcp snooping na vlan 20

Os comandos listados restringirão todas as portas do Switch na VLAN 20 como untrusted (não confiável). Filtrando todas as mensagens de oferta do serviço DHCP (a solicitação de serviço DHCP pela máquina cliente não sofrerá nenhuma restrição).

Para o funcionamento do “Servidor DHCP válido” deveremos configurar a porta do Servidor como trusted (confiável) , incluíndo as portas de UpLink.
No Exemplo, configuraremos o dhcp-snooping no Switch com a porta GigabitEthernet 1/8 conectada ao servidor DHCP válido como trust.

Configuração

Switch#conf t
Switch(config)#interface GigabitEthernet1/8
Switch(config-if)#ip dhcp snooping trust

Visualisando

O DHCP-Snooping constrói uma tabela que contém o endereço IP liberado pelo servidor DHCP vinculado ao endereço MAC.

Switch# show ip dhcp snooping binding
MacAddress   IpAddress      Lease(sec) Type  VLAN  Interface
00:FF:16:89:E6:88 192.168.20.2 86250   dhcp-snooping  10  Gi1/12

Switch# show ip dhcp snooping
Switch DHCP snooping is enabled
DHCP snooping is configured on following VLANs:
20
DHCP snooping is configured on the following Interfaces:
Insertion of option 82 is enabled
   circuit-id format: vlan-mod-port
    remote-id format: MAC
Option 82 on untrusted port is not allowed
Verification of hwaddr field is enabled
Interface                    Trusted     Rate limit (pps)
------------------------     -------     ----------------
GigabitEthernet 1/8          yes         unlimited
GigabitEthernet 1/12         no          unlimited

Dúvidas e sugestões, deixe um comentário! ;)

Referências
https://supportforums.cisco.com/pt/blog/153731

Explorando SNMP e Melhorando a Segurança em sua Utilização

Iremos demonstrar o quão poderá ser vulnerável a sua rede caso você tenha uma community  SNMP RFC 1157(RO, RW) habilitada e conhecida pelo agente de ameaça que poderá explorá-la.

Iremos abordar os comandos snmpwalksnmpget e snmpset, todos fazem parte do pacote open source netsmp, e funciona principalmente em ambiente Linux / Unix / MacOs, também existem ferramentas similares que funcionam em Windows.

Basicamente você poderá fazer uma varredura em todas as OIDs dos dispositivos (Switches, Roteadores, firewalls, Servidores entre outros dispositivos que trabalham com SNMP).

Colocando a mão na massa,e utilizando um MAC OS vamos levantar informações sobre um determinado equipamento e posteriormente iremos alterar um parâmetro de configuração deste equipamento.

Informações Necessárias:
Comandos: snmpget / snmpwalk / snmpset
Communities: rdefaultro (e apenas de leitura) rdefaultrw (community de leitura e escrita).
IP Alvo: 192.168.1.1
Outras Info: Parâmetros de coleta

sh-3.2# snmpwalk  -v1 -c 'rdefaultro' 192.168.1.1: system SNMPv2-MIB::sysDescr.0 = STRING: Cisco IOS Software, 7200 Software (C7200-JK9S-M),  Version 12.4(18), RELEASE SOFTWARE (fc1) Technical Support: http://www.cisco.com/techsupport Copyright (c) 1986-2007 by Cisco Systems, Inc. Compiled Sat 01-Dec-07 03:07 by prod_rel_team SNMPv2-MIB::sysObjectID.0 = OID: SNMPv2-SMI::enterprises.9.1.222 DISMAN-EVENT-MIB::sysUpTimeInstance = Timeticks: (128459) 0:21:24.59 SNMPv2-MIB::sysContact.0 = STRING:  SNMPv2-MIB::sysName.0 = STRING: RT_R5_BA.toka.msft SNMPv2-MIB::sysLocation.0 = STRING:  SNMPv2-MIB::sysServices.0 = INTEGER: 78 SNMPv2-MIB::sysORLastChange.0 = Timeticks: (0) 0:00:00.00 

! Verificando Uptime do ativo
sh-3.2# snmpget -v 2c -c rdefaultro 192.168.1.1 system.sysUpTime.0
DISMAN-EVENT-MIB::sysUpTimeInstance = Timeticks: (103618) 0:17:16.18

! Verificando Hostname
sh-3.2# snmpwalk -v1 -c 'rdefaultro' 192.168.1.1: system.sysName.0
SNMPv2-MIB::sysName.0 = STRING: RT_R5_BA.toka.msft


! Alterando o Campo Contato do Router
sh-3.2# snmpset -c 'rdefaultrw' -v 1 192.168.1.1 system.sysContact.0 s teste@rdefault.com.br SNMPv2-MIB::sysContact.0 = STRING: teste@rdefault.com.br
sh-3.2# snmpwalk -c 'rdefaultro' 192.168.1.1 system.sysContact.0 SNMPv2-MIB::sysContact.0 = STRING: teste@rdefault.com.br

Melhorando a segurança de equipamentos Cisco que possuem SNMP habilitado:

✓ Utilizar snmpv3 de preferencia com criptografia;
✓ Utilizar ACL restringindo quais IPs poderão realizar consultas snmp;
✓ Não utilizar o nome de comunidade como “public”, pois é um erro comum por se tratar de uma comunidade default;
✓ Habilitar Comunidades Read Write apenas se necessário (Evitando manipulações de MIBs via snmpset):

Conclusão

Nós desejamos você tenham em mente o conceito de “think out of the box”, desta forma os conceitos apresentados neste artigo podem ser implementados na maioria dos equipamentos disponíveis no mercado, mudando apenas a sintaxe de implementação e ou ferramenta utilizada. Para este artigo foi utilizando um router Cisco com IOS.

Ambiente de Lab Gratuito – Cisco Devnet Sandbox

O ambiente Cisco DevNet Sandbox permite que engenheiros, desenvolvedores, administradores de rede, arquitetos ou qualquer pessoa que queira desenvolver e testar as APIs, controladores, equipamentos de rede, suíte de colaboração e muito mais da ferramentas da Cisco, possa fazê-lo gratuitamente!

Cisco DevNet Sandbox
https://developer.cisco.com/site/sandbox/

Outros Links
Meraki API V1: https://developer.cisco.com/meraki/api-v1/
Postman, API development tool: https://www.postman.com/
Meraki API V1 Postman Documentation (import from here): https://documenter.getpostman.com/view/897512/SzYXYfmJ
Getting started with Postman: https://developer.cisco.com/meraki/build/meraki-postman-collection-getting-started/
https://documenter.getpostman.com/view/897512/SzYXYfmJ#intro

Protegendo o Spanning-Tree (STP)

Os ataques ao protocolo STP geralmente têm como objetivo assumir a identidade do switch root da rede, ocasionando assim cenários de indisponibilidade na rede. Programas como o Yersinia permitem gerar esse tipo de ataque. Há também cenários em que usuários adicionam switches não gerenciados e hubs (propositadamente ou não) com o intuito de fornecer mais pontos de rede em ambientes que deveriam ser controlados.

As funcionalidades comentadas no vídeo usam como referência Switches 3Com/HP para mitigar os ataques ao STP, mas servem como exemplo para todos principais vendors. As features são: Root Protection (Root Guard), BPDU Protection (BPDU guard) com STP edged-port (portfast) e loop protection (loop guard).