Description
RR received prefix from one client, but does not advertise to the other client.
Symptoms
R1---R5 Ebgp neighbor
R2,R3,R4: IBGP neighbor
R2,R4 are clients
R3 is route reflector
R2 lo0.0 address: 10.160.40.24/32
R3 lo0.0 address: 10.160.40.3/32
R4 lo0.0 address: 10.160.40.16/32
Issue:
R3 received prefix from client R4, but not advertise the prefix to neighbor R2.
root@R3> show route receive-protocol bgp 10.160.40.16 131.242.9.0/24
bgp.l3vpn.0: 8 destinations, 14 routes (8 active, 0 holddown, 0 hidden)
Prefix Nexthop MED Lclpref AS path
45837:5509:131.242.9.0/24
10.160.40.16 2 100 65400 I
root@R3> show route advertising-protocol bgp 10.160.40.24 131.242.9.0/24
root@R3>
Solution
Lab tested and verified:
We can see that both R2 and R4 are all advertising prefix 131.242.9.0/24 to route reflector R3, details as below:
On R3:
The route received from R4:
root@R3> show route receive-protocol bgp 10.160.40.16
bgp.l3vpn.0: 8 destinations, 14 routes (8 active, 0 holddown, 0 hidden)
Prefix Nexthop MED Lclpref AS path
45837:5509:1.1.1.1/32
10.160.40.16 2 100 65400 I
45837:5509:5.5.5.5/32
* 10.160.40.16 100 65400 I
45837:5509:6.6.6.6/32
* 10.160.40.16 1 100 65400 I
45837:5509:10.16.253.0/24
* 10.160.40.16 100 I
45837:5509:10.85.251.0/25
* 10.160.40.16 100 65400 I
45837:5509:131.242.9.0/24
10.160.40.16 2 100 65400 I
45837:5509:161.143.78.0/24
* 10.160.40.16 100 65400 I
The route received from R2:
root@R3> show route receive-protocol bgp 10.160.40.24
bgp.l3vpn.0: 8 destinations, 14 routes (8 active, 0 holddown, 0 hidden)
Prefix Nexthop MED Lclpref AS path
45837:5509:1.1.1.1/32
* 10.160.40.24 100 65400 I
45837:5509:5.5.5.5/32
10.160.40.24 2 100 65400 I
45837:5509:6.6.6.6/32
10.160.40.24 1 100 65400 I
45837:5509:10.16.253.0/24
10.160.40.24 100 I
45837:5509:10.85.249.0/25
* 10.160.40.24 100 65400 I
45837:5509:131.242.9.0/24
* 10.160.40.24 100 65400 I
45837:5509:161.143.78.0/24
10.160.40.24 2 100 65400 I
------------------
When run the command “
show route 131.242.9.0/24 extensive” on R3, the prefix was received from both R2 and R4 side, route reflector R3 selects R2 as the best path to the destination, details below:
root@R3> show route 131.242.9.0/24 extensive
bgp.l3vpn.0: 8 destinations, 14 routes (8 active, 0 holddown, 0 hidden)
45837:5509:131.242.9.0/24 (2 entries, 1 announced)
TSI:
Page 0 idx 0, (group CLIENTS type Internal) Type 1 val 0x6474060 (adv_entry)
Advertised metrics:
Nexthop: 10.160.40.24
Localpref: 100
AS path: [45837] 65400 I
Communities: target:45837:5509
Cluster ID: 10.160.40.1
Originator ID: 10.160.40.24
VPN Label: 16
Advertise: 00000001
Path 45837:5509:131.242.9.0
from 10.160.40.24
Vector len 4. Val: 0
*BGP
Preference: 170/-101
Route Distinguisher: 45837:5509
Next hop type: Indirect, Next hop index: 0
Address: 0x5a283fc
Next-hop reference count: 7
Source: 10.160.40.24
Protocol next hop: 10.160.40.24
Label operation: Push 16
Label TTL action: prop-ttl
Load balance label: Label 16: None;
Indirect next hop: 0x2 no-forward INH Session ID: 0x0
State: <Active Int Ext ProtectionPath ProtectionCand>
Local AS: 45837 Peer AS: 45837
Age: 27:30 Metric2: 1
Validation State: unverified
Task: BGP_45837.10.160.40.24
Announcement bits (1): 0-BGP_RT_Background
AS path: 65400 I
Communities: target:45837:5509
Accepted
Color: VPN Label: 16
Localpref: 100
Router ID: 10.160.40.24
Thread: junos-main
Indirect next hops: 1
Protocol next hop: 10.160.40.24 Metric: 1
Label operation: Push 16
Label TTL action: prop-ttl
Load balance label: Label 16: None;
Indirect next hop: 0x2 no-forward INH Session ID: 0x0
Indirect path forwarding next hops: 1
Next hop type: Router
Next hop: 23.1.1.2 via xe-0/0/0.0
Session Id: 0x0
10.160.40.24/32 Originating RIB: inet.3
Metric: 1 Node path count: 1
Forwarding nexthops: 1
Next hop type: Router
Next hop: 23.1.1.2 via xe-0/0/0.0
Session Id: 0x140
BGP
Preference: 170/-101
Route Distinguisher: 45837:5509
Next hop type: Indirect, Next hop index: 0
Address: 0x5a2832c
Next-hop reference count: 7
Source: 10.160.40.16
Protocol next hop: 10.160.40.16
Label operation: Push 16
Label TTL action: prop-ttl
Load balance label: Label 16: None;
Indirect next hop: 0x2 no-forward INH Session ID: 0x0
State: <NotBest Int Ext ProtectionPath ProtectionCand>
Inactive reason: Not Best in its group - Route Metric or MED comparison
Local AS: 45837 Peer AS: 45837
Age: 27:30 Metric: 2 Metric2: 1
Validation State: unverified
Task: BGP_45837.10.160.40.16
AS path: 65400 I
Communities: target:45837:5509
Accepted
Color: VPN Label: 16
Localpref: 100
Router ID: 10.160.40.16
Thread: junos-main
Indirect next hops: 1
Protocol next hop: 10.160.40.16 Metric: 1
Label operation: Push 16
Label TTL action: prop-ttl
Load balance label: Label 16: None;
Indirect next hop: 0x2 no-forward INH Session ID: 0x0
Indirect path forwarding next hops: 1
Next hop type: Router
Next hop: 34.1.1.4 via xe-0/0/1.0
Session Id: 0x0
10.160.40.16/32 Originating RIB: inet.3
Metric: 1 Node path count: 1
Forwarding nexthops: 1
Next hop type: Router
Next hop: 34.1.1.4 via xe-0/0/1.0
Session Id: 0x141
------------------
On route reflector R3, when run the command “ show route advertising-protocol bgp 10.160.40.16 131.242.9.0/24” to check the prefix advertise to neighbor R4, we can see that R2 is the next hop to the prefix:
root@R3> show route advertising-protocol bgp 10.160.40.16 131.242.9.0/24
bgp.l3vpn.0: 8 destinations, 14 routes (8 active, 0 holddown, 0 hidden)
Prefix Nexthop MED Lclpref AS path
45837:5509:131.242.9.0/24
* 10.160.40.24
100 65400 I
------------------
Lab result:
Route reflector R3 selects the path from R2 side as best path for the route to destination prefix 131.242.9.0/24 and didn’t advertise the path back to R2 since R2 was the router who originate the best path, but RR will advertise the best path to R4 and tell R4 that R2 is the next hop to the destination.
Conclusion:
Both client devices advertise the bgp route they learnt to RR device, after RR device learnt the route it received, for the different paths to the same destination, it will select the best path to the destination and advertise the best path to client, but not advertise to the client that it learnt the best path from.
Modification History
4/10 : KB article created
Route reflector does not advertise prefixes to client