Vrf routing table not populating ipv6 bgp default route

I have a bgp session active over a sub interface running over a vrf I created in the Vyatta. I configured the neighbor to use the ipv4 address of the interface, and then I advertised the ipv4 and ipv6 networks over this connection.

The connection is up, and I can see my ipv6 and ipv4 networks are advertised properly (in this case the far end is a Cisco IOS XR).
However only the Vyatta’s ipv4 stack vrf routing table shows a default BGP route of 0.0.0.0 to the neighbor interface. The Vyatta’s ipv6 stack vrf routing table shows no discovered BGP default routes.
Why?

The problem is ipv4 traffic routes, but none of the ipv6 traffic routes out.

Here is my vyatta configuration:

set interfaces ethernet eth1 vif 3577 address 'fdd1:10:35:77::1/64'
set interfaces ethernet eth1 vif 3577 vrf 'cust77'
set interfaces ethernet eth2 vif 3677 address 'fdd1:10:36:77::2/64'
set interfaces ethernet eth2 vif 3677 vrf 'cust77'
set policy prefix-list cust77-network rule 1 action 'permit'
set policy prefix-list cust77-network rule 1 prefix '10.35.77.0/24'
set policy prefix-list6 cust77-network
set policy route-map cust77-import-bgp-routes rule 1 action 'permit'
set policy route-map cust77-import-bgp-routes rule 1 match ip route-source prefix-list '10.36.77.0/31'
set vrf name cust77 protocols bgp address-family ipv4-unicast network 10.35.77.0/24
set vrf name cust77 protocols bgp address-family ipv6-unicast network fdd1:10:35:77::0/64
set vrf name cust77 protocols bgp address-family ipv6-unicast redistribute
set vrf name cust77 protocols bgp neighbor 10.36.77.0 address-family ipv4-unicast
set vrf name cust77 protocols bgp neighbor 10.36.77.0 remote-as '65250'
set vrf name cust77 protocols bgp route-map 'cust77-import-bgp-routes'
set vrf name cust77 protocols bgp system-as '65077'
set vrf name cust77 table '3677'

Here is the far end router configuration (Cisco IOS XR)

interface HundredGigE0/0/0/39.3677
interface HundredGigE0/0/0/39.3677 description 77 Downlink
interface HundredGigE0/0/0/39.3677 vrf MY_VRF
interface HundredGigE0/0/0/39.3677 ipv4 address 10.36.77.0 255.255.255.254
interface HundredGigE0/0/0/39.3677 ipv6 address fdd1:10:36:77::1/64
interface HundredGigE0/0/0/39.3677 encapsulation dot1q 3677
prefix-set MY_VRF_77
  10.35.77.0/24
prefix-set 6_MY_VRF_77
  fdd1:10:35:77::/64
router static vrf MY_VRF address-family ipv6 unicast fdd1:10:35:77::/64 fdd1:10:36:77::2
router bgp 65250 vrf MY_VRF neighbor 10.36.77.1
router bgp 65250 vrf MY_VRF neighbor 10.36.77.1 remote-as 65077
router bgp 65250 vrf MY_VRF neighbor 10.36.77.1 description Customer 77
router bgp 65250 vrf MY_VRF neighbor 10.36.77.1 address-family ipv4 unicast
router bgp 65250 vrf MY_VRF neighbor 10.36.77.1 address-family ipv4 unicast route-policy SET_CUST_FACE(MY_VRF_77) in
router bgp 65250 vrf MY_VRF neighbor 10.36.77.1 address-family ipv4 unicast default-originate
router bgp 65250 vrf MY_VRF neighbor 10.36.77.1 address-family ipv6 unicast
router bgp 65250 vrf MY_VRF neighbor 10.36.77.1 address-family ipv6 unicast route-policy SET_CUST_FACE(6_MY_VRF_77) in
router bgp 65250 vrf MY_VRF neighbor 10.36.77.1 address-family ipv6 unicast default-originate

Here is the routing tables of the vyatta

me@r1# run show ipv6 route vrf cust77
Codes: K - kernel route, C - connected, S - static, R - RIPng,
       O - OSPFv3, I - IS-IS, B - BGP, N - NHRP, T - Table,
       v - VNC, V - VNC-Direct, A - Babel, F - PBR,
       f - OpenFabric,
       > - selected route, * - FIB route, q - queued, r - rejected, b - backup
       t - trapped, o - offload failure

VRF cust77:
C>* fdd1:10:35:77::/64 is directly connected, eth1.3577, 02w1d02h
C>* fdd1:10:36:77::/64 is directly connected, eth2.3677, 02w1d02h
C * fe80::/64 is directly connected, eth2.3677, 02w1d22h
C>* fe80::/64 is directly connected, eth1.3577, 02w1d22h
[edit]
me@r1# run show ip route vrf cust77
Codes: K - kernel route, C - connected, S - static, R - RIP,
       O - OSPF, I - IS-IS, B - BGP, E - EIGRP, N - NHRP,
       T - Table, v - VNC, V - VNC-Direct, A - Babel, F - PBR,
       f - OpenFabric,
       > - selected route, * - FIB route, q - queued, r - rejected, b - backup
       t - trapped, o - offload failure

VRF cust77:
B>* 0.0.0.0/0 [20/0] via 10.36.77.0, eth2.3677, weight 1, 00:12:58
C>* 10.35.77.0/24 is directly connected, eth1.3577, 02w1d22h
C>* 10.36.77.0/31 is directly connected, eth2.3677, 02w1d22h
[edit]

BGP session is up:

me@r1# run show bgp vrf cust77 summary

IPv4 Unicast Summary (VRF cust77):
BGP router identifier 10.36.77.1, local AS number 65077 vrf-id 34
BGP table version 8
RIB entries 2, using 384 bytes of memory
Peers 1, using 724 KiB of memory

Neighbor        V         AS   MsgRcvd   MsgSent   TblVer  InQ OutQ  Up/Down State/PfxRcd   PfxSnt Desc
10.36.77.0      4      65250     23207     23096        0    0    0 00:14:15            1        2 N/A

Total number of neighbors 1

What is odd is I see no advertised routes:

me@r1# run show bgp vrf cust77 neighbors 10.36.77.0 received-routes
% No such neighbor or address family

Troubleshooting I tried:

  • soft reset BGP session
  • Tried adding a rule 2 to the route-map cust77-import-bgp-routes, that permitted the ipv6 subnet using ip route-source
  • Tried adding a rule 2 to the route-map cust77-import-bgp-routes, that permitted the ipv6 subnet using ip6 route-source
  • Tried adding redistribute static for ipv6-unicast for the bgp protocol.
  • Tried forcing a static route into the table 3677, but that wouldn’t take.

How do I get BGP to add a default route line in the vrf cust77 ipv6 table that shows the following?

B>* 0::/64 is directly connected, eth2.3677

Figured it out. I needed to define ipv6-unicast for the bgp protocol too. This fixed it.

set vrf name cust77 protocols bgp neighbor 10.36.77.0 address-family ipv6-unicast
2 Likes

Hi @hackedbaked!

Excellent work! Thank you for sharing your solution with the community. This valuable contribution will undoubtedly assist others who might confront a similar issue down the road. :pray:

Have a great day!

Cheers!

1 Like

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.