vPC – virtual Port Channel

A tecnologia de Port Channel ( também chamada de Etherchannel ou Link Aggregation),permite a agregação de uplinks Ethernet entre dois Switches, formando um único link lógico para prover aumento de banda, além de fornecer balanceamento de pacotes.

Por padrão, a agregação de links possui a limitação de permitir a conexão apenas entre 2 dispositivos.

A tecnologia Cisco vPC (virtual Port Channel) permite a dupla abordagem (dual-homing) de um switch ou servidor para dois Switches de forma a agregar os 2 links como um único link lógico e “simular” à agregação de links e também ao protocolo STP, como se a conexão fosse efetuada entre 2 dispositivos, ao invés de 3. O equipamento conectado aos Switches Nexus (com a configuração vPC) que desejam efetuar a agregação de portas, enxergará os Switches Nexus como um único equipamento lógico.

Em grandes redes, a redundância de equipamentos é muitas vezes uma exigência de projeto para proteção de falha de hardware e também para fornecer caminhos alternativos.

Tecnologias como STP e Port Channel possuem benefícios para proteger a rede de loop e prover redundância em caso de falhas em links ou equipamentos de rede. A convergência do STP ocorre aproximadamente 6 segundos, enquanto uma solução Port Channel tem o potencial de recuperação de falhas em menos de um segundo.

O diferencial da tecnologia vPC  é permitir que dois Switches Nexus diferentes formem um único Port Channel para um terceiro equipamento.

Um par de Switches Nexus que usa o vPC acaba parecendo a outros dispositivos de rede como um único switch de camada 2 lógico. No entanto, os dois switches permanecem como dois switches com o plano controle gerenciados separadamente, incluíndo modificações no plano de dados dos Switches para assegurar o encaminhamento da pacotes da melhor maneira.

Terminologia do vPC

A arquitetura VPC consiste nos seguintes componentes:

 – VPC Peer: Switches com o vPC configurado como pares.

– VPC Peer-Link : Este link cria a ilusão de um único plano de controle. com envio de BPDUs e LACP entre os Switches vPC pares. O link também é usado para sincronizar a tabela de endereço MAC e entradas IGMP para IGMP Snooping. Se um dispositivo vPC é também Switch L3, o vPC Peer-Link também carrega pacotes HSRP.

– VPC Peer-Keepalive link: o vPC Peer-Keepalive link é uma ligação lógica que muitas vezes é executado através de uma rede OOB. Ele fornece um caminho de comunicação L3 que é utilizado para monitorar a conectividade do vPC Peer Switch. O Switch envia uma mensagem de heartbeat a cada 2 segundos. O keepalive link não carrega nenhuma configuração de controle, dados ou sincronização.

– vPC Member port: esta porta é uma porta que está em um dos switches vPC; que participa de um dos vPC Port Channel.

– Orphan Port: o termo “porta órfã” refere-se a uma porta do switch que é ligado a um dispositivo órfão (não configurado como Port Channel) com uma conexão simples. O termo tambem pode ser utilizado se um dispositivo que está conectado a um vPC perde todas as conexões de um dos pares VPC.

Cisco Fabric Services

Cisco Fabric Services é usado como o principal protocolo do plano de controle do vPC, e comunica-se atraves de um peer link e não necessita de nenhuma configuração..

O Protocolo executa várias funções como:

–  Switches vPC devem sincronizar a tabela de endereços MAC. Por exemplo, um peer vPC aprende um novo endereço MAC em um vPC. Esse endereço MAC também está programado na tabela L2F do outro dispositivo de pares para o mesmo VPC. Este processo de aprendizado do endereço MAC substitui o  o mecanismo normal de aprendizagem MAC e impede tráfego  de ser encaminhados atraves dos vPC Peer-Link desnecessariamente.

