diff options
author | Cheeze_It <none@none.com> | 2020-11-22 21:01:40 -0700 |
---|---|---|
committer | Cheeze_It <none@none.com> | 2020-11-22 21:01:40 -0700 |
commit | f04c0f59699095e3b6708f16cc01222c273d41ac (patch) | |
tree | 01bc8e83eeecd915ea26daa66236aa7ec9d7cf01 /interface-definitions | |
parent | 4b219bbf1b3529ef285bb5b7bd3ff1292bfc9541 (diff) | |
download | vyos-1x-f04c0f59699095e3b6708f16cc01222c273d41ac.tar.gz vyos-1x-f04c0f59699095e3b6708f16cc01222c273d41ac.zip |
mpls-conf: T915: Refactored FRR LDP template, MPLS handler, added MPLS global features
So this is a big update.
The first thing that was done was a refactor to the FRR LDP template, MPLS handler, and XML conf tree MPLS global additions.
The refactors should work and I did test them in my lab. It seems that everything does work as needed so far in my testing.
There is something here that is considered configuration breaking from the old setup though. In the old setup the MPLS interface operation (as in the interfaces accepting MPLS labels and processing them) was tied with LDP. What this means is that MPLS processing was enabled at the same time as LDP interfaces were configured. We do not want this behavior for the future as there's other MPLS underlay technologies like SR and RSVP. If someone wants to enable SR or RSVP without enabling LDP then they now can. Before, they couldn't. The other additions are global changes to MPLS TTL propagation and MPLS max TTL enforcement. They have now been added.
Lastly, there is an frr-reload bug that Runar Borge found with this. We have found that when totally deleting LDP that there has to be 3 commits done. This is because frr-reload doesn't properly do what it needs to do in 1 operation so we had to do 3. This will only affect people that are doing an entire LDP clear using "delete protocols mpls ldp." Otherwise it isn't seen.
Anyway, this refactor now works with the FRR daemon directly for all changes. This also makes it much easier for adding stuff in the future.
Thank you
Diffstat (limited to 'interface-definitions')
-rw-r--r-- | interface-definitions/protocols-mpls.xml.in | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/interface-definitions/protocols-mpls.xml.in b/interface-definitions/protocols-mpls.xml.in index 4df2be4e7..16286f2c4 100644 --- a/interface-definitions/protocols-mpls.xml.in +++ b/interface-definitions/protocols-mpls.xml.in @@ -375,6 +375,15 @@ </leafNode> </children> </node> + <leafNode name="interface"> + <properties> + <help>Enable MPLS packet processing on interface</help> + <completionHelp> + <script>${vyos_completion_dir}/list_interfaces.py</script> + </completionHelp> + <multi/> + </properties> + </leafNode> </children> </node> </children> |