cancel
Showing results for 
Search instead for 
Did you mean: 
cancel
1470
Views
0
Helpful
10
Replies

Next-hop issue with BGP Support for IPv6 Prefix Export from a VRF Table into the Global Table

filopeter
Level 1
Level 1

Hello,

I would like to export an IPv6 prefix learned by MP-BGP from a vrf table to a global routing table

!
Router#sh bgp vpnv6 unicast vrf ba 2001:0DB8::/64
BGP routing table entry for [65500:100]2001:0DB8::/64, version 108
BGP Bestpath: compare-routerid
Paths: (1 available, best #1, table ba)
Flag: 0x100
Not advertised to any peer
Refresh Epoch 1
Local
::FFFF:192.168.1.1 (metric 20) (via default) from 192.168.1.1 (192.168.1.1)
Origin incomplete, metric 0, localpref 100, valid, internal, best
Extended Community: RT:65500:100 RT:65500:101 RT:65500:102 RT:65500:103
RT:65500:104 RT:65500:105 RT:65500:200 OSPF ROUTER ID:10.200.199.3:0
OSPF RT:0.0.0.0:2:0
mpls labels in/out nolabel/54
rx pathid: 0, tx pathid: 0x0
!

In the BGP table I see the next-hop is inaccesible and therefore this prefix is not added to the global routing table

!
Router#sh bgp ipv6 unicast 2001:0DB8::/64
BGP routing table entry for 2001:0DB8::/64, version 0
BGP Bestpath: compare-routerid
Paths: (1 available, no best path)
Not advertised to any peer
Refresh Epoch 1
Local, imported path from [65500:100]2001:0DB8::/64 (ba)
::FFFF:192.168.1.1 (inaccessible) from 192.168.1.1 (192.168.1.1)
Origin incomplete, metric 0, localpref 100, valid, internal
Extended Community: RT:65500:100 RT:65500:101 RT:65500:102 RT:65500:103
RT:65500:104 RT:65500:105 RT:65500:200 OSPF ROUTER ID:10.200.199.3:0
OSPF RT:0.0.0.0:2:0
rx pathid: 0, tx pathid: 0
!

So I tried to modify the next-hop using a route-map with a next-hop from the global routing table

!
route-map vrf-all6 permit 10
match ipv6 address any-any
match ipv6 next-hop prefix-list NH
set ipv6 global next-hop 2001:0DB8:10::F
!
ipv6 prefix-list NH seq 5 permit ::FFFF:192.168.1.1/128
!

I was so far successful

!
Router#sh bgp ipv6 unicast 2001:0DB8::/64
BGP routing table entry for 2001:0DB8::/64, version 161
BGP Bestpath: compare-routerid
Paths: (1 available, best #1, table default)
Flag: 0x100
Not advertised to any peer
Refresh Epoch 5
Local, imported path from [65500:100]2001:0DB8::/64 (ba)
2001:0DB8:10::F (metric 20) from 192.168.1.1 (192.168.1.1)
Origin incomplete, metric 0, localpref 100, valid, internal, best
Extended Community: RT:65500:100 RT:65500:101 RT:65500:102 RT:65500:103
RT:65500:104 RT:65500:105 RT:65500:200 OSPF ROUTER ID:10.200.199.3:0
OSPF RT:0.0.0.0:2:0
rx pathid: 0, tx pathid: 0x0
!

But in the global routing table I still see the router tries to reach the next-hop over the vrf, not over the global routing table

!

Router#sh ipv6 route 2001:0DB8::/64
Routing entry for 2001:0DB8::/64
Known via "bgp 65500", distance 200, metric 0, type internal
Route count is 1/1, share count 0
Routing paths:
2001:0DB8:10::F%ba
MPLS label: nolabel
From 4E29:ADFC::
Last updated 00:11:01 ago

!

In the documentation

https://content.cisco.com/chapter.sjs?uri=/searchable/chapter/content/en/us/td/docs/ios-xml/ios/iproute_bgp/configuration/xe-16-7/irg-xe-16-7-book/irg-prefix-export.html.xml

I did not find a support for "set ipv6 global next-hop", just for "set ipv6 next-hop".

I would like to know if someone run to the same issue as me and found a workaround for this issue.

Best Regards,

P.

1 Accepted Solution

Accepted Solutions

Harold Ritter
Cisco Employee
Cisco Employee

Hi,

 

I do not think that exporting prefixes imported from vpnv6 (or vpnv4 for that matter) is actually supported. Try exporting prefixes received from the CE via BGP instead. This should definitely work.

 

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

View solution in original post

10 Replies 10

rais
Level 7
Level 7

How about you try to export next-hop interface route to GT as well.

 

HTH.

Next-hop is not supported. I have received two warnings

%Warning:Use P2P interface for routemap setinterface clause
% "vrf-all6" used as BGP global import route-map, set interface not supported

Harold Ritter
Cisco Employee
Cisco Employee

Hi,

 

I do not think that exporting prefixes imported from vpnv6 (or vpnv4 for that matter) is actually supported. Try exporting prefixes received from the CE via BGP instead. This should definitely work.

 

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

Hi Harold,

for VPNv4 it works.
The local PE receives a vpnv4 update from a remote PE. It exports the received prefix to the BGP global. This prefix is then added to the global routing table. The next-hop ip address in the vpnv4 update is IPv4 address of the remote PE. This IPv4 address is valid and reachable in the global routing table via IGP.

for VPNv6 ir does not work.
The local PE receives a vpnv6 update from a remote PE. It exports the received prefix to the BGP global. This prefix is not added to the global routing table. The next-hop IPv6 address in the vpnv6 update is IPv4-mapped IPv6 address of the remote PE. This IPv6 address is "inaccessible" and not reachable in the global routing table. Therefore I have tried to modify it using route-map, but it does not help.

 

I will try to export the received IPv6 prefix on a remote PE to BGP global and then advertise it as IPv6 BGP update to the local PE.

 

Here are some details regarding VPNv4, where it works:

!
Router#sh bgp vpnv4 unicast vrf ba 192.168.2.0/26
BGP routing table entry for 65500:100:192.168.2.0/26, version 356785
BGP Bestpath: compare-routerid
Paths: (1 available, best #1, table ba, RIB-failure(17))
Not advertised to any peer
Refresh Epoch 1
Local
192.168.1.1 (metric 20) (via default) from 192.168.1.1 (192.168.1.1)
Origin incomplete, metric 0, localpref 100, valid, internal, best
Extended Community: RT:65500:100 RT:65500:101 RT:65500:102 RT:65500:103
RT:65500:104 RT:65500:105 RT:65500:200
OSPF DOMAIN ID:0x0005:0x000000640200 OSPF RT:0.0.0.0:2:0
OSPF ROUTER ID:10.200.199.3:0
mpls labels in/out nolabel/31
rx pathid: 0, tx pathid: 0x0
!
Router#sh bgp ipv4 unicast 192.168.2.0/26
BGP routing table entry for 192.168.2.0/26, version 73040
BGP Bestpath: compare-routerid
Paths: (1 available, best #1, table default)
Multipath: eBGP
Not advertised to any peer
Refresh Epoch 1
Local, imported path from 65500:100:192.168.2.0/26 (ba)
192.168.1.1 (metric 20) from 192.168.1.1 (192.168.1.1)
Origin incomplete, metric 0, localpref 100, valid, internal, best
Extended Community: RT:65500:100 RT:65500:101 RT:65500:102 RT:65500:103
RT:65500:104 RT:65500:105 RT:65500:200
OSPF DOMAIN ID:0x0005:0x000000640200 OSPF RT:0.0.0.0:2:0
OSPF ROUTER ID:10.200.199.3:0
rx pathid: 0, tx pathid: 0x0
!
Router#sh ip route 192.168.2.0 255.255.255.192
Routing entry for 192.168.2.0/26
Known via "bgp 65500", distance 200, metric 0, type internal
Last update from 192.168.1.1 7w0d ago
Routing Descriptor Blocks:
* 192.168.1.1, from 192.168.1.1, 7w0d ago
Route metric is 0, traffic share count is 1
AS Hops 0
MPLS label: none
!
Router#sh ip route 192.168.1.1
Routing entry for 192.168.1.1/32
Known via "ospf 1", distance 110, metric 20, type extern 2, forward metric 1
Last update from 192.168.3.137 on Vlan11, 7w0d ago
Routing Descriptor Blocks:
* 192.168.3.137, from 192.168.1.1, 7w0d ago, via Vlan11
Route metric is 20, traffic share count is 1

Can you please provide the output for the following command.

 

show cef 192.168.2.0 detail

 

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

!

Router#show ip cef 192.168.2.0 detail
192.168.2.0/26, epoch 2, flags [rib only nolabel, rib defined all labels]
recursive via 192.168.1.1
nexthop 192.168.3.137 Vlan11

!

 

I should have asked for "show ip chef 192.168.2.0 int". Also, can you provide the actual IOS version you are running.

 

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

Hi Harold,

the platform is C9500-48Y4C and IOS XE version is 16.9.5.

Here is is the output

!

Router#sh ip cef 192.168.2.0 internal
192.168.2.0/26, epoch 2, flags [rnolbl, rlbls], RIB[B], refcnt 6, per-destination sharing
sources: RIB
feature space:
IPRM: 0x00018000
Broker: linked, distributed at 4th priority
ifnums:
Vlan11(87): 192.168.3.137
path list 7FDDC8E9F790, 4693 locks, per-destination, flags 0x26D [shble, hvsh, rif, rcrsv, hwcn, bgp]
path 7FDDC8E98F10, share 1/1, type recursive, for IPv4
recursive via 192.168.1.1[IPv4:Default], fib 7FDDC5EC7690, 1 terminal fib, v4:Default:192.168.1.1/32
path list 7FDDC8EA3070, 5 locks, per-destination, flags 0x4D [shble, hvsh, rif, hwcn]
path 7FDDC8E979F0, share 1/1, type attached nexthop, for IPv4
MPLS short path extensions: [none] MOI flags = 0x0 label implicit-null
nexthop 192.168.3.137 Vlan11, IP adj out of Vlan11, addr 192.168.3.137 7FDDC9108D68
output chain:
IP adj out of Vlan11, addr 192.168.3.137 7FDDC9108D68

!

Did you verify that the data plane is functional. I look at the output you provided and do not see the expected label stack.

 

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

I understand what do you mean, thank you for pointing this out.

In the real world scenario we use public IPv4 addresses and the service in the global routing table and inside vrf is global Internet. From the Internet service point of view the data plane is functional, although the traffic is routed and not mpls switched. 

Based on your assumption that exporting prefixes imported from vpnv6 or vpnv4 is not supported, I will try to export only ip prefixes received from the CE routers.

 

 

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: