Loop Free Alternate
Диаграмма показывает конфигурацию для функции OSPFv3 Loop Free Alternate (LFA).
Топология
Рисунок 5-89: Базовая топология OSPFv3 LFA
Конфигурация
SW1
#configure terminal | Перейти в режим конфигурации |
(config)#interface eth1 | Перейти в режим интерфейса |
(config-if)#ipv6 address 2001::1/64 | Настроить IPv6-адрес интерфейса. |
(config-if)#ipv6 router ospf area 0 tag 1 | Включить OSPFv3 на интерфейсе. |
(config-if)#exit | Выйти из режима интерфейса |
(config)#interface eth2 | Перейти в режим интерфейса |
(config-if)#ipv6 address 6001::1/64 | Настроить IPv6-адрес интерфейса |
(config-if)#ipv6 router ospf area 0 tag 1 | Включить OSPFv3 на интерфейсе |
(config-if)#ipv6 ospf cost 5 | Настроить стоимость для интерфейса |
(config-if)#exit | Выйти из режима интерфейса |
(config)#router ipv6 ospf 1 | Настроить процесс маршрутизации и указать идентификатор процесса (1 ). |
(config)#router-id 1.1.1.1 | Настроить идентификатор маршрутизатора |
(config-router)#fast-reroute keep-allpaths | Настроить LFA-FRR для расчета доступного резервного пути. |
(config-router)#end | Выйти из режима маршрутизатора |
SW2
#configure terminal | Перейти в режим конфигурации |
(config)#interface eth1 | Перейти в режим интерфейса |
(config-if)#ipv6 address 2001::2/64 | Настроить IPv6-адрес интерфейса |
(config-if)#ipv6 router ospf area 0 tag 1 | Включить OSPFv3 на интерфейсе |
(config-if)#exit | Выйти из режима интерфейса |
(config)#interface eth2 | Перейти в режим интерфейса |
(config-if)#ipv6 address 3001::2/64 | Настроить IPv6-адрес интерфейса |
(config-if)#ipv6 router ospf area 0 tag 1 | Включить OSPFv3 на интерфейсе |
(config-if)#exit | Выйти из режима интерфейса |
(config)#interface eth3 | Перейти в режим интерфейса |
(config-if)#ipv6 address 7001::2/64 | Настроить IPv6-адрес интерфейса |
(config-if)#ipv6 router ospf area 0 tag 1 | Включить OSPFv3 на интерфейсе |
(config-if)#ipv6 ospf cost 2 | Настроить стоимость для интерфейса |
(config)#router ipv6 ospf 1 | Настроить процесс маршрутизации и указать идентификатор процесса (1 ). Идентификатор процесса должен быть уникальным положительным числом, идентифицирующим процесс маршрутизации. |
(config)#router-id 2.2.2.2 | Настроить идентификатор маршрутизатора |
(config-router)#end | Выйти из режима маршрутизатора |
SW3
#configure terminal | Перейти в режим конфигурации |
(config)#interface eth1 | Перейти в режим интерфейса |
(config-if)#ipv6 address 3001::3/64 | Настроить IPv6-адрес интерфейса |
(config-if)#ipv6 router ospf area 0 tag 1 | Включить OSPFv3 на интерфейсе |
(config-if)#exit | Выйти из режима интерфейса |
(config)#interface eth2 | Перейти в режим интерфейса |
(config-if)#ipv6 address 4001::3/64 | Настроить IPv6-адрес интерфейса |
(config-if)#ipv6 router ospf area 0 tag 1 | Включить OSPFv3 на интерфейсе |
(config-if)#ipv6 ospf cost 2 | Настроить стоимость для интерфейса |
(config)#interface eth3 | Перейти в режим интерфейса |
(config-if)#ipv6 address 8888::3/64 | Настроить IPv6-адрес интерфейса |
(config-if)#ipv6 router ospf area 0 tag 1 | Включить OSPFv3 на интерфейсе |
(config-if)#exit | Выйти из режима интерфейса |
(config)#router ipv6 ospf 1 | Настроить процесс маршрутизации и указать идентификатор процесса (1 ). Идентификатор процесса должен быть уникальным положительным числом, идентифицирующим процесс маршрутизации. |
(config)#router-id 3.3.3.3 | Настроить идентификатор маршрутизатора |
(config-router)#end | Выйти из режима маршрутизатора |
SW4
#configure terminal | Перейти в режим конфигурации |
(config)#interface eth1 | Перейти в режим интерфейса |
(config-if)#ipv6 address 5001::4/64 | Настроить IPv6-адрес интерфейса |
(config-if)#ipv6 router ospf area 0 tag 1 | Включить OSPFv3 на интерфейсе |
(config-if)#ipv6 ospf cost 2 | Настроить стоимость для интерфейса |
(config-if)#exit | Выйти из режима интерфейса |
(config)#interface eth2 | Перейти в режим интерфейса |
(config-if)#ipv6 address 6001::4/64 | Настроить IPv6-адрес интерфейса |
(config-if)#ipv6 router ospf area 0 tag 1 | Включить OSPFv3 на интерфейсе |
(config-if)#ipv6 ospf cost 5 | Настроить стоимость для интерфейса |
(config-if)#exit | Выйти из режима интерфейса |
(config)#interface eth3 | Перейти в режим интерфейса |
(config-if)#ipv6 address 7001::4/64 | Настроить IPv6-адрес интерфейса |
(config-if)#ipv6 router ospf area 0 tag 1 | Включить OSPFv3 на интерфейсе |
(config-if)#ipv6 ospf cost 2 | Настроить стоимость для интерфейса |
(config)#router ipv6 ospf 1 | Настроить процесс маршрутизации и указать идентификатор процесса (1 ). Идентификатор процесса должен быть уникальным положительным числом, идентифицирующим процесс маршрутизации. |
(config)#router-id 4.4.4.4 | Настроить идентификатор маршрутизатора |
(config-router)#end | Выйти из режима маршрутизатора |
Проверка
Проверьте, что установлено соседство OSPFv3.
rtr1#show ipv6 ospf neighbor
OSPFv3 Process (1)
Neighbor ID Pri State Dead Time Interface Instance ID
2.2.2.2 1 Full/DR 00:00:35 eth1 0
4.4.4.4 1 Full/DR 00:00:35 eth2 0
Check the OSPF route installation and LFA-FRR backup path for the primary path.
rtr1#show ipv6 route IPv6 Routing Table
Codes: K - kernel route, C - connected, S - static, R - RIP, O - OSPF,
IA - OSPF inter area, E1 - OSPF external type 1,
E2 - OSPF external type 2, N1 - OSPF NSSA external type 1,
N2 - OSPF NSSA external type 2, I - IS-IS, B - BGP Timers: Uptime
IP Route Table for VRF "default"
C ::1/128 via ::, lo, 1d18h11m
C 2001::/64 via ::, eth1, 01:33:09
O 3001::/64 [110/2] via fe80::5054:ff:feed:dc42, eth1, 00:00:34
O 4001::/64 [110/3] via fe80::5054:ff:feed:dc42, eth1, 00:00:34
C 5001::/64 via ::, eth3, 1d18h01m
C 6001::/64 via ::, eth2, 17:06:18
O 7001::/64 [110/3] via fe80::5054:ff:feed:dc42, eth1, 00:00:34
O 8888::/64 [110/3] via fe80::5054:ff:feed:dc42, eth1, 00:00:34
C fe80::/64 via ::, eth2, 17:48:03
rtr1#show ipv6 route fast-reroute
IPv6 Fast-reroute Routing Table
Codes: R - RIP, O - OSPF,
I - IS-IS, B - BGP
O 3001::/64 [110/8] via fe80::5054:ff:fe7b:921e, eth2 inactive, 00:00:59
O 4001::/64 [110/7] via fe80::5054:ff:fe7b:921e, eth2 inactive, 00:00:09
O 7001::/64 [110/7] via fe80::5054:ff:fe7b:921e, eth2 inactive, 00:00:59
O 8888::/64 [110/8] via fe80::5054:ff:fe7b:921e, eth2 inactive, 00:00:09
Not mandatory that for all primary path, there exists an LFA backup path only if inequality equation satisfies according to attributes configured on routers, backup path will be calculated.
To prohibit an interface from being used as a repair path, disable fast reroute calculation on the interface.
(config)#interface eth2
(config-if)#ipv6 ospf fast-reroute per-prefix candidate disable
(config-if)#end
Verify that the eth2 interface is not used for backup path calculation.
rtr1#show ipv6 route IPv6 Routing Table
Codes: K - kernel route, C - connected, S - static, R - RIP, O - OSPF,
IA - OSPF inter area, E1 - OSPF external type 1,
E2 - OSPF external type 2, N1 - OSPF NSSA external type 1,
N2 - OSPF NSSA external type 2, I - IS-IS, B - BGP Timers: Uptime
IP Route Table for VRF "default"
C ::1/128 via ::, lo, 1d18h11m
C 2001::/64 via ::, eth1, 01:33:09
O 3001::/64 [110/2] via fe80::5054:ff:feed:dc42, eth1, 00:00:34
O 4001::/64 [110/3] via fe80::5054:ff:feed:dc42, eth1, 00:00:34
C 5001::/64 via ::, eth3, 1d18h01m
C 6001::/64 via ::, eth2, 17:06:18
O 7001::/64 [110/3] via fe80::5054:ff:feed:dc42, eth1, 00:00:34
O 8888::/64 [110/3] via fe80::5054:ff:feed:dc42, eth1, 00:00:34
C fe80::/64 via ::, eth2, 17:48:03
rtr1#show ipv6 route fast-reroute
Now there is no LFA backup paths as we have disabled the interface from backup path calculation
Tie-Breaking Configuration:
By default, LFA backup path is calculated based on interface-disjoint. Other supported attributes are:
Primary Path
Broadcast-link protecting
Node-protection
(config)#router ipv6 ospf 1
rtr1(config-router)#fast-reroute tie-break node-protecting index 1
Verify show ipv6 route
and show ipv6 route fast-reroute for backup path calculated according to attributes configured above.
rtr1#show ipv6 route IPv6 Routing Table
Codes: K - kernel route, C - connected, S - static, R - RIP, O - OSPF,
IA - OSPF inter area, E1 - OSPF external type 1,
E2 - OSPF external type 2, N1 - OSPF NSSA external type 1,
N2 - OSPF NSSA external type 2, I - IS-IS, B - BGP Timers: Uptime
IP Route Table for VRF "default"
C ::1/128 via ::, lo, 1d18h15m
C 2001::/64 via ::, eth1, 01:37:43
O 3001::/64 [110/2] via fe80::5054:ff:feed:dc42, eth1, 00:01:29
O 4001::/64 [110/3] via fe80::5054:ff:feed:dc42, eth1, 00:01:29
C 5001::/64 via ::, eth3, 1d18h06m
C 6001::/64 via ::, eth2, 17:10:52
O 7001::/64 [110/3] via fe80::5054:ff:feed:dc42, eth1, 00:01:29
O 8888::/64 [110/3] via fe80::5054:ff:feed:dc42, eth1, 00:01:29
C fe80::/64 via ::, eth2, 17:52:37
rtr1#show ipv6 route fast-reroute IPv6 Fast-reroute Routing Table
Codes: R - RIP, O - OSPF,
I - IS-IS, B - BGP
O 4001::/64 [110/7] via fe80::5054:ff:fe7b:921e, eth2 inactive, 00:01:28
O 7001::/64 [110/7] via fe80::5054:ff:fe7b:921e, eth2 inactive, 00:01:28
O 8888::/64 [110/8] via fe80::5054:ff:fe7b:921e, eth2 inactive, 00:01:28