summaryrefslogtreecommitdiff
path: root/interface-definitions
diff options
context:
space:
mode:
authorChristian Breunig <christian@breunig.cc>2024-05-11 14:12:31 +0200
committerMergify <37929162+mergify[bot]@users.noreply.github.com>2024-05-12 14:28:20 +0000
commit42ca28f2956fc7a5a1dc591714410d5423d90f73 (patch)
treef2a7e8e6bde24941a8538f112ced6483c966885f /interface-definitions
parentb976dad08782275f3276be1ab62633fa28860fb1 (diff)
downloadvyos-1x-42ca28f2956fc7a5a1dc591714410d5423d90f73.tar.gz
vyos-1x-42ca28f2956fc7a5a1dc591714410d5423d90f73.zip
ethernet: T6306: add support for EVPN MH uplink/core tracking
When all the underlay links go down the PE no longer has access to the VxLAN +overlay. To prevent blackholing of traffic the server/ES links are protodowned on the PE. A link can be setup for uplink tracking via the following configuration: set interfaces ethernet eth0 evpn uplink (cherry picked from commit 5565f27d15c5e7378e94aae8db8a894a12e25d7b)
Diffstat (limited to 'interface-definitions')
-rw-r--r--interface-definitions/include/interface/evpn-mh-uplink.xml.i8
-rw-r--r--interface-definitions/interfaces_bonding.xml.in7
-rw-r--r--interface-definitions/interfaces_ethernet.xml.in8
3 files changed, 17 insertions, 6 deletions
diff --git a/interface-definitions/include/interface/evpn-mh-uplink.xml.i b/interface-definitions/include/interface/evpn-mh-uplink.xml.i
new file mode 100644
index 000000000..5f7fe1b7f
--- /dev/null
+++ b/interface-definitions/include/interface/evpn-mh-uplink.xml.i
@@ -0,0 +1,8 @@
+<!-- include start from interface/evpn-mh-uplink.xml.i -->
+<leafNode name="uplink">
+ <properties>
+ <help>Uplink to the VXLAN core</help>
+ <valueless/>
+ </properties>
+</leafNode>
+<!-- include end -->
diff --git a/interface-definitions/interfaces_bonding.xml.in b/interface-definitions/interfaces_bonding.xml.in
index e6baed590..cc0327f3d 100644
--- a/interface-definitions/interfaces_bonding.xml.in
+++ b/interface-definitions/interfaces_bonding.xml.in
@@ -102,12 +102,7 @@
</constraint>
</properties>
</leafNode>
- <leafNode name="uplink">
- <properties>
- <help>Uplink to the VXLAN core</help>
- <valueless/>
- </properties>
- </leafNode>
+ #include <include/interface/evpn-mh-uplink.xml.i>
</children>
</node>
<leafNode name="hash-policy">
diff --git a/interface-definitions/interfaces_ethernet.xml.in b/interface-definitions/interfaces_ethernet.xml.in
index 4e55bac7c..89f990d41 100644
--- a/interface-definitions/interfaces_ethernet.xml.in
+++ b/interface-definitions/interfaces_ethernet.xml.in
@@ -57,6 +57,14 @@
<defaultValue>auto</defaultValue>
</leafNode>
#include <include/interface/eapol.xml.i>
+ <node name="evpn">
+ <properties>
+ <help>EVPN Multihoming</help>
+ </properties>
+ <children>
+ #include <include/interface/evpn-mh-uplink.xml.i>
+ </children>
+ </node>
#include <include/interface/hw-id.xml.i>
#include <include/interface/ipv4-options.xml.i>
#include <include/interface/ipv6-options.xml.i>