fbpx

Configurando L2VPN com SRv6 em Huawei: Mãos na Massa com SRv6 


Bem-vindos, caros leitores e entusiastas de redes! Se você chegou até aqui, é porque já sobreviveu à teoria do SRv6 (Segment Routing IPv6) nos nossos dois primeiros artigos. Se ainda não conferiu, recomendo dar uma olhada neles para não se sentir perdido como um pacote sem roteador.
Afinal, ninguém quer ser o pacote perdido na rede, certo? 

Nos primeiros capítulos da nossa saga SRv6, mergulhamos nos conceitos e na teoria por trás do protocolo. Se por acaso você não lembra, dê um pulo lá e revise os artigos: 

https://made4it.com.br/srv6-um-sucessor-do-mpls/
https://made4it.com.br/srv6-um-sucessor-do-mpls-parte-2/

Agora, chegou a hora de sujar as mãos e ver como tudo isso funciona na prática. É como construir uma Millennium Falcon de LEGO depois de ler o manual de instruções. Vamos juntos montar essa estrutura passo a passo! 
Prepare seus terminais, afivele seus cintos e vamos decolar nesse laboratório de configuração básica de SRv6.  
Se você está pronto para transformar teoria em prática e dominar mais uma habilidade de Jedi das redes, venha comigo! 

O laboratório 

O objetivo do laboratório é criar uma simples topologia com SRv6, usando ISIS como IGP e o BGP para sinalizar a L2VPN.  
Utilizaremos o SID “END-DX2” para transportar a L2VPN dentro do nosso ambiente SRv6. 

Para nosso laboratório estamos utilizando 6 roteadores Huawei NE40E-M2K (V800R022C10SPC500), atuando como nós da rede Segment-Routing IPv6. 
Também temos 2 roteadores Mikrotik (RouterOS 7.6), simulando os CEs da rede. 


Topologia física:



Topologia com endereçamento IPv6:


Topologia com serviços:



Vemos nas topologias que certamente alguém gosta muito de café.  
 
Sem mais delongas, vamos ao que interessa. 


Roadmap de configuração 

  • Task 1: Configurar IS-IS em todos os routers. 
  • Task 2: Configurar Loopbacks com suporte a IS-IS. 
  • Task 3: Configurar redes de enlace com suporte a IS-IS. 
  • Task 4:  Habilitar SRv6 globalmente  
  • Task 5: Configurar BGP com suporte a L2VPN nos PEs 
  • Task 6: Criar VPN VPWS e SID End.DX2 no R1 e R6.  
  • Task 7: Vincular a EVPL a interfaces com os CEs 
  • Task 8: Verificações 


Easy Peasy.  


Task 1:  Configurar IS-IS em todos os routers.  
 
Primeiro, configuramos o IS-IS como protocolo de roteamento de nível 2 em todos os roteadores, habilitando IPv6. 
 
R1: 

system-view 
isis 1 
is-level level-2 
cost-style wide 
network-entity 10.0000.0000.0001.00 
# 
ipv6 enable topology ipv6 
# 



R2:

system-view 
isis 1 
is-level level-2 
cost-style wide 
network-entity 10.0000.0000.0002.00 
#  
ipv6 enable topology ipv6 
# 

Siga a configuração dos demais roteadores conforme documentação.


Task 2: Configurar Loopbacks com suporte a IS-IS  
 
Configure as interfaces Loopback em cada roteador com endereços IPv4 e IPv6 e habilite o IS-IS. 



R1: 

system-view 
interface LoopBack0 
ipv6 enable 
ip address 10.1.1.1 255.255.255.255 
ipv6 address 2001:DB8:C0CA::1/128 
isis ipv6 enable 1 
# 


R2:

system-view 
interface LoopBack0 
ipv6 enable 
ip address 10.1.1.2 255.255.255.255 
ipv6 address 2001:DB8:C0CA::2/128 
isis ipv6 enable 1 
# 



Siga a configuração dos demais roteadores conforme documentação.  

Task 3:  Configurar redes de enlace com suporte a IS-IS 
 
