sábado, 11 de dezembro de 2010

VPN - Inter-AS Opção A


1      Cenário

1.1       Objetivo

Oito roteadores (CE1, PE1, P1, PE2, PE3, P2, PE4 e CE2) são conectados formando dois backbones com 3 roteadores e um CE conectado. Pede-se:
      O protocolo de roteamento de backbone PE1-P1-PE2 deverá ser o OSPF na área 0 com todas as interfaces divulgadas e com mBGP e LDP no AS 1 para tráfego das vpns VRFs. O Router-reflector deverá ser o P1;
      O protocolo de roteamento de backbone PE1-P1-PE2 deverá ser o ISIS na área 49.0001 com todas as interfaces divulgadas e com mBGP e LDP no AS 2 para tráfego das vpns VRFs. O Router-reflector deverá ser o P2;
      Tanto o CE1 quanto o CE2 deverão pertencer a VRF BLUE e deverá existir conectividade entre esses CEs usando a conexão entre os PEs PE2 e PE3 com Inter-AS Opção A.

1.2       Topologia

Figure-01:         Topologia

1.3       IOS utilizados

      CE1, PE1, P1, PE2, PE3, P2, PE4 e CE2 – c7200-k91p-mz.122-25.S15.bin

1.4       Configuração dos Roteadores

1.4.1    Configurações do ISIS do Backbone

Em todos os roteadores configura-se o roteamento ISIS adicionando o endereçamento NET de acordo com a área designada e endereçamento de loopback. Dentro das interfaces que farão parte do ISIS, adiciona-se o comando “ip router isis” para habilitar o ISIS na interface. Por padrão, todos os roteadores farão vizinhança L1/L2.
A configuração da métrica wide, maior que 63, é feita dentro do processo de roteamento pelo comando “default metric-style wide”.

1.4.2    Configurações do OSPF do Backbone

Em todos os roteadores configura-se o roteamento OSPF pelo comando “router ospf ” onde o “processo” é um numero do processo OSPF. O roteador também possui um router ID único que geralmente é a interface loopback ou então o maior endereço IP do roteador.
Para adicionar interfaces deve-se usar o comando “network
área ”. Um roteador pode ter interfaces em áreas distintas, define-se cada área pelo comando network.
Para o roteador fazer vizinhança OSPF é necessário que a rede da interface esteja no comando “network” e a interface não esteja configurada como “passive-interface”.

1.4.3    Configurações do MPLS

Antes de qualquer configuração, o Cisco Express forwarding deve ser habilitado com o comando “ip cef”. Para habilitar o MPLS no modo LDP, usa-se o comando global “mpls label protocol ldp”.

1.4.4    Configuração do MBGP

Para estabelecer uma VPN é necessário configurar o MBGP para a troca de informações de prefixos de VPN. Pode-se somente configurar o MBGP nos roteadores PEs da rede que possuem conexão com os CEs, ou seja, conectados diretamente aos sites.
O MBGP funciona como o BGP, configura-se em todos os roteadores pelo comando “router bgp onde o “AS” é o Autonomous System do backbone. Dentro da configuração de BGP adicionam-se os vizinhos estaticamente com o comando “neighbor remote-as .
Adiciona-se o IP da interface loopback como Router-ID pelo comando “bgp router-id .
Como os roteadores dentro do mesmo AS não divulgarão as rotas IBGP entre eles, faz-se o full-mesh de conexão MBGP ou configuram-se os roteadores centrais como Router-reflectors adicionando os demais roteadores como clientes pelo comando “neighbor router-reflector-client”.
O MBGP é configurado dentro do protocolo BGP, porém deve-se separar a família de roteamento com o comando “address-family vpnv4”. Para o envio de prefixos das VPNs, deve-se habilitar o envio de community extendida com o comando “neighbor send-community extended”.
Todos os recursos como route-map, next-hop-self, router-reflector, etc. podem ser configurados dentro da família VPNv4 para manipular ou resolver problemas de roteamento.

1.4.5    Criando uma VPN VRF no BGP