– A sincronização de informações IGMP snooping é efetuada pelo Cisco Fabric Services. L2F do tráfego multicast com o vPC é baseado no comportamento IGMP snooping modificado que sincroniza as entradas IGMP entre os pares vPC. Em uma implementação vPC, o tráfego IGMP um switch do pares vPC  desencadeia a programação do hardware para a entrada multicast em ambos os dispositivos membros vPC.

– Cisco Fabric Services também é usado para se comunicar informações de configuração essencial para garantir consistência de configuração e compatibilidade. Durante a verificação de compatibilidade, em vPC pares, informações de configuração são transmitidas para o outro vPC para verificar se as portas membro vPC pode realmente formar um Port Channel.

– Cisco Fabirc Services é usado para controlar o status vPC. Quando todas as portas membros vPC em um dos switches vPC cair, Cisco Fabric Services é usado para notificar o switch par vPC que suas portas se tornaram Orphan port. Todo o tráfego que é recebido no Peer-link por aquele vPC, agora deve ser encaminhado via vPC local.

– Pares Layer 3 vPC sincronizam suas respectivas tabelas ARP. Esse recurso é ativado de forma transparente e ajuda a garantir o tempo de convergência mais rápida uma vez reinciado um Switch vPC. Quando dois switches são reconectados após uma falha, eles usam Cisco Fabric Services para executar a sincronização da tabela ARP.

Entre o par de Switches vPC, uma eleição é realizada para determinar um dispositivo vPC primário e secundário. Essa eleição é não-preemptiva. A função principal é administração do plano de controle, determinando qual dos Switches será o principal, responsável pela geração e processamento de BPDUs STP para o vPC.

Ambos os Switches participam ativamente no encaminhamento de tráfego para o vPC. No entanto, os papéis primários e secundários também são importantes em determinados cenários de falha, principalmente em uma falha no Peer-link. Quando o Peer-link vPC falhar, os VPC Switches tentarão determinar através do mecanismo de keepalive-peer se o Switch par ainda está operacional. Se positivo o Switch secundário operacional suspende todas as portas vPC member port. O secundário também coloca em shutdown as interfaces virtuais (SVIs)  associadas as VLANs configuradas e permitidas na ligação dos pares vPC.

Para os protocolos LACP e STP, os Switches pares vPC apresentam-se como um único dispositivos lógicos para dispositivos que estão conectados em um vPC. Para LACP, esse cenário é possível com a criação do LACP system ID para ambos os Switche vPC a partir de um pool  de endereço MAC reservados, que são combinadas com o vPC domain ID. Para o STP, o comportamento depende da utilização da opção de peer-switch option. Se a opção peer-switch option não for usada, o vPC primário é responsável pela geração e processamento de BPDUs e usa seu próprio Bridge ID para os BPDUs do vPC. Quando a opção peer-switch option é usada, ambas Switches primários e secundários enviam e processam BPDUs. No entanto, eles vão usar o mesmo Bridge ID para apresentar-se como um único switch ao dispositivo que está conectado ao vPC.

Configuração

Para configurar o virtual Port Channel é recomendado que você siga os seguintes passos:

  1. Defina o vPC domain
  2. Estabeleça a conectividade peer-keepalive
  3. Configure o peer link
  4. Crie o vPC

Nexus-A

#Nexus-A
vrf context vpc
! Criando a VRF vpc para isolar o tráfego keepalive
vpc domain 56
  peer-keepalive destination 192.168.56.6 source 192.168.56.5 vrf vpc
! Criando o vPC domain 56 e a conectividade peer-keepalive.
! O vPC domain deve ser o mesmo em ambos os Switches
#
interface port-channel5
  switchport
  switchport mode trunk
  vpc 5
! Após a configuração do Port Channel o mesmo deve ser configurado como parte do vPC.
! O ID do Channel e do vPC podem ser diferente, mas a configuração deve ser consistente
! em ambos os devices.
#
interface port-channel56
  switchport
  switchport mode trunk
  spanning-tree port type network
  vpc peer-link