Configure as interfaces Ethernet interconectadas entre os roteadores com endereços IPv6 e habilite o IS-IS. 


R1 – Ethernet3/0/1- Conectada ao roteador R2.  

system-view 
interface Ethernet3/0/1 
description Connected to Eth3/0/1 - R2 
undo shutdown 
ipv6 enable 
ipv6 address 2001:DB8:CADE:CAFE:1:2:0:1/96 
isis ipv6 enable 1 
# 



R1 – Ethernet3/0/3 – Conectada ao roteador R3. 

system-view  
interface Ethernet3/0/3  
description Connected to Eth3/0/3 - R3  
undo shutdown  
ipv6 enable
ipv6 address 2001:DB8:CADE:CAFE:1:3:0:1/96  
isis ipv6 enable 1 
#

Siga a configuração dos demais roteadores conforme documentação. 

Task 4: Habilitar SRv6 globalmente 

 
Configure o SRv6 em cada roteador, definindo endereços de origem e locators, e integrando-os ao IS-IS


R1:

system-view 
segment-routing ipv6 
encapsulation source-address 2001:DB8:C0CA::1 
locator R1 ipv6-prefix 2001:DB8:1:1:: 64 static 32 
# 
isis 1 
segment-routing ipv6 locator R1 
# 
#

R2: 

system-view 
segment-routing ipv6 
encapsulation source-address 2001:DB8:C0CA::2 
locator R2 ipv6-prefix 2001:DB8:2:2:: 64 static 32 
# 
isis 1 
segment-routing ipv6 locator R2 
# 
# 


Siga a configuração dos demais roteadores conforme documentação. 

Task 5: Configurar BGP com suporte a L2VPN nos PEs 
 
Configure o BGP com EVPN e suporte a L2VPN nos roteadores de borda (R1 e R6), criando sessões BGP entre eles. 

R1:

system-view 
evpn source-address 10.1.1.1 
bgp 65000 
router-id 10.1.1.1 
peer 2001:DB8:C0CA::6 as-number 65000 
peer 2001:DB8:C0CA::6 connect-interface LoopBack0 
# 
l2vpn-family evpn 
undo policy vpn-target 
peer 2001:DB8:C0CA::6 enable 
y 
peer 2001:DB8:C0CA::6 advertise encap-type srv6 
#


R6:

system-view 
evpn source-address 10.1.1.6 
bgp 65000 
router-id 10.1.1.6 
peer 2001:DB8:C0CA::1 as-number 65000 
peer 2001:DB8:C0CA::1 connect-interface LoopBack0 
# 
l2vpn-family evpn 
undo policy vpn-target 
peer 2001:DB8:C0CA::1 enable 
y 
peer 2001:DB8:C0CA::1 advertise encap-type srv6 
# 

Task 6: Criar EVPN/EVPL e SID End.DX2 nos PEs 

Configure as instâncias EVPN/EVPL e associe os locators SRv6 apropriados nos roteadores de borda.


R1:

system-view 
evpn vpn-instance evrf1 vpws 
route-distinguisher 100:1 
segment-routing ipv6 best-effort 
vpn-target 1:1 export-extcommunity 
vpn-target 1:1 import-extcommunity 
# 
evpl instance 1 
evpn binding vpn-instance evrf1 
local-service-id 100 remote-service-id 200 
segment-routing ipv6 locator R1 
# 
segment-routing ipv6 
locator R1 
opcode ::A end-dx2 evpl-instance 1 
# 



R6:

system-view 
evpn vpn-instance evrf1 vpws 
route-distinguisher 200:1 
segment-routing ipv6 best-effort 
vpn-target 1:1 export-extcommunity 
vpn-target 1:1 import-extcommunity
# 
evpl instance 1 
evpn binding vpn-instance evrf1 
local-service-id 200 remote-service-id 100 
segment-routing ipv6 locator R6 
# 
segment-routing ipv6 
locator R6 
opcode ::A end-dx2 evpl-instance 1 
#


Task 7: Vincular a EVPL a interfaces com os CEs 
 

