cancel
Showing results for 
Search instead for 
Did you mean: 
cancel
891
Views
0
Helpful
1
Replies

BGP orrspf not working - out of sync with the RIB IOS XRv 6.1.3 and 6.3.3

mideoye
Level 1
Level 1

Hi there,

 

I've been trying to test the BGP ORR feature with the following IOS XRv software (6.1.3 and 6.3.3) with no luck; the features used on all devices in the test setup are ISIS (level-2 only) for IGP, LDP for MPLS label distribution and BGP address family IPv4 Unicast.

 

On enabling debug for orrspf, it reports that it has no connection to the RIB:

 

RP/0/0/CPU0:vRR(config)#do show orrspf database
Fri Oct 12 22:39:56.012 UTC

ORR policy: orr-grp1, IPv4, RIB tableid: 0xe0000011
Configured root: primary: 51.148.72.4, secondary: NULL, tertiary: NULL
Actual Root: NULL, Root node: NULL


Number of mapping entries: 1
RP/0/0/CPU0:vRR(config)#

 

RP/0/0/CPU0:vRR(config)#do clear isis process
Fri Oct 12 22:40:57.708 UTC
Reset ISIS process 1? [no]: yes
RP/0/0/CPU0:Oct 12 22:40:59.568 : isis[1010]: %ROUTING-ISIS-5-ADJCHANGE : Adjacency to 49.0001.0000.0000.000a (GigabitEthernet0/0/0/3) (L2) Down, Adjacency DB Clear
RP/0/0/CPU0:vRR(config)#RP/0/0/CPU0:Oct 12 22:40:59.568 : isis[1010]: %ROUTING-ISIS-5-ADJCHANGE : Adjacency to 49.0001.0000.0000.000c (GigabitEthernet0/0/0/4) (L2) Down, Adjacency DB Clear

RP/0/0/CPU0:vRR(config)#RP/0/0/CPU0:Oct 12 22:41:01.648 : isis[1010]: %ROUTING-ISIS-5-ADJCHANGE : Adjacency to 49.0001.0000.0000.000a (GigabitEthernet0/0/0/3) (L2) Up, New adjacency
RP/0/0/CPU0:Oct 12 22:41:08.037 : isis[1010]: %ROUTING-ISIS-5-ADJCHANGE : Adjacency to 49.0001.0000.0000.000c (GigabitEthernet0/0/0/4) (L2) Up, New adjacency
RP/0/0/CPU0:Oct 12 22:41:09.597 : orrspf[1115]: RIB: orrspf_spt_policy_destroy(3038) Deleting RIB table 0xe0000011
RP/0/0/CPU0:Oct 12 22:41:09.597 : orrspf[1115]: RIB: orrspf_rib_table_purge(93), Purged table in RIB with ID: 0xe0000011
RP/0/0/CPU0:Oct 12 22:41:09.597 : orrspf[1115]: RIB: orrspf_rib_table_deinit(132), Deleted table in RIB with ID: 0xe0000011
RP/0/0/CPU0:Oct 12 22:41:09.597 : orrspf[1115]: SYSDB: orrspf_spt_policy_notify_func(3220), Sysdb called to NOTIFY a policy orr-grp1
RP/0/0/CPU0:Oct 12 22:41:09.597 : orrspf[1115]: SYSDB: Set Event
RP/0/0/CPU0:Oct 12 22:41:09.597 : orrspf[1115]: SPF: orrspf_find_spt_policy(3065), created spt_policy_tree: 1205df50
RP/0/0/CPU0:Oct 12 22:41:09.597 : orrspf[1115]: SPF: orrspf_spt_policy_notify_func(3271), Policy group orr-grp1, afi 1 has SPT members 51.148.72.4, (null) (null)
RP/0/0/CPU0:Oct 12 22:41:09.597 : orrspf[1115]: Tables: orrspf_rsi_batch_handler(370), RSI batch handler. is_sync=1 num_items=1
RP/0/0/CPU0:Oct 12 22:41:09.597 : orrspf[1115]: Tables: orrspf_rsi_table_event_callback(3094), RSI table cb for table: orr-grp1, table_id: 0xe0000011, delete: 0
RP/0/0/CPU0:Oct 12 22:41:09.597 : orrspf[1115]: RIB: orrspf_rib_table_init(169) Initializing table with table id: 0xe0000011
RP/0/0/CPU0:Oct 12 22:41:09.597 : orrspf[1115]: Tables: orrspf_rsi_pgm_tbl_cb(257), Table orr-grp1 with id 0x00, oper: 2, status No error
RP/0/0/CPU0:Oct 12 22:41:09.607 : orrspf[1115]: RIB: orrspf_rib_table_init(213), Created table in RIB with ID: 0xe0000011
RP/0/0/CPU0:Oct 12 22:41:09.607 : orrspf[1115]: Tables: orrspf_rsi_table_event_callback(3137), created pfx_tree: 1219bfa0
RP/0/0/CPU0:Oct 12 22:41:09.607 : orrspf[1115]: Tables: orrspf_rsi_program_one_table(133), Registered successfully with RSI for table orr-grp1
RP/0/0/CPU0:Oct 12 22:41:10.607 : orrspf[1115]: General: orrspf_process_timers(2999): Shutdown timer expired
RP/0/0/CPU0:Oct 12 22:41:19.657 : orrspf[1115]: SPF: orrspf_find_ctx(1295), created ctx_tree: 1219bf28
RP/0/0/CPU0:Oct 12 22:41:19.657 : orrspf[1115]: SPF: orrspf_create_ctx(1278), created new ctx: 120be4d8, proto_id: 2, area_id: 0, vrf_id: 1610612736, mt_id: 0
RP/0/0/CPU0:Oct 12 22:41:19.657 : orrspf[1115]: SPF:
RP/0/0/CPU0:Oct 12 22:41:19.657 : orrspf[1115]: SPF:
RP/0/0/CPU0:Oct 12 22:41:19.657 : orrspf[1115]: SPF:
RP/0/0/CPU0:Oct 12 22:41:19.657 : orrspf[1115]: SPF:
RP/0/0/CPU0:Oct 12 22:41:24.676 : orrspf[1115]: RIB: orrspf_download_spt_list_event(705), No connection to RIB or no SPT tree

 

RP/0/0/CPU0:vRR(config)#do sh rib tables
Fri Oct 12 22:41:55.494 UTC

Codes: N - Prefix Limit Notified, F - Forward Referenced
D - Table Deleted, C - Table Reached Convergence

VRF/Table SAFI Table ID PrfxLmt PrfxCnt TblVersion N F D C
default/default uni 0xe0000000 5000000 10 93 N N N Y
**nVSatellite/default uni 0xe0000010 5000000 2 4 N N N Y
default/orr-grp1 uni 0xe0000011 5000000 0 0 N N N Y
default/default multi 0xe0100000 5000000 0 0 N N N Y

 

RP/0/0/CPU0:vRR(config)#do show rib clients
Fri Oct 12 22:43:20.778 UTC
Process Location Client ID Redist Proto
bcdl_ug node0_0_CPU0 0 outsync no
arp node0_0_CPU0 1 no insync
ipv4_rump node0_0_CPU0 2 no no
ipv4_local node0_0_CPU0 3 no insync
ipv4_connected node0_0_CPU0 4 no insync
bcdl_ug node0_0_CPU0 5 no no
bfd node0_0_CPU0 6 no no
icpe_satmgr node0_0_CPU0 7 no no
pim node0_0_CPU0 8 no no
igmp node0_0_CPU0 9 no no
mld node0_0_CPU0 10 no insync
ntpd node0_0_CPU0 11 no no
igmp node0_0_CPU0 12 no insync
ipsec_mp node0_0_CPU0 13 no no
orrspf node0_0_CPU0 14 no outsync
bcdl_ug node0_0_CPU0 15 insync no
bcdl_ug node0_0_CPU0 16 insync no
mpls_ldp node0_0_CPU0 17 insync no
bgp node0_0_CPU0 18 no no
bgp node0_0_CPU0 19 no insync
isis node0_0_CPU0 20 no insync

 

Here are the relevant configuration of the devices:

 

Route Reflector config:

RP/0/0/CPU0:vRR(config)#do sh run router isis
Fri Oct 12 22:44:22.864 UTC
router isis 1
is-type level-2-only
net 49.0001.0000.0000.000b.00
distribute bgp-ls
log adjacency changes
address-family ipv4 unicast
metric-style wide level 2
!
interface Loopback0
passive
circuit-type level-2-only
address-family ipv4 unicast
!
!
interface GigabitEthernet0/0/0/2
circuit-type level-2-only
point-to-point
address-family ipv4 unicast
metric 100 level 2
!
!
interface GigabitEthernet0/0/0/3
circuit-type level-2-only
point-to-point
address-family ipv4 unicast
metric 100 level 2
!
!
interface GigabitEthernet0/0/0/4
circuit-type level-2-only
point-to-point
address-family ipv4 unicast
metric 100 level 2
!
!
!

RP/0/0/CPU0:vRR(config)#do sh run router bgp
Fri Oct 12 22:44:33.483 UTC
router bgp 1
bgp router-id 51.148.72.0
bgp cluster-id 51.148.72.0
address-family ipv4 unicast
optimal-route-reflection orr-grp1 51.148.72.4
!
neighbor-group rr
remote-as 1
update-source Loopback0
address-family ipv4 unicast
route-reflector-client
maximum-prefix 10000000 90 warning-only
!
!
neighbor 51.148.72.1
use neighbor-group rr
!
neighbor 51.148.72.2
use neighbor-group rr
!
neighbor 51.148.72.4
remote-as 1
update-source Loopback0
address-family ipv4 unicast
optimal-route-reflection orr-grp1
route-reflector-client
!
!
!

RP/0/0/CPU0:vRR(config)#
RP/0/0/CPU0:vRR(config)#do sh run mpls ldp
Fri Oct 12 22:44:55.712 UTC
mpls ldp
router-id 51.148.72.0
interface GigabitEthernet0/0/0/3
!
interface GigabitEthernet0/0/0/4
!
!

 

Route Reflector client device conf:

RP/0/0/CPU0:RRc(config)#do sh run router isis
Fri Oct 12 22:46:04.648 UTC
router isis 1
is-type level-2-only
net 49.0001.0000.0000.000d.00
log adjacency changes
address-family ipv4 unicast
metric-style wide level 2
!
interface Loopback0
passive
circuit-type level-2-only
address-family ipv4 unicast
!
!
interface GigabitEthernet0/0/0/0
circuit-type level-2-only
point-to-point
address-family ipv4 unicast
metric 100 level 2
!
!
!

RP/0/0/CPU0:RRc(config)#do sh run router bgp
Fri Oct 12 22:46:13.008 UTC
router bgp 1
bgp router-id 51.148.72.4
address-family ipv4 unicast
!
address-family vpnv4 unicast
!
neighbor 51.148.72.0
remote-as 1
update-source Loopback0
address-family ipv4 unicast
route-policy imp_all in
maximum-prefix 1000 90 warning-only
!
!
!

RP/0/0/CPU0:RRc(config)#do sh run mpls ldp
Fri Oct 12 22:46:34.676 UTC
mpls ldp
router-id 51.148.72.4
interface GigabitEthernet0/0/0/0
!

RP/0/0/CPU0:RRc(config)#do sh run route-policy imp_all
Fri Oct 12 22:46:48.135 UTC
route-policy imp_all
pass
end-policy
!

RP/0/0/CPU0:RRc(config)#

 

Verification on RR checks for prefixes advertised to ORR client device:

RP/0/0/CPU0:vRR(config)#do sh bgp ipv4 unicast
Fri Oct 12 22:48:50.646 UTC
BGP router identifier 51.148.72.0, local AS number 1
BGP generic scan interval 60 secs
Non-stop routing is enabled
BGP table state: Active
Table ID: 0xe0000000 RD version: 25
BGP main routing table version 25
BGP NSR Initial initsync version 8 (Reached)
BGP NSR/ISSU Sync-Group versions 0/0
BGP scan interval 60 secs

Status codes: s suppressed, d damped, h history, * valid, > best
i - internal, r RIB-failure, S stale, N Nexthop-discard
Origin codes: i - IGP, e - EGP, ? - incomplete
Network               Next Hop     Metric LocPrf Weight Path
*>i88.88.88.0/24 51.148.72.1 0         100     0          ?
* i                        51.148.72.2 0          100    0          ?

Processed 1 prefixes, 2 paths
RP/0/0/CPU0:vRR(config)#do sh bgp ipv4 unicast neighbors 51.148.72.4 advertised-rout
Fri Oct 12 22:49:15.694 UTC
RP/0/0/CPU0:vRR(config)#

 

Please can anyone provide some advice about why orrspf seems to not work on the XRv set up as the RR?

 

Thanks in advance for you help :)

 

1 Accepted Solution

Accepted Solutions

mideoye
Level 1
Level 1

New update - I managed to get this to work only after configuring MPLS traffic engineering on the root router (51.148.72.4) - an IOS device. The root router advertised the MPLS TE router-id into the IGP, so the RR was able to use this to match against the configured root address in the BGP ORR configuration on the RR in order to perform rSPF.

 

RP/0/0/CPU0:ios#sh orrspf database det
Sun Oct 14 16:53:02.023 UTC

ORR policy: orr-grp, IPv4, RIB tableid: 0xe0000011
Configured root: primary: 51.148.72.4, secondary: NULL, tertiary: NULL
Actual Root: 51.148.72.4, Root node: 0000.0000.000d.0000

Prefix Cost
51.148.72.0 100
51.148.72.1 100
51.148.72.2 200
51.148.72.4 0

 

RP/0/0/CPU0:ios#show rib tables
Sun Oct 14 16:55:13.584 UTC

Codes: N - Prefix Limit Notified, F - Forward Referenced
D - Table Deleted, C - Table Reached Convergence

VRF/Table SAFI Table ID PrfxLmt PrfxCnt TblVersion N F D C
default/default uni 0xe0000000 5000000 14 21 N N N Y
**nVSatellite/default uni 0xe0000010 5000000 2 4 N N N Y
default/orr-grp uni 0xe0000011 5000000 4 4 N N N Y
default/default multi 0xe0100000 5000000 0 0 N N N Y

 

It appears MPLS TE need to be configured and enabled in ISIS on a root router running on IOS, and on an IOS XRv router, the following config is required to enable a router ID in ISIS in addition to standard ISIS config:

 

Root router running IOS XRv:

router isis 1

 address-family ipv4 unicast

  router-id loopback 0

 

 

 

 

 

Thanks

 

 

View solution in original post

1 Reply 1

mideoye
Level 1
Level 1

New update - I managed to get this to work only after configuring MPLS traffic engineering on the root router (51.148.72.4) - an IOS device. The root router advertised the MPLS TE router-id into the IGP, so the RR was able to use this to match against the configured root address in the BGP ORR configuration on the RR in order to perform rSPF.

 

RP/0/0/CPU0:ios#sh orrspf database det
Sun Oct 14 16:53:02.023 UTC

ORR policy: orr-grp, IPv4, RIB tableid: 0xe0000011
Configured root: primary: 51.148.72.4, secondary: NULL, tertiary: NULL
Actual Root: 51.148.72.4, Root node: 0000.0000.000d.0000

Prefix Cost
51.148.72.0 100
51.148.72.1 100
51.148.72.2 200
51.148.72.4 0

 

RP/0/0/CPU0:ios#show rib tables
Sun Oct 14 16:55:13.584 UTC

Codes: N - Prefix Limit Notified, F - Forward Referenced
D - Table Deleted, C - Table Reached Convergence

VRF/Table SAFI Table ID PrfxLmt PrfxCnt TblVersion N F D C
default/default uni 0xe0000000 5000000 14 21 N N N Y
**nVSatellite/default uni 0xe0000010 5000000 2 4 N N N Y
default/orr-grp uni 0xe0000011 5000000 4 4 N N N Y
default/default multi 0xe0100000 5000000 0 0 N N N Y

 

It appears MPLS TE need to be configured and enabled in ISIS on a root router running on IOS, and on an IOS XRv router, the following config is required to enable a router ID in ISIS in addition to standard ISIS config:

 

Root router running IOS XRv:

router isis 1

 address-family ipv4 unicast

  router-id loopback 0

 

 

 

 

 

Thanks