Após todos os roteadores PEs da rede possuem conectividade MBGP, ou diretamente ou por router-reflector, cria-se a VPN com o comando “ip vrf ”, dentro desse comando ficam os parâmentros de marcação da VPN e das communities associadas aos prefixos daquela VPN. Configura-se o Route-Distinguisher da VPN, que deve ser único na rede, com comando “rd :”, e também cria-se a  community que será exportada para aqueles prefixos de rede com o comando “route-target :”, onde “import” significa importar as rotas e “export” exportar as rotas.
Cria-se então uma address-family dentro do BGP com o comando “address-family ipv4 vrf ” com o mesmo nome da VPN criada no “ip vrf” fora do roteamento BGP. Dentro dessa address-family são configuradas as redes que serão redistribuídas para os outros sites. Para divulgar as redes é necessário que a rede exista na tabela de roteamento interna e, ou adicionar o comando “network mask ou redistribuindo rotas para o MBGP com o comando “redistribute , que pode ser vinculado à um route-map para definir exatamente as rotas que serão divulgadas de um protocolo para outros sites.
Enfim, para que uma interface conectada ao CE faça parte da VPN BGP, usa-se o comando “ip vrf forwarding ” dentro da interface.

1.4.6    Configuração do Inter-AS Opção A

A opção A do Inter-AS usa uma conexão com o backbone do outro AS como se fosse uma conexão com outro CE. O backbone não percebe a existência de um outro AS, tudo fica transparente. Caso seja usada mais de uma VPN, usa-se interfaces lógicas para a conexão.

1.5       Observações e Bugs

Documentação:

1.6       Comandos Importantes de Verificação

CE1#ping 20.20.20.2

Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 20.20.20.2, timeout is 2 seconds:
!!!!!
Success rate is 100 percent (5/5), round-trip min/avg/max = 188/216/284 ms
CE1#

2      Configuração


2.1       CE1

!
interface FastEthernet1/0
 ip address 10.10.10.1 255.255.255.0
!
ip route 0.0.0.0 0.0.0.0 10.10.10.254
!

2.2       PE1

!
ip cef
!
ip vrf BLUE
 rd 1:1
 route-target export 1:1
 route-target import 1:1
!
interface Loopback0
 ip address 1.1.1.1 255.255.255.255
!
interface FastEthernet0/0
 ip address 11.11.11.1 255.255.255.0
mpls ip
!
interface FastEthernet1/0
 ip vrf forwarding BLUE
 ip address 10.10.10.254 255.255.255.0
!
router ospf 1
 router-id 1.1.1.1
 network 1.1.1.1 0.0.0.0 area 0
 network 11.11.11.1 0.0.0.0 area 0
!
router bgp 1
 bgp router-id 1.1.1.1
 neighbor 100.100.100.100 remote-as 1
 neighbor 100.100.100.100 update-source Loopback0
 !
 address-family vpnv4
 neighbor 100.100.100.100 activate
 neighbor 100.100.100.100 send-community extended
!       
 address-family ipv4 vrf BLUE
 redistribute connected
!

2.3       P1

!
ip cef
!
interface Loopback0
 ip address 100.100.100.100 255.255.255.255
!
interface FastEthernet0/0
 ip address 12.12.12.100 255.255.255.0
 mpls ip
!
interface FastEthernet1/0
 ip address 11.11.11.100 255.255.255.0
 mpls ip
!        
router ospf 1
 router-id 100.100.100.100
 network 11.11.11.100 0.0.0.0 area 0
 network 12.12.12.100 0.0.0.0 area 0
 network 100.100.100.100 0.0.0.0 area 0
!
router bgp 1
 bgp router-id 100.100.100.100
 neighbor 1.1.1.1 remote-as 1
 neighbor 1.1.1.1 update-source Loopback0
 neighbor 2.2.2.2 remote-as 1
 neighbor 2.2.2.2 update-source Loopback0
 !
 address-family vpnv4
 neighbor 1.1.1.1 activate
 neighbor 1.1.1.1 route-reflector-client
 neighbor 1.1.1.1 send-community extended
 neighbor 2.2.2.2 activate
 neighbor 2.2.2.2 route-reflector-client
 neighbor 2.2.2.2 send-community extended
!

2.4       PE2

!
ip cef
!
ip vrf BLUE
 rd 1:1
 route-target export 1:1
 route-target import 1:1
!
!
interface Loopback0
 ip address 2.2.2.2 255.255.255.255
