09-30-2018 10:03 PM - edited 03-01-2019 05:56 PM
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.
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?
10-01-2018 08:18 AM
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,
10-03-2018 07:33 AM
@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
10-03-2018 05:24 PM
I have seen it on the roadmap for XR, NXOS, but not for IOS and XE.
Regards,
Discover and save your favorite ideas. Come back to expert answers, step-by-step guides, recent topics, and more.
New here? Get started with these tips. How to use Community New member guide