В данной статье мы построим RSVP туннель между маршрутизаторами находящимися в разных IGP доменах.
Используется следующая схема стенда:
На каждом маршрутизаторе настроены IGP, включена поддержка TE и указан TE router ID:
Блок кода |
---|
|
router isis test
interface loopback 1
address-family ipv4 unicast
exit
passive
exit
interface tengigabitethernet 0/0/7
address-family ipv4 unicast
bfd fast-detect
exit
point-tТак же на всех маршрутизаторах есть базовая конфигурация MPLS, а на R4 и R5 сконфигурированы RSVP туннели:
o-point
exit
host-name R4_ISIS
ipv4-te-level level-2 <----- Включает поддержку TE на level-2
net 01.0000.0000.0000.0000.00
te-router-id 1.1.1.4 <
exit
|
Блок кода |
---|
|
router ospfv2 test
area 0.0.0.0
interface loopback 1
passive
exit
interface tengigabitethernet 0/0/7
bfd fast-detect
network point-to-point
te-support <----- Включает поддержку TE на интерфейсе
exit
exit
router-id 1.1.1.5
te-router-id 1.1.1.5 <
exit |
Блок кода |
---|
|
router isis test
interface loopback 1
address-family ipv4 unicast
exit
passive
exit
interface tengigabitethernet 0/0/4
address-family ipv4 unicast
bfd fast-detect
exit
point-to-point
exit
host-name R7_ISIS
ipv4-te-level level-2 <----- Включает поддержку TE на level-2
net 01.0000.0000.0000.0001.00
te-router-id 1.1.1.7 <
exit
router ospfv2 test
area 0.0.0.0
interface loopback 1
passive
exit
interface tengigabitethernet 0/0/5 <----- Включает поддержку TE на интерфейсе
bfd fast-detect
network point-to-point
te-support
exit
exit
router-id 1.1.1.7
te-router-id 1.1.1.7 <
exit |
Так же на всех маршрутизаторах есть базовая конфигурация MPLS, а на R4 и R5 сконфигурированы RSVP туннели:
Блок кода |
---|
|
mpls
forwarding
interface loopback 1
interface tengigabitethernet 0/0/7
exit
router-id 1.1.1.4
rsvp
interface tengigabitethernet 0/0/7
bfd fast-detect
exit
l3vpn
tunnel R4_to_R5
destination 1.1.1.5
forwarding-adjacency
record-route
routing-adjacency
source 1.1.1.4
tunnel-lsp R4_to_R5
retry-timer 100
exit
exit
tunnel R4_to_R7
destination 1.1.1.7
forwarding-adjacency
record-route
routing-adjacency
source 1.1.1.4
tunnel-lsp R4_to_R7
retry-timer 100
exit
exit
exit
exit |
Блок кода |
---|
|
mpls
forwarding
interface loopback 1
interface tengigabitethernet 0/0/7
exit
router-id 1.1.1.5
rsvp
interface tengigabitethernet 0/0/7
bfd fast-detect
exit
l3vpn
tunnel R5_to_R4
destination 1.1.1.4
forwarding-adjacency
record-route
routing-adjacency
source 1.1.1.5
tunnel-lsp R5_to_R4
retry-timer 100
exit
exit
tunnel R5_to_R7
destination 1.1.1.7
forwarding-adjacency
igp-shortcut
record-route
routing-adjacency
source 1.1.1.5
tunnel-lsp R5_to_R7
retry-timer 100
exit
exit
exit
exit |
Блок кода |
---|
|
mpls
forwarding
interface loopback 1
interface tengigabitethernet 0/0/4
interface tengigabitethernet 0/0/5
exit
router-id 1.1.1.7
rsvp
interface tengigabitethernet 0/0/4
bfd fast-detect
exit
interface tengigabitethernet 0/0/5
bfd fast-detect
exit
l3vpn
exit
exit |
С текущей конфигурацией мы видим, что туннели R4<->R7 и R5<->R7 построились, а R4<->R5 находятся в состоянии down:
Блок кода |
---|
0/ME5200:R5# show mpls rsvp tunnels
Mon Feb 26 09:28:52 2024
Tunnel name Source Destination Status State Up time
--------------------------------- ----------------- ----------------- ------- ----------------- --------
R5_to_R4 1.1.1.5 1.1.1.4 up down 00h00m00s
R5_to_R7 1.1.1.5 1.1.1.7 up up 00h30m07s
0/ME5200:R4# show mpls rsvp tunnels
Mon Feb 26 12:31:37 2024
Tunnel name Source Destination Status State Up time
--------------------------------- ----------------- ----------------- ------- ----------------- --------
R4_to_R5 1.1.1.4 1.1.1.5 up down 00h00m00s
R4_to_R7 1.1.1.4 1.1.1.7 up up 00h30m14s |
Туннели R4_to_R5 и R5_to_R4 не смогли построиться из за того, что маршрутизаторы находятся в разных IGP доменах и используют разные CSPF и teDB процессы.
Для того чтобы туннель построился - создадим Explicit-Path:
Блок кода |
---|
title | Пример Explicit-Path |
---|
|
mpls
rsvp
explicit-path viaR7
explicit-route-object 10
ip-prefix 1.1.1.7 <----- Указываем в качестве hop - router id\loopback маршрутизатора R7
loose
exit |
И привяжем данный explicit-path к lsp:
Блок кода |
---|
mpls
rsvp
tunnel R5_to_R4
destination 1.1.1.4
forwarding-adjacency
record-route
routing-adjacency
source 1.1.1.5
tunnel-lsp R5_to_R4
path-computation explicit path viaR7
retry-timer 100
exit
exit
exit
exit |
LSP пытается построиться используя только свой CSPF
С помощью explicit-path мы указали в качестве ERO маршрутизатор R7,
В нашем случае, так как Destination находится в другом CSPF, LSP построится до R7 согласно своему CSPF, затем достроится до Destination используя CSPF указанного ERO.
После добавления explicit-path туннель успешно построился:
Блок кода |
---|
|
0/ME5200:R5# show mpls rsvp tunnels
Mon Feb 26 09:52:14 2024
Tunnel name Source Destination Status State Up time
--------------------------------- ----------------- ----------------- ------- ----------------- --------
R5_to_R4 1.1.1.5 1.1.1.4 up up 00h04m50s
R5_to_R7 1.1.1.5 1.1.1.7 up up 00h53m28s
0/ME5200:R5# show mpls rsvp lsps tunnel R5_to_R4
Mon Feb 26 10:06:32 2024
Tunnel: R5_to_R4, id: 4
LSP name: R5_to_R4, signaled-name: R5_to_R4@R5_to_R4, id: 1, Source: 1.1.1.5, Destination: 1.1.1.4
State: up, Protection role: working
Direction: ingress, Node protect: disabled, Bandwidth protection requirement: disabled
Carrying the normal traffic after protection switching: no
Protected by a fast reroute: none
Downstream repaired: yes
Path recording is desired
SE Style is desired
LSP rerouting is none
OAM MEP entities are not desired
OAM MIP entities are not desired
Downstream information:
Next hop: 192.168.0.1
Signaling interface: Tengigabitethernet0/0/7
Neighbor: 192.168.0.1
Label: 18, type: mpls-label
Incoming ERO Outgoing ERO
---------------------------- ----------------------------
hop0 1.1.1.7/32 (lose) 192.168.0.1/32
hop1 1.1.1.7/32 (lose)
Incoming RRO Outgoing RRO
----------------- -----------------
hop0 192.168.0.1 192.168.0.1
hop1 Label 18 Label 18
hop2 10.0.0.0 10.0.0.0
hop3 Label 3 Label 3
|