Associe as instâncias EVPL às interfaces conectadas aos roteadores clientes (CEs). 
 

R1: 

interface Ethernet3/0/4 
description Connected to CE1 
undo shutdown 
evpl instance 1 
# 

R6:  

system-view 
interface Ethernet3/0/4 
description Connected to CE2 
evpl instance 1 
# 


Task 8: Verificações  
Após configurado, vamos fazer algumas verificações das tecnologias envolvidas: 

8.1: Adjacências do IGP.  
Confirme as adjacências do IS-IS entre os roteadores. 





8.2: Tabela de rotas do IS-IS.  
Abaixo, a saída da tabela de rotas do roteador R1:


Algo legal que notamos aqui é rotas para os prefixos de “Locator” (/64).  
Ou seja, o ambiente já conhece na sua tabela de rotas o prefixo usado para o SRv6 de cada um dos nodes da topologia 😊


8.3: Tabela BGP “EVPN” do roteador R1, para assegurar que temos sessão entre o R1 e R6, necessários para o VPWS.

Vemos que o R1 possui uma sessão com o roteador R6 estabelecida e funcional. A tabela de roteamento do R1 também mostra um ESI para o R6 no RD 200:1. Até aqui, tudo preparado para o ambiente transitar a VPWS.  

8.4: EVPL no roteador R1 e R6. Abaixo, a saída do roteador R1.



Vemos no R1 que a EVPL está UP, e o túnel utilizado para transitar os pacotes dentro da rede é do tipo “SRv6-BE” (Segment Routing IPv6 – Best Effort).  
Isso indica que a VPWS está fechada e funcional entre o head-end e tail-end e também que o túnel de transporte entre os PEs é usando o SRv6.

8.5: Tabela local de SIDs do roteador R1:

Olhando para a tabela local de SIDs alocados ao R1, vemos não só o SID configurado para a VPWS mas também alguns SIDs do tipo “END” e do tipo “END.X”.  
 
O que realmente interessa para nós neste momento é o SID “End.DX2” que diz que qualquer coisa enviada para o endereço IPv6 2001:db8:1:1::a/128 será entregue na nossa VPWS.  
Caso tenha curiosidade do que se trata os demais SIDs, fique ligado nos próximos posts do blog 😀

8.6: Configuração e comunicação dos CEs.  
 
Interfaces dos CEs 1 e 2, com um endereço IPv4 para comunicação.


Tabela ARP do CE1 e um “ping” com destino ao CE2, confirmando conectividade entre os CEs.


Neighbors LLDP no CE1, mostrando o caminho sendo “Transparente” do ponto de vista dos CEs.


8.7: Enquanto o CE1 esta trocando “pings” com o CE2, uma captura de pacotes na interface do roteador R1 com destino ao restante da rede SRv6 tem a seguinte saída:

Os pacotes da EVPN são encapsulados e, ao serem encaminhados a rede SRv6, o “destination address” se torna o 2001:db8:6:6::A, sendo este o “SID” END.DX2”.  
 
O mais interessante do SRv6 é o fato desse pacote ser “IPv6”. Caso o nosso ambiente contivesse apenas os PEs com suporte a SRv6, o restante da rede saberia encaminhar o tráfego sem problema algum 😊


Resumo 

Neste laboratório, exploramos a configuração de um túnel L2VPN utilizando SRv6, mostrando as configurações básicas de cada dispositivo.  
O SRv6, com suas capacidades avançadas, demonstra ser uma tecnologia promissora para as redes do futuro. Para explorar mais sobre a aplicação do SRv6 em sua rede, conte com a Made4IT, especialista no assunto. Podemos te ajudar no processo de migração de MPLS para SRv6, trabalhando na coexistência desses protocolos. 


Configurações completas 

Baixe este laboratório completo, com topologias, configurações e roadmap aqui:


Autores:  
Gabriel Henrique, Analista de Redes e Projetos na Made4it. 
Rafael Ganascim, Co-Founder da Made4it.
  

Deixe um comentário

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *