File tree Expand file tree Collapse file tree 1 file changed +11
-6
lines changed
Expand file tree Collapse file tree 1 file changed +11
-6
lines changed Original file line number Diff line number Diff line change @@ -1957,12 +1957,17 @@ def get_bgp_neighbors(self):
19571957 # get neighbor_entry out of neighbor data
19581958 neighbor_entry = None
19591959 for neighbor in neighbor_data :
1960- if (
1961- neighbor ["afi" ].lower () == afi
1962- and napalm .base .helpers .ip (neighbor ["remote_addr" ]) == remote_addr
1963- ):
1964- neighbor_entry = neighbor
1965- break
1960+ current_neighbor = napalm .base .helpers .ip (neighbor ["remote_addr" ])
1961+ if neighbor ["afi" ].lower () == afi and current_neighbor == remote_addr :
1962+ # Neighbor IPs in VRFs can overlap, so make sure
1963+ # we haven't covered this VRF + IP already
1964+ vrf = neighbor ["vrf" ] or "global"
1965+ if (
1966+ vrf == "global"
1967+ or current_neighbor not in bgp_neighbor_data [vrf ]["peers" ]
1968+ ):
1969+ neighbor_entry = neighbor
1970+ break
19661971 # check for proper session data for the afi
19671972 if neighbor_entry is None :
19681973 continue
You can’t perform that action at this time.
0 commit comments