!
interface FastEthernet0/0
 ip vrf forwarding BLUE
 ip address 23.23.23.2 255.255.255.0
!        
interface FastEthernet1/0
 ip address 12.12.12.2 255.255.255.0
 mpls ip
!
router ospf 1
 router-id 2.2.2.2
 network 2.2.2.2 0.0.0.0 area 0
 network 12.12.12.2 0.0.0.0 area 0
!
router bgp 1
 bgp router-id 2.2.2.2
 neighbor 100.100.100.100 remote-as 1
 neighbor 100.100.100.100 update-source Loopback0
 !
 address-family vpnv4
 neighbor 100.100.100.100 activate
 neighbor 100.100.100.100 send-community extended
 exit-address-family
 !
 address-family ipv4 vrf BLUE
 redistribute connected
 redistribute static
 default-information originate
!
ip route vrf BLUE 0.0.0.0 0.0.0.0 23.23.23.3
!

2.5       PE3

!
ip cef
!
ip vrf BLUE
 rd 1:1
 route-target export 1:1
 route-target import 1:1
!
!
interface Loopback0
 ip address 3.3.3.3 255.255.255.255
 ip router isis
!
interface FastEthernet0/0
 ip address 32.32.32.3 255.255.255.0
 ip router isis
 mpls ip
!
interface FastEthernet1/0
 ip vrf forwarding BLUE
 ip address 23.23.23.3 255.255.255.0
!
router isis
 net 49.0001.3333.3333.3333.00
 is-type level-2-only
!
router bgp 2
 bgp router-id 3.3.3.3
 neighbor 200.200.200.200 remote-as 2
 neighbor 200.200.200.200 update-source Loopback0
 !
 address-family vpnv4
 neighbor 200.200.200.200 activate
 neighbor 200.200.200.200 send-community extended
!
 address-family ipv4 vrf BLUE
 redistribute connected
 redistribute static
 default-information originate
!
ip route vrf BLUE 0.0.0.0 0.0.0.0 23.23.23.2
!

2.6       P2

!
ip cef
!
interface Loopback0
 ip address 200.200.200.200 255.255.255.255
 ip router isis
!
interface FastEthernet0/0
 ip address 24.24.24.200 255.255.255.0
 ip router isis
 mpls ip
!
interface FastEthernet1/0
 ip address 32.32.32.200 255.255.255.0
 ip router isis
 mpls ip
!        
router isis
 net 49.0001.2222.2222.2222.00
 is-type level-2-only
!
router bgp 2
 bgp router-id 200.200.200.200
 neighbor 3.3.3.3 remote-as 2
 neighbor 3.3.3.3 update-source Loopback0
 neighbor 4.4.4.4 remote-as 2
 neighbor 4.4.4.4 update-source Loopback0
 !
 address-family vpnv4
 neighbor 3.3.3.3 activate
 neighbor 3.3.3.3 route-reflector-client
 neighbor 3.3.3.3 send-community extended
 neighbor 4.4.4.4 activate
 neighbor 4.4.4.4 route-reflector-client
 neighbor 4.4.4.4 send-community extended
!

2.7       PE4

!
ip cef
!
ip vrf BLUE
 rd 1:1
 route-target export 1:1
 route-target import 1:1
!
!
interface Loopback0
 ip address 4.4.4.4 255.255.255.255
 ip router isis
!
interface FastEthernet0/0
 ip vrf forwarding BLUE
 ip address 20.20.20.254 255.255.255.0
!
interface FastEthernet1/0
 ip address 24.24.24.4 255.255.255.0
 ip router isis
 mpls ip
!
router isis
 net 49.0001.4444.4444.4444.00
 is-type level-2-only
!
router bgp 2
 bgp router-id 4.4.4.4
 neighbor 200.200.200.200 remote-as 2
 neighbor 200.200.200.200 update-source Loopback0
 !
 address-family vpnv4
 neighbor 200.200.200.200 activate
 neighbor 200.200.200.200 send-community extended
!
 address-family ipv4 vrf BLUE
 redistribute connected
!

2.8       CE2

!
interface FastEthernet1/0
 ip address 20.20.20.2 255.255.255.0
!
ip route 0.0.0.0 0.0.0.0 20.20.20.254
!

Nenhum comentário: