cancel
Showing results for 
Search instead for 
Did you mean: 
cancel
3132
Views
0
Helpful
3
Replies

Advertising IPv4 Routes Over IPv6 IBGP/EBGP Peering (aka. RFC5549)

sunnystyle
Level 1
Level 1


Hello, Guys
Currently, I am facing the issue in IPv4 route with an IPv6 next hop in IPv6 BGP.

 

Topo & Versions:
LO:10.99.99.99 <---> FlexVPN HUB (CSR1000v w/fixed IPv6 addr.) <---(IPv6 peering)---> FlexVPN Spoke(ISR4321 w/dynamic IPv6 addr.)--->LO:10.99.99.88

 

CSR1000v: IOS XE Version 16.6.4
ISR4321: IOS XE 03.17.04.S.156-1.S4-std

 

BGP Config:
-------------------------------
CSR1000v, FlexHub:

router bgp 65000
bgp log-neighbor-changes
bgp listen range 2001:470:D:BEB:A:A:A:0/112 peer-group SPOKES
neighbor SPOKES peer-group
neighbor SPOKES remote-as 65000
neighbor SPOKES update-source Loopback0
!
address-family ipv4
network 10.99.99.99 mask 255.255.255.255
neighbor SPOKES activate
neighbor SPOKES send-community both
neighbor SPOKES route-map IPv6-NextHop in
exit-address-family
!
address-family ipv6
neighbor SPOKES activate
exit-address-family

route-map IPv6-NextHop permit 10
set ipv6 next-hop peer-address

CSR1000v#sh ip b
BGP table version is 5, local router ID is 10.99.99.99
Status codes: s suppressed, d damped, h history, * valid, > best, i - internal,
r RIB-failure, S Stale, m multipath, b backup-path, f RT-Filter,
x best-external, a additional-path, c RIB-compressed,
t secondary path,
Origin codes: i - IGP, e - EGP, ? - incomplete
RPKI validation codes: V valid, I invalid, N Not found

Network Next Hop Metric LocPrf Weight Path
*>i 10.99.99.88/32 32.1.4.112 0 100 0 i
*> 10.99.99.99/32 0.0.0.0 0 32768 i

CSR1000v#sh ip bgp summary
BGP router identifier 10.99.99.99, local AS number 65000
BGP table version is 5, main routing table version 5
2 network entries using 496 bytes of memory
2 path entries using 272 bytes of memory
2/2 BGP path/bestpath attribute entries using 560 bytes of memory
0 BGP route-map cache entries using 0 bytes of memory
0 BGP filter-list cache entries using 0 bytes of memory
BGP using 1328 total bytes of memory
BGP activity 8/6 prefixes, 10/8 paths, scan interval 60 secs

Neighbor V AS MsgRcvd MsgSent TblVer InQ OutQ Up/Down State/PfxRcd
*2001:470:D:BEB:A:A:A:0
4 65000 72 73 5 0 0 01:00:33 1
* Dynamically created based on a listen range command
Dynamically created neighbors: 1, Subnet ranges: 1

BGP peergroup SPOKES listen range group members:
2001:470:D:BEB:A:A:A:0/112

Total dynamically created neighbors: 1/(100 max), Subnet ranges: 1

-------------------------------
ISR4321, FlexSpoke:

router bgp 65000
bgp log-neighbor-changes
neighbor 2001:470:D:BEB::88 remote-as 65000
neighbor 2001:470:D:BEB::88 update-source Tunnel166
!
address-family ipv4
network 10.99.99.88 mask 255.255.255.255
neighbor 2001:470:D:BEB::88 activate
neighbor 2001:470:D:BEB::88 send-community both
exit-address-family
!
address-family ipv6
neighbor 2001:470:D:BEB::88 activate
neighbor 2001:470:D:BEB::88 send-community both
exit-address-family


ISR4321#sh ip b
BGP table version is 15, local router ID is 10.200.200.23
Status codes: s suppressed, d damped, h history, * valid, > best, i - internal,
r RIB-failure, S Stale, m multipath, b backup-path, f RT-Filter,
x best-external, a additional-path, c RIB-compressed,
Origin codes: i - IGP, e - EGP, ? - incomplete
RPKI validation codes: V valid, I invalid, N Not found

Network Next Hop Metric LocPrf Weight Path
*> 10.99.99.88/32 0.0.0.0 0 32768 i
*>i 10.99.99.99/32 32.1.4.112 0 100 0 i

ISR4321#sh ip bgp summary
BGP router identifier 10.200.200.23, local AS number 65000
BGP table version is 15, main routing table version 15
2 network entries using 496 bytes of memory
2 path entries using 240 bytes of memory
2/2 BGP path/bestpath attribute entries using 512 bytes of memory
0 BGP route-map cache entries using 0 bytes of memory
0 BGP filter-list cache entries using 0 bytes of memory
BGP using 1248 total bytes of memory
BGP activity 5/3 prefixes, 8/6 paths, scan interval 60 secs

Neighbor V AS MsgRcvd MsgSent TblVer InQ OutQ Up/Down State/PfxRcd
2001:470:D:BEB::88
4 65000 72 71 15 0 0 00:59:45 1

--------------------------------

Based on my research, both BGP router has wrong next hop "32.1.4.112", it should be the iBGP peer IPv6 update address.

I found the RFC 5549 : Advertising IPv4 Network Layer Reachability Information with an IPv6 Next Hop (Cisco called: Extended Next Hop Encoding)

 

https://tools.ietf.org/html/rfc5549

 

The feature only describled in NXOS with very short words.

 

https://www.cisco.com/c/en/us/td/docs/switches/datacenter/nexus3000/sw/unicast/602_u1_1/l3_nx-os/l3_advbgp.html#11837

 

In my topo, the FlexSpoke router's IPv6 address is dynamic, that's the key problem.

So, My questions is How to change the current Next Hop information for IPv4 route in IPv6 bgp peers?

3 Replies 3

Harold Ritter
Cisco Employee
Cisco Employee

RFC5549 is not currently supported in IOS. Without RFC5549 support, the next hop needs to be the same as the configured address family. In your case you need to support both ipv4 and ipv6 through FlexVPN.

 

Regards,

Harold Ritter
Sr Technical Leader
CCIE 4168 (R&S, SP)
harold@cisco.com
México móvil: +52 1 55 8312 4915
Cisco México
Paseo de la Reforma 222
Piso 19
Cuauhtémoc, Juárez
Ciudad de México, 06600
México


@Harold Ritter wrote:

RFC5549 is not currently supported in IOS. Without RFC5549 support, the next hop needs to be the same as the configured address family. In your case you need to support both ipv4 and ipv6 through FlexVPN.

 

Regards,


Hello,  Harold

Thanks for your reply.

Is there any road-map to add this in future?

 

Sunny

I have seen it on the roadmap for XR, NXOS, but not for IOS and XE.

 

Regards,

Harold Ritter
Sr Technical Leader
CCIE 4168 (R&S, SP)
harold@cisco.com
México móvil: +52 1 55 8312 4915
Cisco México
Paseo de la Reforma 222
Piso 19
Cuauhtémoc, Juárez
Ciudad de México, 06600
México
Getting Started

Find answers to your questions by entering keywords or phrases in the Search bar above. New here? Use these resources to familiarize yourself with the community: