summaryrefslogtreecommitdiff
path: root/interface-definitions/interfaces_vxlan.xml.in
diff options
context:
space:
mode:
authorkumvijaya <kuvmijaya@gmail.com>2024-09-26 11:31:07 +0530
committerkumvijaya <kuvmijaya@gmail.com>2024-09-26 11:31:07 +0530
commita950059053f7394acfb453cc0d8194aa3dc721fa (patch)
treeeb0acf278f649b5d1417e18e34d728efcd16e745 /interface-definitions/interfaces_vxlan.xml.in
parentf0815f3e9b212f424f5adb0c572a71119ad4a8a0 (diff)
downloadvyos-workflow-test-temp-a950059053f7394acfb453cc0d8194aa3dc721fa.tar.gz
vyos-workflow-test-temp-a950059053f7394acfb453cc0d8194aa3dc721fa.zip
T6732: added same as vyos 1x
Diffstat (limited to 'interface-definitions/interfaces_vxlan.xml.in')
-rw-r--r--interface-definitions/interfaces_vxlan.xml.in153
1 files changed, 153 insertions, 0 deletions
diff --git a/interface-definitions/interfaces_vxlan.xml.in b/interface-definitions/interfaces_vxlan.xml.in
new file mode 100644
index 0000000..937acb1
--- /dev/null
+++ b/interface-definitions/interfaces_vxlan.xml.in
@@ -0,0 +1,153 @@
+<?xml version="1.0"?>
+<interfaceDefinition>
+ <node name="interfaces">
+ <children>
+ <tagNode name="vxlan" owner="${vyos_conf_scripts_dir}/interfaces_vxlan.py">
+ <properties>
+ <help>Virtual Extensible LAN (VXLAN) Interface</help>
+ <priority>460</priority>
+ <constraint>
+ <regex>vxlan[0-9]+</regex>
+ </constraint>
+ <constraintErrorMessage>VXLAN interface must be named vxlanN</constraintErrorMessage>
+ <valueHelp>
+ <format>vxlanN</format>
+ <description>VXLAN interface name</description>
+ </valueHelp>
+ </properties>
+ <children>
+ #include <include/interface/address-ipv4-ipv6.xml.i>
+ #include <include/generic-description.xml.i>
+ #include <include/interface/disable.xml.i>
+ <leafNode name="gpe">
+ <properties>
+ <help>Enable Generic Protocol extension (VXLAN-GPE)</help>
+ <valueless/>
+ </properties>
+ </leafNode>
+ <leafNode name="group">
+ <properties>
+ <help>Multicast group address for VXLAN interface</help>
+ <valueHelp>
+ <format>ipv4</format>
+ <description>Multicast IPv4 group address</description>
+ </valueHelp>
+ <valueHelp>
+ <format>ipv6</format>
+ <description>Multicast IPv6 group address</description>
+ </valueHelp>
+ <constraint>
+ <validator name="ipv4-multicast"/>
+ <validator name="ipv6-multicast"/>
+ </constraint>
+ <constraintErrorMessage>Multicast IPv4/IPv6 address required</constraintErrorMessage>
+ </properties>
+ </leafNode>
+ #include <include/interface/ipv4-options.xml.i>
+ #include <include/interface/ipv6-options.xml.i>
+ #include <include/interface/mac.xml.i>
+ #include <include/interface/mtu-1200-16000.xml.i>
+ #include <include/interface/mirror.xml.i>
+ <node name="parameters">
+ <properties>
+ <help>VXLAN tunnel parameters</help>
+ </properties>
+ <children>
+ <node name="ip">
+ <properties>
+ <help>IPv4 specific tunnel parameters</help>
+ </properties>
+ <children>
+ #include <include/interface/parameters-df.xml.i>
+ #include <include/interface/parameters-tos.xml.i>
+ #include <include/interface/parameters-ttl.xml.i>
+ <leafNode name="ttl">
+ <defaultValue>16</defaultValue>
+ </leafNode>
+ </children>
+ </node>
+ <node name="ipv6">
+ <properties>
+ <help>IPv6 specific tunnel parameters</help>
+ </properties>
+ <children>
+ #include <include/interface/parameters-flowlabel.xml.i>
+ </children>
+ </node>
+ <leafNode name="external">
+ <properties>
+ <help>Use external control plane</help>
+ <valueless/>
+ </properties>
+ </leafNode>
+ <leafNode name="nolearning">
+ <properties>
+ <help>Do not add unknown addresses into forwarding database</help>
+ <valueless/>
+ </properties>
+ </leafNode>
+ <leafNode name="neighbor-suppress">
+ <properties>
+ <help>Enable neighbor discovery (ARP and ND) suppression</help>
+ <valueless/>
+ </properties>
+ </leafNode>
+ <leafNode name="vni-filter">
+ <properties>
+ <help>Enable VNI filter support</help>
+ <valueless/>
+ </properties>
+ </leafNode>
+ </children>
+ </node>
+ #include <include/port-number.xml.i>
+ <leafNode name="port">
+ <defaultValue>4789</defaultValue>
+ </leafNode>
+ #include <include/source-address-ipv4-ipv6.xml.i>
+ #include <include/source-interface.xml.i>
+ #include <include/interface/tunnel-remote-multi.xml.i>
+ #include <include/interface/redirect.xml.i>
+ #include <include/interface/vrf.xml.i>
+ #include <include/vni.xml.i>
+ <tagNode name="vlan-to-vni">
+ <properties>
+ <help>Configuring VLAN-to-VNI mappings for EVPN-VXLAN</help>
+ <valueHelp>
+ <format>u32:0-4094</format>
+ <description>Virtual Local Area Network (VLAN) ID</description>
+ </valueHelp>
+ <valueHelp>
+ <format>&lt;start-end&gt;</format>
+ <description>VLAN IDs range (use '-' as delimiter)</description>
+ </valueHelp>
+ <constraint>
+ <validator name="numeric" argument="--allow-range --range 0-4094"/>
+ </constraint>
+ <constraintErrorMessage>Not a valid VLAN ID or range, VLAN ID must be between 0 and 4094</constraintErrorMessage>
+ </properties>
+ <children>
+ <leafNode name="vni">
+ <properties>
+ <help>Virtual Network Identifier</help>
+ <valueHelp>
+ <format>u32:0-16777214</format>
+ <description>VXLAN virtual network identifier</description>
+ </valueHelp>
+ <valueHelp>
+ <format>&lt;start-end&gt;</format>
+ <description>VXLAN virtual network IDs range (use '-' as delimiter)</description>
+ </valueHelp>
+ <constraint>
+ <validator name="numeric" argument="--allow-range --range 0-16777214"/>
+ </constraint>
+ <constraintErrorMessage>Not a valid VXLAN virtual network ID or range</constraintErrorMessage>
+ </properties>
+ </leafNode>
+ </children>
+ </tagNode>
+ </children>
+ </tagNode>
+ </children>
+ </node>
+</interfaceDefinition>