! Configurando o Port Channel 56 como vPC peer-link
#
interface Ethernet4/17
 description vPC member port
  switchport
  switchport mode trunk
  spanning-tree port type network
  channel-group 5 mode active
  no shutdown
#
interface Ethernet4/19
  description conexão vPC peer
  switchport
  switchport mode trunk
  spanning-tree port type network
  channel-group 56 mode active
  no shutdown
#
interface Ethernet4/20
  description conexão vPC peer
  switchport
  switchport mode trunk
  spanning-tree port type network
  channel-group 56 mode active
  no shutdown
#
interface Ethernet4/21
  description conexão Peer-Keepalive
  vrf member vpc
  ip address 192.168.56.5/24
  no shutdown
#

Nexus-B

#Nexus-B
vrf context vpc
!
vpc domain 56
  peer-keepalive destination 192.168.56.5 source 192.168.56.6 vrf vpc
#
interface port-channel5
  switchport
  switchport mode trunk
  vpc 5
#
interface port-channel56
 switchport
  switchport mode trunk
  spanning-tree port type network
  vpc peer-link
#
interface Ethernet4/22
  description vPC member-port
  switchport
  switchport mode trunk
  spanning-tree port type network
  channel-group 5 mode active
  no shutdown
#
interface Ethernet4/23
  description conexão vPC peer
  switchport
  switchport mode trunk
  spanning-tree port type network
  channel-group 56 mode active
  no shutdown
#
interface Ethernet4/24
  description conexão vPC peer
  switchport
  switchport mode trunk
  spanning-tree port type network
  channel-group 56 mode active
  no shutdown
#
interface Ethernet4/25
  description conexão Peer-Keepalive
  vrf member vpc
  ip address 192.168.56.6/24
  no shutdown

Switch de Acesso

#Switch de Acesso
interface port-channel5
  switchport mode trunk
  speed 10000
#
interface Ethernet1/5
   switchport mode trunk
  spanning-tree port type network
  channel-group 5 mode active
  no shutdown
#
interface Ethernet1/6
   switchport mode trunk
  spanning-tree port type network
  channel-group 5 mode active
  no shutdown
#

Outputs

N7K2-vdc5# show vpc
Legend:
(*) - local vPC is down, forwarding via vPC peer-link
vPC domain id : JK
Peer status : peer adjacency formed ok
vPC keep-alive status : peer is alive
Configuration consistency status : success
Per-vlan consistency status : success
Type-2 inconsistency reason : success
vPC role : primary
Number of vPCs configured : 2
Peer Gateway : Disabled
Dual-active excluded VLANs : -
Graceful Consistency Check : Enabled
Auto-recovery status : Disabled
vPC Peer-link status
---------------------------------------------------------------------
id Port Status Active vlans
-- ---- ------ --------------------------------------------------
1 Po56 up 2,P0,Q0
vPC status
----------------------------------------------------------------------
id Port Status Consistency Reason Active vlans
-- ---- ------ ----------- ------ ------------
5 PoP up success success 1,50,60

N7K2-vdc5# show vpc peer-keepalive
vPC keep-alive status : peer is alive
--Peer is alive for : (54) seconds, (92) msec
--Send status : Success
--Last send at : 2013.04.17 15:13:49 384 ms
--Sent on interface : Eth4/20
--Receive status : Success
--Last receive at : 2013.04.17 15:13:48 877 ms
--Received on interface : Eth4/20
--Last update from peer : (0) seconds, (940) msec
vPC Keep-alive parameters
--Destination : 192.168.56.6
--Keepalive interval : 1000 msec
--Keepalive timeout : 5 seconds
--Keepalive hold timeout : 3 seconds
--Keepalive vrf : vpc
--Keepalive udp port : 3200
--Keepalive tos : 192

Até logo!

ARQUITETO(A) DE SOLUÇÕES EM CLOUD – TASSYA VENTURA FRIGIERI – PODCAST #7

