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