Tested on Infix 24.06.0 in GNS3, but bug ought to exist in 24.08.0 as well.
By reading out interface neighbors from ietf-ospf.yang, you should be able to list neighbor(s) per interface
container neighbors {
config false;
description
"All neighbors for the interface.";
list neighbor {
key "neighbor-router-id";
description
"List of interface OSPF neighbors.";
leaf neighbor-router-id {
type rt-types:router-id;
description
"Neighbor's Router ID.";
}
uses neighbor-state;
}
}
However, infix lists all neighbors of the device as neighbors on every interface (even the loopback).
Look at router "r6" in the picture below.
On its interface "eth0" it should list r4 as neighbor, which happens to have router-id 10.1.1.4, but it lists r3 (10.1.1.3) and r5 (10.1.1.5) as well. And it does so on every OSPF interface (eth0, eth1, eth2 and lo).
Setup Infix 24.06.0 on (at least) three devices in GNS3 and connect them (R1 <=> R2 <=> R3)
Setup OSPF, preferably by point-to-point links
Check in CLI that they get ospf connectivity ('show ospf neighbor') on R2, and verify that R2 has a neighbor on two different interfaces.
Use sysrepocfg to extract yang-model of operational state on R2, sysrepocfg -X -d operational -fjson -x "/ietf-routing:routing/ietf-routing:control-plane-protocols
You should see that " lists R1 and R3 as neighbors on both sides.
Current Behavior
Tested on Infix 24.06.0 in GNS3, but bug ought to exist in 24.08.0 as well.
By reading out interface neighbors from ietf-ospf.yang, you should be able to list neighbor(s) per interface
However, infix lists all neighbors of the device as neighbors on every interface (even the loopback).
Look at router "r6" in the picture below.
On its interface "eth0" it should list r4 as neighbor, which happens to have router-id 10.1.1.4, but it lists r3 (10.1.1.3) and r5 (10.1.1.5) as well. And it does so on every OSPF interface (eth0, eth1, eth2 and lo).
Compare this with CLI status output
Expected Behavior
Steps To Reproduce
sysrepocfg -X -d operational -fjson -x "/ietf-routing:routing/ietf-routing:control-plane-protocols