Nesse bate-papo tivemos a honra de conversar com a Tassya Ventura Frigieri. Ela compartilhou conosco a sua experiencia no desenvolvimento de negócios em Cloud, trabalhando nos principais Provedores do mercado.

BGP AFI / SAFI

O MP-BGP (Multiprotocol BGP) é uma extensão do BGP que permite ao protocolo transportar informações de roteamento para endereços de rede (unicast e multicast) e address families.

Quando o MP-BGP está configurado, o BGP instala as rotas MP-BGP em diferentes tabelas de roteamento. Cada tabela de roteamento é identificada pela familia do protocolo Address Family Indicator (AFI) e Subsequent Address Family Identifier (SAFI). A lista fornecida pelo IANA pode ser encontrada abaixo:

Address Family Identifiers (AFI)
http://www.iana.org/assignments/address-family-numbers/address-family-numbers.xhtml

Subsequent Address Family Identifier (SAFI)
http://www.iana.org/assignments/safi-namespace

Segue abaixo alguns exemplos da combinação AFI, SAFI:

AFI=1, SAFI=1, IPv4 unicast
AFI=1, SAFI=2, IPv4 multicast
AFI=1, SAFI=128, L3VPN IPv4 unicast
AFI=1, SAFI=129, L3VPN IPv4 multicast
AFI=2, SAFI=1, IPv6 unicast
AFI=2, SAFI=2, IPv6 multicast
AFI=25, SAFI=65, BGP-VPLS/BGP-L2VPN

Para novas implementações como BGP EVPN, o NLRI utiliza o AFI 25 reservado para L2VPN e o SAFI 70 para BGP EVPNs. A partir daí os vendors podem incluir novas implementações que desejarem em seus OS, para transporte de quaisquer endereços utilizando o BGP.

Resumindo…

O AFI é compartilhado entre roteadores BGP pares durante a messagem OPEN como parte do MP-BGP capabilities extension. É utilizado para descrever a o protocolo de rede associado com o endereço de rede enviado durante a mensagem BGP Update com o NLRI. O SAFI provê informações adicionais sobre o tipo de NRLI anunciado.

Referências

https://www.juniper.net/documentation/en_US/junos15.1/topics/usage-guidelines/routing-enabling-multiprotocol-bgp.html
https://supportforums.cisco.com/discussion/10616871/bgp-afisafi-numbers
http://www.iana.org/assignments/address-family-numbers/address-family-numbers.xhtml
http://www.iana.org/assignments/safi-namespace/safi-namespace.xhtml
https://thebetternetwork.wordpress.com/2015/02/12/bgp-address-family-identifiers-afi-and-subsequent-address-family-identifiers-safi/

Atributos RADIUS VSAs

Os atributos RADIUS do IETF são utilizados para comunicação AAA entre cliente e servidor de acordo com a RFCS 2865 e 2866 para o protocolo. O cliente e servidor RADIUS devem aceitar os parâmetros de acordo com a RFC, para uma comunicação adequada.

Os atributos específicos dos fabricantes (RADIUS Vendor-Specific Attributes), chamados de VSAs, derivam do atributo IETF número 26, destinado para os fabricantes utilizarem as funções do RADIUS de acordo com seus produtos. O padrão permite liberdade para integração do RADIUS com funcionalidades proprietárias dos vendors, mas dificulta a integração com os fabricantes concorrentes. Esses VSAs são inseridos dentro do atributo 26.

Formato do Pacote RADIUS

Cada pacote RADIUS contém as seguintes informações:

  • Code – O campo code contém um 8-bit e define os seguintes tipos de pacotes RADIUS:
    • Access-Request (1)
    • Access-Accept (2)
    • Access-Reject (3)
    • Accouting-Request (4)
    • Accouting-Response (5)
  • Identifier – O campo identifier possui 8-bit e ajuda o servidor RADIUS a identificar a resposta para a determinada requisição. Imaginando que hajam vários pacotes RADIUS trafegando pela rede, o valor da resposta será igual ao valor da requisição ao servidor RADIUS.
  • Lenght – Campo com 16-bit que especifica o tamanho de todo o pacote.
  • Authenticator – Campo de 16-bit. Os valores incluídos neste campo do pacote são utilizados para autenticar as respostas do servidor RADIUS e também são utilizados no algoritmo de ocultação de senhas.
  • Attributes: O campo de Atributos é responsável por carregar informações específicas de autenticação e de autorização, como os detalhes específicos de uma dada requisição ou de uma dada resposta. Dentre os tipos de informações contidas, podemos citar o nome do usuário a ser autenticado, o conjunto de AV pairs, entre outros.

Pulando já para o processo final de autenticação, se o ‘username’ é encontrado na base de dados e a senha é autenticada, o servidor RADIUS retornará a mensagem Access-Accept para o cliente. O Access-Accept carrega a lista de AV pairs que descrevem os parâmetros usados para a sessão. Os atributos podem incluir informações padrão como service-type (Shell ou Framed), protocol type, o IP do cliente, etc; como podem também conter os vendors-specific attributes (Attribute 26).

Na prática, em network, há soluções que incluem envio de URLs dinâmicas para autenticação de usuários com 802.1x, politicas de NAC, níveis diferentes de autorização para gerenciamento de equipamentos dos dispositivos de rede, etc.

Referências

https://www.vivaolinux.com.br/artigo/FreeRADIUS-Conceitos-Basicos-Parte-II
http://www.diegomacedo.com.br/radius/
http://www.cisco.com/c/en/us/td/docs/ios/12_2/security/configuration/guide/fsecur_c/scfrdat1.html
Network Security Technologies and Solutions – Yusuf Bhaiji – Cisco Press 2008

5 ERROS COMETIDOS NA CONFIGURAÇÃO DO SPANNING-TREE

No vídeo descrevemos os 5 (cinco) erros geralmente cometidos na configuração do Spanning-Tree.

O conteúdo oferece boas dicas sobre como evitar os erros comuns na configuração do Spanning-Tree, fornecendo orientações úteis para solucionar problemas.

As 8 principais funcionalidades de segurança para switches

Existem inúmeras vulnerabilidades nos switches Ethernet e as ferramentas de ataque para explorá-los estão disponíveis há mais de uma década (talvez duas!). Um atacante pode desviar qualquer tráfego para seu próprio PC para quebrar a confidencialidade, privacidade ou a integridade desse tráfego.

A maioria das vulnerabilidades são inerentes aos protocolos da Camada 2 (enlace de dados, do modelo de referência OSI) e não somente aos switches. Se camada a de enlace de dados estiver comprometida, é mais fácil criar ataques em protocolos das camadas superiores usando técnicas comuns como ataques de man-in-the-middle (MITM) para coleta e manipulação do conteúdo.

Para explorar as vulnerabilidades da camada 2, um invasor deve possuir um dispositivo mesma rede local do alvo. Se o atacante utilizar-se de outros meios de exploração, poderá conseguir um acesso remoto ou até mesmo físico ao equipamento. Uma vez dentro da rede, a movimentação lateral do atacante torna-se mais fácil para conseguir acesso aos dispositivos ou ao tráfego desejado.

No vídeo descrevemos as 8 (oito) principais funcionalidades de segurança para switches.

COMO ESCOLHER UM SWITCH DE REDE?

O mercado de TI oferece uma grande variedade de modelos de switches para os mais diversos fins.

Nesse video montamos uma lista de itens que pode te ajudar a qualificar o equipamento adequado com alguns simples pontos.

– Perfil do equipamento;
– Definir os ativos que conectarão ao Switch;
– Infra;
– Funcionalidades;
– Throughput;
– Integração com os equipamentos de outros fabricantes da rede ;
– Profissionais capacitados na equipe para gerenciamento;
– Troubleshooting;
– Robustez/ Credibilidade do fabricante / Garantia;
– Custo $$$;