diff --git a/interface-definitions/include/interface/mtu-68-16000.xml.i b/interface-definitions/include/interface/mtu-68-16000.xml.i
index cb666f470..df1b7b716 100644
--- a/interface-definitions/include/interface/mtu-68-16000.xml.i
+++ b/interface-definitions/include/interface/mtu-68-16000.xml.i
@@ -1,16 +1,15 @@
 <!-- include start from interface/mtu-68-16000.xml.i -->
 <leafNode name="mtu">
   <properties>
     <help>Maximum Transmission Unit (MTU)</help>
     <valueHelp>
       <format>u32:68-16000</format>
       <description>Maximum Transmission Unit in byte</description>
     </valueHelp>
     <constraint>
       <validator name="numeric" argument="--range 68-16000"/>
     </constraint>
     <constraintErrorMessage>MTU must be between 68 and 16000</constraintErrorMessage>
   </properties>
-  <defaultValue>1500</defaultValue>
 </leafNode>
 <!-- include end -->
diff --git a/interface-definitions/interfaces_bonding.xml.in b/interface-definitions/interfaces_bonding.xml.in
index 62ee0bdc7..92c0911db 100644
--- a/interface-definitions/interfaces_bonding.xml.in
+++ b/interface-definitions/interfaces_bonding.xml.in
@@ -1,286 +1,289 @@
 <?xml version="1.0"?>
 <interfaceDefinition>
   <node name="interfaces">
     <children>
       <tagNode name="bonding" owner="${vyos_conf_scripts_dir}/interfaces_bonding.py">
         <properties>
           <help>Bonding Interface/Link Aggregation</help>
           <priority>320</priority>
           <constraint>
             <regex>bond[0-9]+</regex>
           </constraint>
           <constraintErrorMessage>Bonding interface must be named bondN</constraintErrorMessage>
           <valueHelp>
             <format>bondN</format>
             <description>Bonding interface name</description>
           </valueHelp>
         </properties>
         <children>
           #include <include/interface/address-ipv4-ipv6-dhcp.xml.i>
           <node name="arp-monitor">
             <properties>
               <help>ARP link monitoring parameters</help>
             </properties>
             <children>
               <leafNode name="interval">
                 <properties>
                   <help>ARP link monitoring interval</help>
                   <valueHelp>
                     <format>u32</format>
                     <description>Specifies the ARP link monitoring frequency in milliseconds</description>
                   </valueHelp>
                   <constraint>
                     <validator name="numeric" argument="--range 0-4294967295"/>
                   </constraint>
                 </properties>
               </leafNode>
               <leafNode name="target">
                 <properties>
                   <help>IP address used for ARP monitoring</help>
                   <valueHelp>
                     <format>ipv4</format>
                     <description>Specify IPv4 address of ARP requests when interval is enabled</description>
                   </valueHelp>
                   <constraint>
                     <validator name="ipv4-address"/>
                   </constraint>
                   <multi/>
                 </properties>
               </leafNode>
             </children>
           </node>
           #include <include/generic-description.xml.i>
           #include <include/interface/dhcp-options.xml.i>
           #include <include/interface/dhcpv6-options.xml.i>
           #include <include/interface/disable-link-detect.xml.i>
           #include <include/interface/disable.xml.i>
           #include <include/interface/vrf.xml.i>
           #include <include/interface/mirror.xml.i>
           <node name="evpn">
             <properties>
               <help>EVPN Multihoming</help>
             </properties>
             <children>
               <leafNode name="es-df-pref">
                 <properties>
                   <help>Preference value used for designated forwarder (DF) election</help>
                   <valueHelp>
                     <format>u32:1-65535</format>
                     <description>DF Preference value</description>
                   </valueHelp>
                   <constraint>
                     <validator name="numeric" argument="--range 1-65535"/>
                   </constraint>
                 </properties>
               </leafNode>
               <leafNode name="es-id">
                 <properties>
                   <help>Ethernet segment identifier</help>
                   <valueHelp>
                     <format>u32:1-16777215</format>
                     <description>Local discriminator</description>
                   </valueHelp>
                   <valueHelp>
                     <format>txt</format>
                     <description>10-byte ID - 00:11:22:33:44:55:AA:BB:CC:DD</description>
                   </valueHelp>
                   <constraint>
                     <validator name="numeric" argument="--range 1-65535"/>
                     <regex>([0-9A-Fa-f][0-9A-Fa-f]:){9}[0-9A-Fa-f][0-9A-Fa-f]</regex>
                   </constraint>
                 </properties>
               </leafNode>
               <leafNode name="es-sys-mac">
                 <properties>
                   <help>Ethernet segment system MAC</help>
                   <valueHelp>
                     <format>macaddr</format>
                     <description>MAC address</description>
                   </valueHelp>
                   <constraint>
                     <validator name="mac-address"/>
                   </constraint>
                 </properties>
               </leafNode>
               <leafNode name="uplink">
                 <properties>
                   <help>Uplink to the VXLAN core</help>
                   <valueless/>
                 </properties>
               </leafNode>
             </children>
           </node>
           <leafNode name="hash-policy">
             <properties>
               <help>Bonding transmit hash policy</help>
               <completionHelp>
                 <list>layer2 layer2+3 layer3+4 encap2+3 encap3+4</list>
               </completionHelp>
               <valueHelp>
                 <format>layer2</format>
                 <description>use MAC addresses to generate the hash</description>
               </valueHelp>
               <valueHelp>
                 <format>layer2+3</format>
                 <description>combine MAC address and IP address to make hash</description>
               </valueHelp>
               <valueHelp>
                 <format>layer3+4</format>
                 <description>combine IP address and port to make hash</description>
               </valueHelp>
               <valueHelp>
                 <format>encap2+3</format>
                 <description>combine encapsulated MAC address and IP address to make hash</description>
               </valueHelp>
               <valueHelp>
                 <format>encap3+4</format>
                 <description>combine encapsulated IP address and port to make hash</description>
               </valueHelp>
               <constraint>
                 <regex>(layer2\+3|layer3\+4|layer2|encap2\+3|encap3\+4)</regex>
               </constraint>
               <constraintErrorMessage>hash-policy must be layer2 layer2+3 layer3+4 encap2+3 or encap3+4</constraintErrorMessage>
             </properties>
             <defaultValue>layer2</defaultValue>
           </leafNode>
           #include <include/interface/ipv4-options.xml.i>
           #include <include/interface/ipv6-options.xml.i>
           #include <include/interface/mac.xml.i>
           <leafNode name="mii-mon-interval">
             <properties>
               <help>Specifies the MII link monitoring frequency in milliseconds</help>
               <valueHelp>
                 <format>u32:0</format>
                 <description>Disable MII link monitoring</description>
               </valueHelp>
               <valueHelp>
                 <format>u32:50-1000</format>
                 <description>MII link monitoring frequency in milliseconds</description>
               </valueHelp>
               <constraint>
                 <validator name="numeric" argument="--range 0-0 --range 50-1000"/>
               </constraint>
             </properties>
             <defaultValue>100</defaultValue>
           </leafNode>
           <leafNode name="min-links">
             <properties>
               <help>Minimum number of member interfaces required up before enabling bond</help>
               <valueHelp>
                 <format>u32:0-16</format>
                 <description>Minimum number of member interfaces required up before enabling bond</description>
               </valueHelp>
               <constraint>
                 <validator name="numeric" argument="--range 0-16"/>
               </constraint>
             </properties>
             <defaultValue>0</defaultValue>
           </leafNode>
           <leafNode name="lacp-rate">
             <properties>
               <help>Rate in which we will ask our link partner to transmit LACPDU packets</help>
               <completionHelp>
                 <list>slow fast</list>
               </completionHelp>
               <valueHelp>
                 <format>slow</format>
                 <description>Request partner to transmit LACPDUs every 30 seconds</description>
               </valueHelp>
               <valueHelp>
                 <format>fast</format>
                 <description>Request partner to transmit LACPDUs every 1 second</description>
               </valueHelp>
               <constraint>
                 <regex>(slow|fast)</regex>
               </constraint>
             </properties>
             <defaultValue>slow</defaultValue>
           </leafNode>
           <leafNode name="mode">
             <properties>
               <help>Bonding mode</help>
               <completionHelp>
                 <list>802.3ad active-backup broadcast round-robin transmit-load-balance adaptive-load-balance xor-hash</list>
               </completionHelp>
               <valueHelp>
                 <format>802.3ad</format>
                 <description>IEEE 802.3ad Dynamic link aggregation</description>
               </valueHelp>
               <valueHelp>
                 <format>active-backup</format>
                 <description>Fault tolerant: only one slave in the bond is active</description>
               </valueHelp>
               <valueHelp>
                 <format>broadcast</format>
                 <description>Fault tolerant: transmits everything on all slave interfaces</description>
               </valueHelp>
               <valueHelp>
                 <format>round-robin</format>
                 <description>Load balance: transmit packets in sequential order</description>
               </valueHelp>
               <valueHelp>
                 <format>transmit-load-balance</format>
                 <description>Load balance: adapts based on transmit load and speed</description>
               </valueHelp>
               <valueHelp>
                 <format>adaptive-load-balance</format>
                 <description>Load balance: adapts based on transmit and receive plus ARP</description>
               </valueHelp>
               <valueHelp>
                 <format>xor-hash</format>
                 <description>Distribute based on MAC address</description>
               </valueHelp>
               <constraint>
                 <regex>(802.3ad|active-backup|broadcast|round-robin|transmit-load-balance|adaptive-load-balance|xor-hash)</regex>
               </constraint>
               <constraintErrorMessage>mode must be 802.3ad, active-backup, broadcast, round-robin, transmit-load-balance, adaptive-load-balance, or xor</constraintErrorMessage>
             </properties>
             <defaultValue>802.3ad</defaultValue>
           </leafNode>
           <node name="member">
             <properties>
               <help>Bridge member interfaces</help>
             </properties>
             <children>
               <leafNode name="interface">
                 <properties>
                   <help>Member interface name</help>
                   <completionHelp>
                     <script>${vyos_completion_dir}/list_interfaces --bondable</script>
                   </completionHelp>
                   <valueHelp>
                     <format>txt</format>
                     <description>Interface name</description>
                   </valueHelp>
                   <constraint>
                     #include <include/constraint/interface-name.xml.i>
                   </constraint>
                   <multi/>
                 </properties>
               </leafNode>
             </children>
           </node>
           #include <include/interface/mtu-68-16000.xml.i>
+          <leafNode name="mtu">
+            <defaultValue>1500</defaultValue>
+          </leafNode>
           <leafNode name="primary">
             <properties>
               <help>Primary device interface</help>
               <completionHelp>
                 <script>${vyos_completion_dir}/list_interfaces --bondable</script>
               </completionHelp>
               <valueHelp>
                 <format>txt</format>
                 <description>Interface name</description>
               </valueHelp>
               <constraint>
                 #include <include/constraint/interface-name.xml.i>
               </constraint>
             </properties>
           </leafNode>
           #include <include/interface/redirect.xml.i>
           #include <include/interface/vif-s.xml.i>
           #include <include/interface/vif.xml.i>
         </children>
       </tagNode>
     </children>
   </node>
 </interfaceDefinition>
diff --git a/interface-definitions/interfaces_bridge.xml.in b/interface-definitions/interfaces_bridge.xml.in
index 7fb5f121a..29dd61df5 100644
--- a/interface-definitions/interfaces_bridge.xml.in
+++ b/interface-definitions/interfaces_bridge.xml.in
@@ -1,230 +1,233 @@
 <?xml version="1.0"?>
 <interfaceDefinition>
   <node name="interfaces">
     <children>
       <tagNode name="bridge" owner="${vyos_conf_scripts_dir}/interfaces_bridge.py">
         <properties>
           <help>Bridge Interface</help>
           <priority>310</priority>
           <constraint>
             <regex>br[0-9]+</regex>
           </constraint>
           <constraintErrorMessage>Bridge interface must be named brN</constraintErrorMessage>
           <valueHelp>
             <format>brN</format>
             <description>Bridge interface name</description>
           </valueHelp>
         </properties>
         <children>
           #include <include/interface/address-ipv4-ipv6-dhcp.xml.i>
           <leafNode name="aging">
             <properties>
               <help>MAC address aging interval</help>
               <valueHelp>
                 <format>u32:0</format>
                 <description>Disable MAC address learning (always flood)</description>
               </valueHelp>
               <valueHelp>
                 <format>u32:10-1000000</format>
                 <description>MAC address aging time in seconds</description>
               </valueHelp>
               <constraint>
                 <validator name="numeric" argument="--range 0-0 --range 10-1000000"/>
               </constraint>
             </properties>
             <defaultValue>300</defaultValue>
           </leafNode>
           #include <include/generic-description.xml.i>
           #include <include/interface/dhcp-options.xml.i>
           #include <include/interface/dhcpv6-options.xml.i>
           #include <include/interface/disable-link-detect.xml.i>
           #include <include/interface/disable.xml.i>
           #include <include/interface/vrf.xml.i>
           #include <include/interface/mtu-68-16000.xml.i>
+          <leafNode name="mtu">
+            <defaultValue>1500</defaultValue>
+          </leafNode>
           <leafNode name="forwarding-delay">
             <properties>
               <help>Forwarding delay</help>
               <valueHelp>
                 <format>u32:0-200</format>
                 <description>Spanning Tree Protocol forwarding delay in seconds</description>
               </valueHelp>
               <constraint>
                 <validator name="numeric" argument="--range 0-200"/>
               </constraint>
               <constraintErrorMessage>Forwarding delay must be between 0 and 200 seconds</constraintErrorMessage>
             </properties>
             <defaultValue>14</defaultValue>
           </leafNode>
           <leafNode name="hello-time">
             <properties>
               <help>Hello packet advertisement interval</help>
               <valueHelp>
                 <format>u32:1-10</format>
                 <description>Spanning Tree Protocol hello advertisement interval in seconds</description>
               </valueHelp>
               <constraint>
                 <validator name="numeric" argument="--range 1-10"/>
               </constraint>
               <constraintErrorMessage>Bridge Hello interval must be between 1 and 10 seconds</constraintErrorMessage>
             </properties>
             <defaultValue>2</defaultValue>
           </leafNode>
           <node name="igmp">
             <properties>
               <help>Internet Group Management Protocol (IGMP) and Multicast Listener Discovery (MLD) settings</help>
             </properties>
             <children>
               <leafNode name="querier">
                 <properties>
                   <help>Enable IGMP/MLD querier</help>
                   <valueless/>
                 </properties>
               </leafNode>
               <leafNode name="snooping">
                 <properties>
                   <help>Enable IGMP/MLD snooping</help>
                   <valueless/>
                 </properties>
               </leafNode>
             </children>
           </node>
           #include <include/interface/ipv4-options.xml.i>
           #include <include/interface/ipv6-options.xml.i>
           #include <include/interface/mac.xml.i>
           #include <include/interface/mirror.xml.i>
           <leafNode name="enable-vlan">
             <properties>
               <help>Enable VLAN aware bridge</help>
               <valueless/>
             </properties>
           </leafNode>
           #include <include/interface/vlan-protocol.xml.i>
           <leafNode name="protocol">
             <defaultValue>802.1q</defaultValue>
           </leafNode>
           <leafNode name="max-age">
             <properties>
               <help>Interval at which neighbor bridges are removed</help>
               <valueHelp>
                 <format>u32:1-40</format>
                 <description>Bridge maximum aging time in seconds</description>
               </valueHelp>
               <constraint>
                 <validator name="numeric" argument="--range 1-40"/>
               </constraint>
               <constraintErrorMessage>Bridge max aging value must be between 1 and 40 seconds</constraintErrorMessage>
             </properties>
             <defaultValue>20</defaultValue>
           </leafNode>
           <node name="member">
             <properties>
               <help>Bridge member interfaces</help>
             </properties>
             <children>
               <tagNode name="interface">
                 <properties>
                   <help>Member interface name</help>
                   <completionHelp>
                     <script>${vyos_completion_dir}/list_interfaces --bridgeable</script>
                   </completionHelp>
                   <constraint>
                     #include <include/constraint/interface-name.xml.i>
                   </constraint>
                 </properties>
                 <children>
                   <leafNode name="native-vlan">
                     <properties>
                       <help>Specify VLAN id which should natively be present on the link</help>
                       <valueHelp>
                         <format>u32:1-4094</format>
                         <description>Virtual Local Area Network (VLAN) ID</description>
                       </valueHelp>
                       <constraint>
                         <validator name="numeric" argument="--range 1-4094"/>
                       </constraint>
                       <constraintErrorMessage>VLAN ID must be between 1 and 4094</constraintErrorMessage>
                     </properties>
                   </leafNode>
                   <leafNode name="allowed-vlan">
                     <properties>
                       <help>Specify VLAN id which is allowed in this trunk interface</help>
                       <valueHelp>
                         <format>&lt;id&gt;</format>
                         <description>VLAN id allowed to pass this interface</description>
                       </valueHelp>
                       <valueHelp>
                         <format>&lt;idN&gt;-&lt;idM&gt;</format>
                         <description>VLAN id range allowed on this interface (use '-' as delimiter)</description>
                       </valueHelp>
                       <constraint>
                         <validator name="numeric" argument="--allow-range --range 1-4094"/>
                       </constraint>
                       <constraintErrorMessage>not a valid VLAN ID value or range</constraintErrorMessage>
                       <multi/>
                     </properties>
                   </leafNode>
                   <leafNode name="cost">
                     <properties>
                       <help>Bridge port cost</help>
                       <valueHelp>
                         <format>u32:1-65535</format>
                         <description>Path cost value for Spanning Tree Protocol</description>
                       </valueHelp>
                       <constraint>
                         <validator name="numeric" argument="--range 1-65535"/>
                       </constraint>
                       <constraintErrorMessage>Path cost value must be between 1 and 65535</constraintErrorMessage>
                     </properties>
                     <defaultValue>100</defaultValue>
                   </leafNode>
                   <leafNode name="priority">
                     <properties>
                       <help>Bridge port priority</help>
                       <valueHelp>
                         <format>u32:0-63</format>
                         <description>Bridge port priority</description>
                       </valueHelp>
                       <constraint>
                         <validator name="numeric" argument="--range 1-63"/>
                       </constraint>
                       <constraintErrorMessage>Port priority value must be between 0 and 63</constraintErrorMessage>
                     </properties>
                     <defaultValue>32</defaultValue>
                   </leafNode>
                   <leafNode name="isolated">
                     <properties>
                       <help>Port is isolated (also known as Private-VLAN)</help>
                       <valueless/>
                     </properties>
                   </leafNode>
                 </children>
               </tagNode>
             </children>
           </node>
           <leafNode name="priority">
             <properties>
               <help>Priority for this bridge</help>
               <valueHelp>
                 <format>u32:0-65535</format>
                 <description>Bridge priority</description>
               </valueHelp>
               <constraint>
                 <validator name="numeric" argument="--range 0-65535"/>
               </constraint>
               <constraintErrorMessage>Bridge priority must be between 0 and 65535 (multiples of 4096)</constraintErrorMessage>
             </properties>
             <defaultValue>32768</defaultValue>
           </leafNode>
           <leafNode name="stp">
             <properties>
               <help>Enable spanning tree protocol</help>
               <valueless/>
             </properties>
           </leafNode>
           #include <include/interface/redirect.xml.i>
           #include <include/interface/vif.xml.i>
         </children>
       </tagNode>
     </children>
   </node>
 </interfaceDefinition>
diff --git a/interface-definitions/interfaces_dummy.xml.in b/interface-definitions/interfaces_dummy.xml.in
index ef8ee78e7..36b4e41f2 100644
--- a/interface-definitions/interfaces_dummy.xml.in
+++ b/interface-definitions/interfaces_dummy.xml.in
@@ -1,57 +1,60 @@
 <?xml version="1.0"?>
 <interfaceDefinition>
   <node name="interfaces">
     <children>
       <tagNode name="dummy" owner="${vyos_conf_scripts_dir}/interfaces_dummy.py">
         <properties>
           <help>Dummy Interface</help>
           <priority>300</priority>
           <constraint>
             <regex>dum[0-9]+</regex>
           </constraint>
           <constraintErrorMessage>Dummy interface must be named dumN</constraintErrorMessage>
           <valueHelp>
             <format>dumN</format>
             <description>Dummy 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>
           <node name="ip">
             <properties>
               <help>IPv4 routing parameters</help>
             </properties>
             <children>
               #include <include/interface/source-validation.xml.i>
               #include <include/interface/disable-forwarding.xml.i>
             </children>
           </node>
           <node name="ipv6">
             <properties>
               <help>IPv6 routing parameters</help>
             </properties>
             <children>
               #include <include/interface/disable-forwarding.xml.i>
               <node name="address">
                 <properties>
                   <help>IPv6 address configuration modes</help>
                 </properties>
                 <children>
                   #include <include/interface/ipv6-address-eui64.xml.i>
                   #include <include/interface/ipv6-address-no-default-link-local.xml.i>
                 </children>
               </node>
             </children>
           </node>
           #include <include/interface/mtu-68-16000.xml.i>
+          <leafNode name="mtu">
+            <defaultValue>1500</defaultValue>
+          </leafNode>
           #include <include/interface/mirror.xml.i>
           #include <include/interface/netns.xml.i>
           #include <include/interface/redirect.xml.i>
           #include <include/interface/vrf.xml.i>
         </children>
       </tagNode>
     </children>
   </node>
 </interfaceDefinition>
diff --git a/interface-definitions/interfaces_vti.xml.in b/interface-definitions/interfaces_vti.xml.in
index 158d9afd0..39fb3131e 100644
--- a/interface-definitions/interfaces_vti.xml.in
+++ b/interface-definitions/interfaces_vti.xml.in
@@ -1,32 +1,35 @@
 <?xml version="1.0"?>
 <interfaceDefinition>
   <node name="interfaces">
     <children>
       <tagNode name="vti" owner="${vyos_conf_scripts_dir}/interfaces_vti.py">
         <properties>
           <help>Virtual Tunnel Interface (XFRM)</help>
           <priority>381</priority>
           <constraint>
             <regex>vti[0-9]+</regex>
           </constraint>
           <constraintErrorMessage>VTI interface must be named vtiN</constraintErrorMessage>
           <valueHelp>
             <format>vtiN</format>
             <description>VTI 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>
           #include <include/interface/ipv4-options.xml.i>
           #include <include/interface/ipv6-options.xml.i>
           #include <include/interface/mtu-68-16000.xml.i>
+          <leafNode name="mtu">
+            <defaultValue>1500</defaultValue>
+          </leafNode>
           #include <include/interface/mirror.xml.i>
           #include <include/interface/redirect.xml.i>
           #include <include/interface/vrf.xml.i>
         </children>
       </tagNode>
     </children>
   </node>
 </interfaceDefinition>
diff --git a/interface-definitions/interfaces_wireguard.xml.in b/interface-definitions/interfaces_wireguard.xml.in
index fba1064ef..ce49de038 100644
--- a/interface-definitions/interfaces_wireguard.xml.in
+++ b/interface-definitions/interfaces_wireguard.xml.in
@@ -1,129 +1,129 @@
 <?xml version="1.0"?>
 <interfaceDefinition>
   <node name="interfaces">
     <children>
       <tagNode name="wireguard" owner="${vyos_conf_scripts_dir}/interfaces_wireguard.py">
         <properties>
           <help>WireGuard Interface</help>
           <priority>379</priority>
           <constraint>
             <regex>wg[0-9]+</regex>
           </constraint>
           <constraintErrorMessage>WireGuard interface must be named wgN</constraintErrorMessage>
           <valueHelp>
             <format>wgN</format>
             <description>WireGuard 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>
           #include <include/port-number.xml.i>
           #include <include/interface/mtu-68-16000.xml.i>
-          #include <include/interface/mirror.xml.i>
           <leafNode name="mtu">
             <defaultValue>1420</defaultValue>
           </leafNode>
+          #include <include/interface/mirror.xml.i>
           #include <include/interface/ipv4-options.xml.i>
           #include <include/interface/ipv6-options.xml.i>
           <leafNode name="fwmark">
             <properties>
               <help>A 32-bit fwmark value set on all outgoing packets</help>
               <valueHelp>
                 <format>number</format>
                 <description>value which marks the packet for QoS/shaper</description>
               </valueHelp>
               <constraint>
                 <validator name="numeric" argument="--range 0-4294967295"/>
               </constraint>
             </properties>
             <defaultValue>0</defaultValue>
           </leafNode>
           <leafNode name="private-key">
             <properties>
               <help>Base64 encoded private key</help>
               <constraint>
                 <validator name="base64"/>
               </constraint>
               <constraintErrorMessage>Key is not base64-encoded</constraintErrorMessage>
             </properties>
           </leafNode>
           <tagNode name="peer">
             <properties>
               <help>peer alias</help>
               <constraint>
                 <regex>[^ ]{1,100}</regex>
               </constraint>
               <constraintErrorMessage>peer alias too long (limit 100 characters)</constraintErrorMessage>
             </properties>
             <children>
               #include <include/generic-disable-node.xml.i>
               #include <include/generic-description.xml.i>
               <leafNode name="public-key">
                 <properties>
                   <help>base64 encoded public key</help>
                   <constraint>
                     <validator name="base64"/>
                   </constraint>
                   <constraintErrorMessage>Key is not base64-encoded</constraintErrorMessage>
                 </properties>
               </leafNode>
               <leafNode name="preshared-key">
                 <properties>
                   <help>base64 encoded preshared key</help>
                   <constraint>
                     <validator name="base64"/>
                   </constraint>
                   <constraintErrorMessage>Key is not base64-encoded</constraintErrorMessage>
                 </properties>
               </leafNode>
               <leafNode name="allowed-ips">
                 <properties>
                   <help>IP addresses allowed to traverse the peer</help>
                   <constraint>
                     <validator name="ip-prefix"/>
                   </constraint>
                   <multi/>
                 </properties>
               </leafNode>
               <leafNode name="address">
                 <properties>
                   <help>IP address of tunnel endpoint</help>
                   <valueHelp>
                     <format>ipv4</format>
                     <description>IPv4 address of remote tunnel endpoint</description>
                   </valueHelp>
                   <valueHelp>
                     <format>ipv6</format>
                     <description>IPv6 address of remote tunnel endpoint</description>
                   </valueHelp>
                   <constraint>
                     <validator name="ip-address"/>
                     <validator name="ipv6-link-local"/>
                   </constraint>
                 </properties>
               </leafNode>
               #include <include/port-number.xml.i>
               <leafNode name="persistent-keepalive">
                 <properties>
                   <help>Interval to send keepalive messages</help>
                   <valueHelp>
                     <format>u32:1-65535</format>
                     <description>Interval in seconds</description>
                   </valueHelp>
                   <constraint>
                     <validator name="numeric" argument="--range 1-65535"/>
                   </constraint>
                 </properties>
               </leafNode>
             </children>
           </tagNode>
           #include <include/interface/redirect.xml.i>
           #include <include/interface/per-client-thread.xml.i>
           #include <include/interface/vrf.xml.i>
         </children>
       </tagNode>
     </children>
   </node>
 </interfaceDefinition>