Page MenuHomeVyOS Platform

ISIS and OSPF syncronization with IGP-LDP sync
Closed, ResolvedPublicFEATURE REQUEST

Description

This is now available, and we should add it to VyOS if we can.

Details

Version
1.4
Is it a breaking change?
Perfectly compatible
Issue type
Feature (new functionality)

Event Timeline

Added initial implementation here:

https://github.com/vyos/vyos-1x/pull/1904

We *might* have a problem with this as it seems like it might be buggy. I'll open up a case with FRR if you guys feel the need to do so.

The main thing I noticed is, when I enable OSPF LDP-IGP sync, under the interface we have a command "ip ospf mpls ldp-sync" that doesn't go away until there's a reboot. It's not there for ISIS for some reason.

Cheeze_It changed the task status from Open to Needs testing.Apr 24 2023, 5:54 AM
Cheeze_It triaged this task as Normal priority.

I was able to test this for ISIS. I'll test OSPF hopefully tomorrow.

Here we have a topology where there's a VyOS router and a Juniper router. They are connected to each other on one specific interface.

Under normal operations the VyOS box looks like this for ISIS:

vyos@VyOS-BB2:~$ show isis interface detail | match "Interface|Metric"
  Interface: eth0, State: Up, Active, Circuit Id: 0x0
      Metric: 10, Active neighbors: 1
  Interface: eth1, State: Up, Active, Circuit Id: 0x0
      Metric: 10, Active neighbors: 1
  Interface: eth2, State: Up, Active, Circuit Id: 0x0
      Metric: 10, Active neighbors: 1
  Interface: lo, State: Up, Passive, Circuit Id: 0x0
      Metric: 10

When we reset the LDP session on the Juniper, it goes to this:

root@vMX-BB2-RE> clear ldp session 192.168.255.2

vyos@VyOS-BB2:~$ show isis interface detail | match "Interface|Metric"
  Interface: eth0, State: Up, Active, Circuit Id: 0x0
      Metric: 10, Active neighbors: 1
  Interface: eth1, State: Up, Active, Circuit Id: 0x0
      Metric: 10, Active neighbors: 1
  Interface: eth2, State: Up, Active, Circuit Id: 0x0
      Metric: 16777214, Active neighbors: 1
  Interface: lo, State: Up, Passive, Circuit Id: 0x0
      Metric: 10

After a while, once LDP converges the metric comes back down:

vyos@VyOS-BB2:~$ show isis interface detail | match "Interface|Metric"
  Interface: eth0, State: Up, Active, Circuit Id: 0x0
      Metric: 10, Active neighbors: 1
  Interface: eth1, State: Up, Active, Circuit Id: 0x0
      Metric: 10, Active neighbors: 1
  Interface: eth2, State: Up, Active, Circuit Id: 0x0
      Metric: 16777214, Active neighbors: 1
  Interface: lo, State: Up, Passive, Circuit Id: 0x0
      Metric: 10
vyos@VyOS-BB2:~$ show isis interface detail | match "Interface|Metric"
  Interface: eth0, State: Up, Active, Circuit Id: 0x0
      Metric: 10, Active neighbors: 1
  Interface: eth1, State: Up, Active, Circuit Id: 0x0
      Metric: 10, Active neighbors: 1
  Interface: eth2, State: Up, Active, Circuit Id: 0x0
      Metric: 10, Active neighbors: 1
  Interface: lo, State: Up, Passive, Circuit Id: 0x0
      Metric: 10

Under normal operations the VyOS box looks like this for OSPF:

vyos@VyOS-BB1:~$ show ip ospf interface | egrep "eth|lo is up|Cost"
eth0 is up
  Router ID 192.168.255.1, Network Type POINTOPOINT, Cost: 10
eth2 is up
  Router ID 192.168.255.1, Network Type POINTOPOINT, Cost: 10
lo is up
  Router ID 192.168.255.1, Network Type LOOPBACK, Cost: 0

When we reset the LDP session on the Juniper, it goes to this:

root@vMX-BB1-RE> clear ldp session 192.168.255.1

vyos@VyOS-BB1:~$ show ip ospf interface | egrep "eth|lo is up|Cost"
eth0 is up
  Router ID 192.168.255.1, Network Type POINTOPOINT, Cost: 10
eth2 is up
  Router ID 192.168.255.1, Network Type POINTOPOINT, Cost: 65535
lo is up
  Router ID 192.168.255.1, Network Type LOOPBACK, Cost: 0

After a while, once LDP converges the metric comes back down:

vyos@VyOS-BB1:~$ show ip ospf interface | egrep "eth|lo is up|Cost"
eth0 is up
  Router ID 192.168.255.1, Network Type POINTOPOINT, Cost: 10
eth2 is up
  Router ID 192.168.255.1, Network Type POINTOPOINT, Cost: 10
lo is up
  Router ID 192.168.255.1, Network Type LOOPBACK, Cost: 0
Cheeze_It edited a custom field.
Cheeze_It changed Version from - to 1.4.