Unable to trace Cables when single Interfaces are connected across multiple Circuits #11655

Closed
opened 2025-12-29 21:48:09 +01:00 by adam · 6 comments
Owner

Originally created by @craized on GitHub (Sep 26, 2025).

Originally assigned to: @DanSheps on GitHub.

NetBox Edition

NetBox Community

NetBox Version

v4.4.1

Python Version

3.10

Steps to Reproduce

I created this setup in the NetBox demo instance in case anyone has a chance to look before it gets blown out. I'm just linking the originating interfaces since everything else is very easy to find from a cable trace

https://demo.netbox.dev/dcim/interfaces/2493/
https://demo.netbox.dev/dcim/interfaces/2438/

  1. Create two Sites, SITEA and SITEB
  2. Create two Devices, device1.sitea and device1.siteb (Example QFX5100-48T
  3. Create two Circuits, SPAN1-SITEA-TX and SPAN1-SITEA-RX
  4. Create Circuit Termination at SITEA and SITEB on each Circuit
  5. Connect device1.sitea interface et-0/0/48 to Circuit Termination "A" for both Circuit SPAN1-SITEA-TX and SPAN1-SITEA-RX by
    • Selecting two Circuits, SPAN1-SITEA-TX and SPAN1-SITEA-RX
    • Selecting two Sides, SPAN1-SITEA-TX: Termination A and SPAN1-SITEA-RX: Termination A
  6. Connect device1.siteb interface et-0/0/48 to Circuit Termination "Z" for both Circuit SPAN1-SITEA-TX and SPAN1-SITEA-RX by
    • Selecting two Circuits, SPAN1-SITEA-TX and SPAN1-SITEA-RX
    • Selecting two Sides, SPAN1-SITEA-TX: Termination B and SPAN1-SITEA-RX: Termination B
  7. Attempt to trace interface

Expected Behavior

A cable trace that goes from one interface, splits to both Circuit Termination Zs, then collapses from both Circuit Termination As to the far end interface

Observed Behavior

Path split! is detected between the Circuit and Termination Zs

Initial trace:
Image

Remaining trace after a split node is selected
Image

Originally created by @craized on GitHub (Sep 26, 2025). Originally assigned to: @DanSheps on GitHub. ### NetBox Edition NetBox Community ### NetBox Version v4.4.1 ### Python Version 3.10 ### Steps to Reproduce I created this setup in the NetBox demo instance in case anyone has a chance to look before it gets blown out. I'm just linking the originating interfaces since everything else is very easy to find from a cable trace https://demo.netbox.dev/dcim/interfaces/2493/ https://demo.netbox.dev/dcim/interfaces/2438/ 1. Create two Sites, SITEA and SITEB 2. Create two Devices, device1.sitea and device1.siteb (Example QFX5100-48T 3. Create two Circuits, SPAN1-SITEA-TX and SPAN1-SITEA-RX 4. Create Circuit Termination at SITEA and SITEB on each Circuit 5. Connect device1.sitea interface et-0/0/48 to Circuit Termination "A" for both Circuit SPAN1-SITEA-TX and SPAN1-SITEA-RX by - Selecting two Circuits, SPAN1-SITEA-TX and SPAN1-SITEA-RX - Selecting two Sides, SPAN1-SITEA-TX: Termination A and SPAN1-SITEA-RX: Termination A 6. Connect device1.siteb interface et-0/0/48 to Circuit Termination "Z" for both Circuit SPAN1-SITEA-TX and SPAN1-SITEA-RX by - Selecting two Circuits, SPAN1-SITEA-TX and SPAN1-SITEA-RX - Selecting two Sides, SPAN1-SITEA-TX: Termination B and SPAN1-SITEA-RX: Termination B 7. Attempt to trace interface ### Expected Behavior A cable trace that goes from one interface, splits to both Circuit Termination Zs, then collapses from both Circuit Termination As to the far end interface ### Observed Behavior Path split! is detected between the Circuit and Termination Zs Initial trace: <img width="528" height="665" alt="Image" src="https://github.com/user-attachments/assets/e9d2a102-5d22-4792-88cd-0c6c53911d21" /> Remaining trace after a split node is selected <img width="684" height="659" alt="Image" src="https://github.com/user-attachments/assets/1d02bdb0-71f2-48d5-9947-214eac0b9123" />
adam added the type: bugstatus: acceptednetboxtopic: cablingseverity: low labels 2025-12-29 21:48:09 +01:00
adam closed this issue 2025-12-29 21:48:09 +01:00
Author
Owner

@arthanson commented on GitHub (Sep 29, 2025):

@DanSheps was not getting a reproduction on this, but the cabling wasn't being split so not sure if steps 4 and 5 are clear. Can you check if this is a valid scenario for the cabling tracing. Can be put into the backlog if so, a lower priority to fix.

@arthanson commented on GitHub (Sep 29, 2025): @DanSheps was not getting a reproduction on this, but the cabling wasn't being split so not sure if steps 4 and 5 are clear. Can you check if this is a valid scenario for the cabling tracing. Can be put into the backlog if so, a lower priority to fix.
Author
Owner

@craized commented on GitHub (Sep 29, 2025):

I edited the description to hopefully make it more clear. If it's still unclear I'll re-model in the demo environment and add screenshots of the cable creation. Thank you for starting investigation.

@craized commented on GitHub (Sep 29, 2025): I edited the description to hopefully make it more clear. If it's still unclear I'll re-model in the demo environment and add screenshots of the cable creation. Thank you for starting investigation.
Author
Owner

@DanSheps commented on GitHub (Oct 3, 2025):

I am able to recreate this in my dev environment. I will work on it shortly.

@DanSheps commented on GitHub (Oct 3, 2025): I am able to recreate this in my dev environment. I will work on it shortly.
Author
Owner

@DanSheps commented on GitHub (Oct 3, 2025):

So, looking at this, there are a couple issues:

  1. Mid-Span terminations need to be the same parent (current code)
  2. We create a split and exit at line 774

Both of these are handleable but it might alter future functionality or introduce unintended consequences. I also think this would be better tracked as a feature enhancement, not a bug as this is intended behaviour.

That said, altering the code, I am able to get a proper trace:

Image
@DanSheps commented on GitHub (Oct 3, 2025): So, looking at this, there are a couple issues: 1. Mid-Span terminations need to be the same parent (current code) 2. We create a split and exit at line 774 Both of these are handleable but it might alter future functionality or introduce unintended consequences. I also think this would be better tracked as a feature enhancement, not a bug as this is intended behaviour. That said, altering the code, I am able to get a proper trace: <img width="594" height="832" alt="Image" src="https://github.com/user-attachments/assets/726561d5-0aa6-4377-b5c2-2a0918e6e1ec" />
Author
Owner

@jeremystretch commented on GitHub (Nov 6, 2025):

@DanSheps are you still working on this?

@jeremystretch commented on GitHub (Nov 6, 2025): @DanSheps are you still working on this?
Author
Owner

@DanSheps commented on GitHub (Nov 7, 2025):

Yes I am, sorry, I was waiting to see if anyone had any thoughts on my comment but looks like there are no strong opinions so I will proceed as a bug for now.

@DanSheps commented on GitHub (Nov 7, 2025): Yes I am, sorry, I was waiting to see if anyone had any thoughts on my comment but looks like there are no strong opinions so I will proceed as a bug for now.
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: starred/netbox#11655