1 Cenário
1.1 Objetivo
Sete roteadores (CE1, PE1, P, PE2, CE2, CE3 e CE4) são conectados formando o seguinte cenário:
• O protocolo de roteamento do backbone deverá ser o OSPF na área 0 com todas as interfaces divulgadas;
• Os roteadores CE1, CE2, CE3 e CE4 fazem parte da mesma VPN VRF chamada RED onde o RD e RT é a escolher;
• O roteamento dentro da VPN deverá ser com RIP versão 2 redistribuído para o MBGP;
• Existe uma conectivdade direta entre o CE3 e o CE4 que deverá ter RIPv2;
• O tráfego entre os CEs conectados ao PE1 e os CEs conectados ao PE2 deverá ser encaminhado preferencialmente pelo roteamento RIP e como redundância pelo backbone usando túnel TE sem uso de LDP;
1.2 Topologia
1.3 IOS utilizados
• CE1, CE3, PE1, P, PE2, CE2 e CE4 – c7200-k91p-mz.122-25.S15.bin
1.4 Configuração dos Roteadores
1.4.1 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.2 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.3 Configurações do Túnel de TE
Para configurar um túnel MPLS TE inicialmente cria-se a interface túnel com o comando “interface tunnel ”, dentro da interface adiciona-se um endereçamento IP, geralmente usa-se um endereço da loopback com o comando “ip unnumbered Loopback0”. Em seguida configura-se o IP do roteador de destino para o fechamento do túnel com o comando “tunnel destination ”. Aplica-se então o modo de túnel como MPLS com TE com o comando “tunnel mode mpls traffic-eng”, e após, habilita-se o caminho pelo túnel com o comando “tunnel mpls traffic-eng path-option dynamic ”, onde o “dynamic” pode também ser “explict” que define um caminho específico.
Para o uso do MPLS TE aplica-se globalmente o comando “mpls traffic-eng tunnels”, em todas as interfaces, inclusive a interface tunnel, adiciona-se o comando “mpls traffic-eng tunnels”, esse comando permite a sinalização de TE nas interfaces.
No OSPF, como no ISIS, deve-se configurar o Router-ID do TE com comando “mpls traffic-eng router-id Loopback0” e depois adicionar a area do OSPF no TE com o comando “mpls traffic-eng area 0”.
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 Habilitando o RIP dentro da VPN VRF
O protocolo RIP normalmente é configurado com o comando “router rip”, para que ele funcione dentro de uma vrf cria-se ima address-family da vrf dentro do protocolo com o comando “address-family ipv4 vrf ”. Dentro da address-family configuram-se os parâmetros do RIP.
1.5 Observações e Bugs
Documentação:
1.6 Comandos Importantes de Verificação
PE1#sh ip route vrf RED
Routing Table: RED
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, E - EGP
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 not set
172.16.0.0/16 is variably subnetted, 9 subnets, 2 masks
R 172.16.40.0/24 [120/2] via 172.16.3.2, 00:00:20, Serial1/3
R 172.16.30.0/24 [120/1] via 172.16.3.2, 00:00:20, Serial1/3
R 172.16.20.0/24 [120/4] via 172.16.3.2, 00:00:20, Serial1/3
R 172.16.10.0/24 [120/1] via 172.16.1.2, 00:00:04, Serial1/0
R 172.16.4.0/30 [120/2] via 172.16.3.2, 00:00:20, Serial1/3
R 172.16.5.0/30 [120/1] via 172.16.3.2, 00:00:20, Serial1/3
C 172.16.1.0/30 is directly connected, Serial1/0
R 172.16.2.0/30 [120/3] via 172.16.3.2, 00:00:20, Serial1/3
C 172.16.3.0/30 is directly connected, Serial1/3
PE2#sh ip route vrf RED
Routing Table: RED
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, E - EGP
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 not set
172.16.0.0/16 is variably subnetted, 9 subnets, 2 masks
R 172.16.40.0/24 [120/1] via 172.16.4.2, 00:00:28, Serial1/3
R 172.16.30.0/24 [120/2] via 172.16.4.2, 00:00:28, Serial1/3
R 172.16.20.0/24 [120/1] via 172.16.2.2, 00:00:08, Serial1/0
R 172.16.10.0/24 [120/4] via 172.16.4.2, 00:00:28, Serial1/3
C 172.16.4.0/30 is directly connected, Serial1/3
R 172.16.5.0/30 [120/1] via 172.16.4.2, 00:00:28, Serial1/3
R 172.16.1.0/30 [120/3] via 172.16.4.2, 00:00:28, Serial1/3
C 172.16.2.0/30 is directly connected, Serial1/0
R 172.16.3.0/30 [120/2] via 172.16.4.2, 00:00:28, Serial1/3
2 Configuração
2.1 CE1
!
interface FastEthernet0/0
ip address 172.16.10.1 255.255.255.0
!
interface Serial1/0
ip address 172.16.1.2 255.255.255.252
!
router rip
version 2
network 172.16.0.0
no auto-summary
!
2.2 CE3
!
interface FastEthernet0/0
ip address 172.16.30.1 255.255.255.0
!
interface Serial1/0
ip address 172.16.3.2 255.255.255.252
!
interface Serial1/1
ip address 172.16.5.1 255.255.255.252
!
router rip
version 2
network 172.16.0.0
no auto-summary
!
2.3 PE1
ip cef
!
ip vrf RED
rd 1:1
route-target export 1:1
route-target import 1:1
!
mpls traffic-eng tunnels
mpls label protocol ldp
!
!
interface Tunnel12
ip unnumbered Loopback0
tunnel destination 10.10.10.102
tunnel mode mpls traffic-eng
tunnel mpls traffic-eng autoroute announce
tunnel mpls traffic-eng path-option 1 dynamic
!
interface Loopback0
ip address 10.10.10.101 255.255.255.255
!
interface Serial1/0
ip vrf forwarding RED
ip address 172.16.1.1 255.255.255.252
!
interface Serial1/1
ip address 10.10.10.1 255.255.255.252
mpls traffic-eng tunnels
ip rsvp bandwidth
!
interface Serial1/3
ip vrf forwarding RED
ip address 172.16.3.1 255.255.255.252
!
router ospf 1
router-id 10.10.10.101
network 10.0.0.0 0.255.255.255 area 0
mpls traffic-eng router-id Loopback0
mpls traffic-eng area 0
!
router rip
address-family ipv4 vrf RED
redistribute bgp 1 metric transparent
network 172.16.0.0
no auto-summary
version 2
!
router bgp 1
bgp router-id 10.10.10.101
neighbor 10.10.10.102 remote-as 1
neighbor 10.10.10.102 update-source Loopback0
!
address-family vpnv4
neighbor 10.10.10.102 activate
neighbor 10.10.10.102 send-community extended
!
address-family ipv4 vrf RED
redistribute rip
!
2.4 P
!
mpls traffic-eng tunnels
mpls label protocol ldp
!
!
interface Loopback0
ip address 10.10.10.200 255.255.255.255
!
interface Serial1/1
ip address 10.10.10.2 255.255.255.252
mpls traffic-eng tunnels
ip rsvp bandwidth
!
interface Serial1/2
ip address 10.10.10.6 255.255.255.252
mpls traffic-eng tunnels
ip rsvp bandwidth
!
router ospf 1
router-id 10.10.10.200
network 10.0.0.0 0.255.255.255 area 0
mpls traffic-eng router-id Loopback0
mpls traffic-eng area 0
!
2.5 PE2
!
ip cef
!
ip vrf RED
rd 1:1
route-target export 1:1
route-target import 1:1
!
mpls traffic-eng tunnels
mpls label protocol ldp
!
!
interface Tunnel12
ip unnumbered Loopback0
tunnel destination 10.10.10.101
tunnel mode mpls traffic-eng
tunnel mpls traffic-eng autoroute announce
tunnel mpls traffic-eng path-option 1 dynamic
!
interface Loopback0
ip address 10.10.10.102 255.255.255.255
!
interface Serial1/0
ip vrf forwarding RED
ip address 172.16.2.1 255.255.255.252
!
interface Serial1/2
ip address 10.10.10.5 255.255.255.252
mpls traffic-eng tunnels
ip rsvp bandwidth
!
interface Serial1/3
ip vrf forwarding RED
ip address 172.16.4.1 255.255.255.252
!
router ospf 1
router-id 10.10.10.102
network 10.0.0.0 0.255.255.255 area 0
mpls traffic-eng router-id Loopback0
mpls traffic-eng area 0
!
router rip
address-family ipv4 vrf RED
redistribute bgp 1 metric transparent
network 172.16.0.0
no auto-summary
version 2
!
router bgp 1
bgp router-id 10.10.10.102
neighbor 10.10.10.101 remote-as 1
neighbor 10.10.10.101 update-source Loopback0
!
address-family vpnv4
neighbor 10.10.10.101 activate
neighbor 10.10.10.101 send-community extended
!
address-family ipv4 vrf RED
redistribute rip
!