summaryrefslogtreecommitdiff
path: root/interface-definitions/include/accel-ppp
diff options
context:
space:
mode:
authorChristian Poessinger <christian@poessinger.com>2021-03-14 16:44:55 +0100
committerChristian Poessinger <christian@poessinger.com>2021-03-14 16:54:39 +0100
commit59ad580cdea2e66e24470ee3d84f29a8619b7bf9 (patch)
treec66f98ef886f51f6ab6bebbf3fcaef13b5114b35 /interface-definitions/include/accel-ppp
parentb331f6e7ba6e26d5e375121df675d97d2abfd3ac (diff)
downloadvyos-1x-59ad580cdea2e66e24470ee3d84f29a8619b7bf9.tar.gz
vyos-1x-59ad580cdea2e66e24470ee3d84f29a8619b7bf9.zip
xml: accel-ppp: move building blocks to subfolder
As the amount of include files now has reached a certain amount, it is getting more and more crowsded, thuse introducing "per topic" subdirectories on the filesystem to keep a clean structure makes sense.
Diffstat (limited to 'interface-definitions/include/accel-ppp')
-rw-r--r--interface-definitions/include/accel-ppp/auth-local-users.xml.i51
-rw-r--r--interface-definitions/include/accel-ppp/auth-mode.xml.i22
-rw-r--r--interface-definitions/include/accel-ppp/auth-protocols.xml.i31
-rw-r--r--interface-definitions/include/accel-ppp/client-ip-pool-start-stop.xml.i18
-rw-r--r--interface-definitions/include/accel-ppp/client-ip-pool-subnet.xml.i16
-rw-r--r--interface-definitions/include/accel-ppp/client-ipv6-pool.xml.i61
-rw-r--r--interface-definitions/include/accel-ppp/gateway-address.xml.i15
-rw-r--r--interface-definitions/include/accel-ppp/lcp-echo-interval-failure.xml.i20
-rw-r--r--interface-definitions/include/accel-ppp/lcp-echo-timeout.xml.i11
-rw-r--r--interface-definitions/include/accel-ppp/mtu-128-16384.xml.i11
-rw-r--r--interface-definitions/include/accel-ppp/name-server.xml.i20
-rw-r--r--interface-definitions/include/accel-ppp/ppp-mppe.xml.i26
-rw-r--r--interface-definitions/include/accel-ppp/radius-additions-disable-accounting.xml.i8
-rw-r--r--interface-definitions/include/accel-ppp/radius-additions-rate-limit.xml.i26
-rw-r--r--interface-definitions/include/accel-ppp/radius-additions.xml.i153
-rw-r--r--interface-definitions/include/accel-ppp/wins-server.xml.i15
16 files changed, 504 insertions, 0 deletions
diff --git a/interface-definitions/include/accel-ppp/auth-local-users.xml.i b/interface-definitions/include/accel-ppp/auth-local-users.xml.i
new file mode 100644
index 000000000..308d6510d
--- /dev/null
+++ b/interface-definitions/include/accel-ppp/auth-local-users.xml.i
@@ -0,0 +1,51 @@
+<!-- include start from accel-ppp/auth-local-users.xml.i -->
+<node name="local-users">
+ <properties>
+ <help>Local user authentication for PPPoE server</help>
+ </properties>
+ <children>
+ <tagNode name="username">
+ <properties>
+ <help>User name for authentication</help>
+ </properties>
+ <children>
+ #include <include/generic-disable-node.xml.i>
+ <leafNode name="password">
+ <properties>
+ <help>Password for authentication</help>
+ </properties>
+ </leafNode>
+ <leafNode name="static-ip">
+ <properties>
+ <help>Static client IP address</help>
+ </properties>
+ <defaultValue>*</defaultValue>
+ </leafNode>
+ <node name="rate-limit">
+ <properties>
+ <help>Upload/Download speed limits</help>
+ </properties>
+ <children>
+ <leafNode name="upload">
+ <properties>
+ <help>Upload bandwidth limit in kbits/sec</help>
+ <constraint>
+ <validator name="numeric" argument="--range 1-10000000"/>
+ </constraint>
+ </properties>
+ </leafNode>
+ <leafNode name="download">
+ <properties>
+ <help>Download bandwidth limit in kbits/sec</help>
+ <constraint>
+ <validator name="numeric" argument="--range 1-10000000"/>
+ </constraint>
+ </properties>
+ </leafNode>
+ </children>
+ </node>
+ </children>
+ </tagNode>
+ </children>
+</node>
+<!-- include end -->
diff --git a/interface-definitions/include/accel-ppp/auth-mode.xml.i b/interface-definitions/include/accel-ppp/auth-mode.xml.i
new file mode 100644
index 000000000..c1a87cfe3
--- /dev/null
+++ b/interface-definitions/include/accel-ppp/auth-mode.xml.i
@@ -0,0 +1,22 @@
+<!-- include start from accel-ppp/auth-mode.xml.i -->
+<leafNode name="mode">
+ <properties>
+ <help>Authentication mode used by this server</help>
+ <valueHelp>
+ <format>local</format>
+ <description>Use local username/password configuration</description>
+ </valueHelp>
+ <valueHelp>
+ <format>radius</format>
+ <description>Use RADIUS server for user autentication</description>
+ </valueHelp>
+ <constraint>
+ <regex>(local|radius)</regex>
+ </constraint>
+ <completionHelp>
+ <list>local radius</list>
+ </completionHelp>
+ </properties>
+ <defaultValue>local</defaultValue>
+</leafNode>
+<!-- include end -->
diff --git a/interface-definitions/include/accel-ppp/auth-protocols.xml.i b/interface-definitions/include/accel-ppp/auth-protocols.xml.i
new file mode 100644
index 000000000..d43266152
--- /dev/null
+++ b/interface-definitions/include/accel-ppp/auth-protocols.xml.i
@@ -0,0 +1,31 @@
+<!-- include start from accel-ppp/auth-protocols.xml.i -->
+<leafNode name="protocols">
+ <properties>
+ <help>Authentication protocol for remote access peer SSTP VPN</help>
+ <completionHelp>
+ <list>pap chap mschap mschap-v2</list>
+ </completionHelp>
+ <valueHelp>
+ <format>pap</format>
+ <description>Authentication via PAP (Password Authentication Protocol)</description>
+ </valueHelp>
+ <valueHelp>
+ <format>chap</format>
+ <description>Authentication via CHAP (Challenge Handshake Authentication Protocol)</description>
+ </valueHelp>
+ <valueHelp>
+ <format>mschap</format>
+ <description>Authentication via MS-CHAP (Microsoft Challenge Handshake Authentication Protocol)</description>
+ </valueHelp>
+ <valueHelp>
+ <format>mschap-v2</format>
+ <description>Authentication via MS-CHAPv2 (Microsoft Challenge Handshake Authentication Protocol, version 2)</description>
+ </valueHelp>
+ <constraint>
+ <regex>(pap|chap|mschap|mschap-v2)</regex>
+ </constraint>
+ <multi/>
+ </properties>
+ <defaultValue>pap chap mschap mschap-v2</defaultValue>
+</leafNode>
+<!-- include end -->
diff --git a/interface-definitions/include/accel-ppp/client-ip-pool-start-stop.xml.i b/interface-definitions/include/accel-ppp/client-ip-pool-start-stop.xml.i
new file mode 100644
index 000000000..5f4132d13
--- /dev/null
+++ b/interface-definitions/include/accel-ppp/client-ip-pool-start-stop.xml.i
@@ -0,0 +1,18 @@
+<!-- include start from accel-ppp/client-ip-pool-start-stop.xml.i -->
+<leafNode name="start">
+ <properties>
+ <help>First IP address in the pool</help>
+ <constraint>
+ <validator name="ipv4-address"/>
+ </constraint>
+ </properties>
+</leafNode>
+<leafNode name="stop">
+ <properties>
+ <help>Last IP address in the pool</help>
+ <constraint>
+ <validator name="ipv4-address"/>
+ </constraint>
+ </properties>
+</leafNode>
+<!-- include end -->
diff --git a/interface-definitions/include/accel-ppp/client-ip-pool-subnet.xml.i b/interface-definitions/include/accel-ppp/client-ip-pool-subnet.xml.i
new file mode 100644
index 000000000..2dc71d3f9
--- /dev/null
+++ b/interface-definitions/include/accel-ppp/client-ip-pool-subnet.xml.i
@@ -0,0 +1,16 @@
+<!-- include start from accel-ppp/client-ip-pool-subnet.xml.i -->
+<leafNode name="subnet">
+ <properties>
+ <help>Client IP subnet (CIDR notation)</help>
+ <valueHelp>
+ <format>ipv4net</format>
+ <description>IPv4 address and prefix length</description>
+ </valueHelp>
+ <constraint>
+ <validator name="ipv4-prefix"/>
+ </constraint>
+ <constraintErrorMessage>Not a valid CIDR formatted prefix</constraintErrorMessage>
+ <multi />
+ </properties>
+</leafNode>
+<!-- include end -->
diff --git a/interface-definitions/include/accel-ppp/client-ipv6-pool.xml.i b/interface-definitions/include/accel-ppp/client-ipv6-pool.xml.i
new file mode 100644
index 000000000..bd3dadf8d
--- /dev/null
+++ b/interface-definitions/include/accel-ppp/client-ipv6-pool.xml.i
@@ -0,0 +1,61 @@
+<!-- include start from accel-ppp/client-ipv6-pool.xml.i -->
+<node name="client-ipv6-pool">
+ <properties>
+ <help>Pool of client IPv6 addresses</help>
+ </properties>
+ <children>
+ <tagNode name="prefix">
+ <properties>
+ <help>Pool of addresses used to assign to clients</help>
+ <valueHelp>
+ <format>ipv6net</format>
+ <description>IPv6 address and prefix length</description>
+ </valueHelp>
+ <constraint>
+ <validator name="ipv6-prefix"/>
+ </constraint>
+ </properties>
+ <children>
+ <leafNode name="mask">
+ <properties>
+ <help>Prefix length used for individual client</help>
+ <valueHelp>
+ <format>u32:48-128</format>
+ <description>Client prefix length (default: 64)</description>
+ </valueHelp>
+ <constraint>
+ <validator name="numeric" argument="--range 48-128"/>
+ </constraint>
+ </properties>
+ </leafNode>
+ </children>
+ </tagNode>
+ <tagNode name="delegate">
+ <properties>
+ <help>Subnet used to delegate prefix through DHCPv6-PD (RFC3633)</help>
+ <valueHelp>
+ <format>ipv6net</format>
+ <description>IPv6 address and prefix length</description>
+ </valueHelp>
+ <constraint>
+ <validator name="ipv6-prefix"/>
+ </constraint>
+ </properties>
+ <children>
+ <leafNode name="delegation-prefix">
+ <properties>
+ <help>Prefix length delegated to client</help>
+ <valueHelp>
+ <format>u32:32-64</format>
+ <description>Delegated prefix length</description>
+ </valueHelp>
+ <constraint>
+ <validator name="numeric" argument="--range 32-64"/>
+ </constraint>
+ </properties>
+ </leafNode>
+ </children>
+ </tagNode>
+ </children>
+</node>
+<!-- include end -->
diff --git a/interface-definitions/include/accel-ppp/gateway-address.xml.i b/interface-definitions/include/accel-ppp/gateway-address.xml.i
new file mode 100644
index 000000000..59f8b5023
--- /dev/null
+++ b/interface-definitions/include/accel-ppp/gateway-address.xml.i
@@ -0,0 +1,15 @@
+<!-- include start from accel-ppp/gateway-address.xml.i -->
+<leafNode name="gateway-address">
+ <properties>
+ <help>Gateway IP address</help>
+ <constraint>
+ <validator name="ipv4-address"/>
+ </constraint>
+ <constraintErrorMessage>invalid IPv4 address</constraintErrorMessage>
+ <valueHelp>
+ <format>ipv4</format>
+ <description>Default Gateway send to the client</description>
+ </valueHelp>
+ </properties>
+</leafNode>
+<!-- include end -->
diff --git a/interface-definitions/include/accel-ppp/lcp-echo-interval-failure.xml.i b/interface-definitions/include/accel-ppp/lcp-echo-interval-failure.xml.i
new file mode 100644
index 000000000..dd7ae1276
--- /dev/null
+++ b/interface-definitions/include/accel-ppp/lcp-echo-interval-failure.xml.i
@@ -0,0 +1,20 @@
+<!-- include start from accel-ppp/lcp-echo-interval-failure.xml.i -->
+<leafNode name="lcp-echo-interval">
+ <properties>
+ <help>LCP echo-requests/sec</help>
+ <constraint>
+ <validator name="numeric" argument="--positive"/>
+ </constraint>
+ </properties>
+ <defaultValue>30</defaultValue>
+</leafNode>
+<leafNode name="lcp-echo-failure">
+ <properties>
+ <help>Maximum number of Echo-Requests may be sent without valid reply</help>
+ <constraint>
+ <validator name="numeric" argument="--positive"/>
+ </constraint>
+ </properties>
+ <defaultValue>3</defaultValue>
+</leafNode>
+<!-- include end -->
diff --git a/interface-definitions/include/accel-ppp/lcp-echo-timeout.xml.i b/interface-definitions/include/accel-ppp/lcp-echo-timeout.xml.i
new file mode 100644
index 000000000..a630bec32
--- /dev/null
+++ b/interface-definitions/include/accel-ppp/lcp-echo-timeout.xml.i
@@ -0,0 +1,11 @@
+<!-- include start from accel-ppp/lcp-echo-timeout.xml.i -->
+<leafNode name="lcp-echo-timeout">
+ <properties>
+ <help>Timeout in seconds to wait for any peer activity. If this option specified it turns on adaptive lcp echo functionality and "lcp-echo-failure" is not used.</help>
+ <constraint>
+ <validator name="numeric" argument="--positive"/>
+ </constraint>
+ </properties>
+ <defaultValue>0</defaultValue>
+</leafNode>
+<!-- include end -->
diff --git a/interface-definitions/include/accel-ppp/mtu-128-16384.xml.i b/interface-definitions/include/accel-ppp/mtu-128-16384.xml.i
new file mode 100644
index 000000000..b4008a63b
--- /dev/null
+++ b/interface-definitions/include/accel-ppp/mtu-128-16384.xml.i
@@ -0,0 +1,11 @@
+<!-- include start from accel-ppp/mtu-128-16384.xml.i -->
+<leafNode name="mtu">
+ <properties>
+ <help>Maximum Transmission Unit (MTU) - default 1492</help>
+ <constraint>
+ <validator name="numeric" argument="--range 128-16384"/>
+ </constraint>
+ </properties>
+ <defaultValue>1492</defaultValue>
+</leafNode>
+<!-- include end -->
diff --git a/interface-definitions/include/accel-ppp/name-server.xml.i b/interface-definitions/include/accel-ppp/name-server.xml.i
new file mode 100644
index 000000000..e744b384f
--- /dev/null
+++ b/interface-definitions/include/accel-ppp/name-server.xml.i
@@ -0,0 +1,20 @@
+<!-- include start from accel-ppp/name-server.xml.i -->
+<leafNode name="name-server">
+ <properties>
+ <help>Domain Name Server (DNS) propagated to client</help>
+ <valueHelp>
+ <format>ipv4</format>
+ <description>Domain Name Server (DNS) IPv4 address</description>
+ </valueHelp>
+ <valueHelp>
+ <format>ipv6</format>
+ <description>Domain Name Server (DNS) IPv6 address</description>
+ </valueHelp>
+ <constraint>
+ <validator name="ipv4-address"/>
+ <validator name="ipv6-address"/>
+ </constraint>
+ <multi/>
+ </properties>
+</leafNode>
+<!-- include end -->
diff --git a/interface-definitions/include/accel-ppp/ppp-mppe.xml.i b/interface-definitions/include/accel-ppp/ppp-mppe.xml.i
new file mode 100644
index 000000000..e8370180b
--- /dev/null
+++ b/interface-definitions/include/accel-ppp/ppp-mppe.xml.i
@@ -0,0 +1,26 @@
+<!-- include start from accel-ppp/ppp-mppe.xml.i -->
+<leafNode name="mppe">
+ <properties>
+ <help>Specifies mppe negotiation preferences</help>
+ <completionHelp>
+ <list>require prefer deny</list>
+ </completionHelp>
+ <valueHelp>
+ <format>require</format>
+ <description>send mppe request, if client rejects, drop the connection</description>
+ </valueHelp>
+ <valueHelp>
+ <format>prefer</format>
+ <description>send mppe request, if client rejects continue</description>
+ </valueHelp>
+ <valueHelp>
+ <format>deny</format>
+ <description>drop all mppe</description>
+ </valueHelp>
+ <constraint>
+ <regex>^(require|prefer|deny)$</regex>
+ </constraint>
+ </properties>
+ <defaultValue>prefer</defaultValue>
+</leafNode>
+<!-- include end -->
diff --git a/interface-definitions/include/accel-ppp/radius-additions-disable-accounting.xml.i b/interface-definitions/include/accel-ppp/radius-additions-disable-accounting.xml.i
new file mode 100644
index 000000000..c723c3174
--- /dev/null
+++ b/interface-definitions/include/accel-ppp/radius-additions-disable-accounting.xml.i
@@ -0,0 +1,8 @@
+<!-- include start from accel-ppp/radius-additions-disable-accounting.xml.i -->
+<leafNode name="disable-accounting">
+ <properties>
+ <help>Disable accounting</help>
+ <valueless/>
+ </properties>
+</leafNode>
+<!-- include end -->
diff --git a/interface-definitions/include/accel-ppp/radius-additions-rate-limit.xml.i b/interface-definitions/include/accel-ppp/radius-additions-rate-limit.xml.i
new file mode 100644
index 000000000..be49fce5a
--- /dev/null
+++ b/interface-definitions/include/accel-ppp/radius-additions-rate-limit.xml.i
@@ -0,0 +1,26 @@
+<!-- include start from accel-ppp/radius-additions-rate-limit.xml.i -->
+<node name="rate-limit">
+ <properties>
+ <help>Upload/Download speed limits</help>
+ </properties>
+ <children>
+ <leafNode name="attribute">
+ <properties>
+ <help>Specifies which radius attribute contains rate information. (default is Filter-Id)</help>
+ </properties>
+ <defaultValue>Filter-Id</defaultValue>
+ </leafNode>
+ <leafNode name="vendor">
+ <properties>
+ <help>Specifies the vendor dictionary. (dictionary needs to be in /usr/share/accel-ppp/radius)</help>
+ </properties>
+ </leafNode>
+ <leafNode name="enable">
+ <properties>
+ <help>Enables Bandwidth shaping via RADIUS</help>
+ <valueless />
+ </properties>
+ </leafNode>
+ </children>
+</node>
+<!-- include end -->
diff --git a/interface-definitions/include/accel-ppp/radius-additions.xml.i b/interface-definitions/include/accel-ppp/radius-additions.xml.i
new file mode 100644
index 000000000..e65088c43
--- /dev/null
+++ b/interface-definitions/include/accel-ppp/radius-additions.xml.i
@@ -0,0 +1,153 @@
+<!-- include start from accel-ppp/radius-additions.xml.i -->
+<node name="radius">
+ <children>
+ <leafNode name="acct-interim-jitter">
+ <properties>
+ <help>Maximum jitter value in seconds to be applied to accounting information interval</help>
+ <valueHelp>
+ <format>1-60</format>
+ <description>Maximum jitter value in seconds</description>
+ </valueHelp>
+ <constraint>
+ <validator name="numeric" argument="--range 1-60"/>
+ </constraint>
+ <constraintErrorMessage>Jitter value must be between 1 and 60 seconds</constraintErrorMessage>
+ </properties>
+ </leafNode>
+ <tagNode name="server">
+ <children>
+ <leafNode name="acct-port">
+ <properties>
+ <help>Accounting port</help>
+ <valueHelp>
+ <format>1-65535</format>
+ <description>Numeric IP port (default: 1813)</description>
+ </valueHelp>
+ <constraint>
+ <validator name="numeric" argument="--range 1-65535"/>
+ </constraint>
+ </properties>
+ <defaultValue>1813</defaultValue>
+ </leafNode>
+ #include <include/accel-ppp/radius-additions-disable-accounting.xml.i>
+ <leafNode name="fail-time">
+ <properties>
+ <help>Mark server unavailable for &lt;n&gt; seconds on failure</help>
+ <valueHelp>
+ <format>0-600</format>
+ <description>Fail time penalty</description>
+ </valueHelp>
+ <constraint>
+ <validator name="numeric" argument="--range 0-600"/>
+ </constraint>
+ <constraintErrorMessage>Fail time must be between 0 and 600 seconds</constraintErrorMessage>
+ </properties>
+ <defaultValue>0</defaultValue>
+ </leafNode>
+ </children>
+ </tagNode>
+ <leafNode name="timeout">
+ <properties>
+ <help>Timeout in seconds to wait response from RADIUS server</help>
+ <valueHelp>
+ <format>1-60</format>
+ <description>Timeout in seconds</description>
+ </valueHelp>
+ <constraint>
+ <validator name="numeric" argument="--range 1-60"/>
+ </constraint>
+ <constraintErrorMessage>Timeout must be between 1 and 60 seconds</constraintErrorMessage>
+ </properties>
+ <defaultValue>3</defaultValue>
+ </leafNode>
+ <leafNode name="acct-timeout">
+ <properties>
+ <help>Timeout for Interim-Update packets, terminate session afterwards (default 3 seconds)</help>
+ <valueHelp>
+ <format>0-60</format>
+ <description>Timeout in seconds, 0 to keep active</description>
+ </valueHelp>
+ <constraint>
+ <validator name="numeric" argument="--range 0-60"/>
+ </constraint>
+ <constraintErrorMessage>Timeout must be between 0 and 60 seconds</constraintErrorMessage>
+ </properties>
+ <defaultValue>3</defaultValue>
+ </leafNode>
+ <leafNode name="max-try">
+ <properties>
+ <help>Number of tries to send Access-Request/Accounting-Request queries</help>
+ <valueHelp>
+ <format>1-20</format>
+ <description>Maximum tries</description>
+ </valueHelp>
+ <constraint>
+ <validator name="numeric" argument="--range 1-20"/>
+ </constraint>
+ <constraintErrorMessage>Maximum tries must be between 1 and 20</constraintErrorMessage>
+ </properties>
+ <defaultValue>3</defaultValue>
+ </leafNode>
+ <leafNode name="nas-identifier">
+ <properties>
+ <help>NAS-Identifier attribute sent to RADIUS</help>
+ </properties>
+ </leafNode>
+ <leafNode name="nas-ip-address">
+ <properties>
+ <help>NAS-IP-Address attribute sent to RADIUS</help>
+ <constraint>
+ <validator name="ipv4-address"/>
+ </constraint>
+ <valueHelp>
+ <format>ipv4</format>
+ <description>NAS-IP-Address attribute</description>
+ </valueHelp>
+ </properties>
+ </leafNode>
+ <leafNode name="preallocate-vif">
+ <properties>
+ <help>Enable attribute NAS-Port-Id in Access-Request</help>
+ <valueless/>
+ </properties>
+ </leafNode>
+ <node name="dynamic-author">
+ <properties>
+ <help>Dynamic Authorization Extension/Change of Authorization server</help>
+ </properties>
+ <children>
+ <leafNode name="server">
+ <properties>
+ <help>IP address for Dynamic Authorization Extension server (DM/CoA)</help>
+ <constraint>
+ <validator name="ipv4-address"/>
+ </constraint>
+ <valueHelp>
+ <format>ipv4</format>
+ <description>IPv4 address for aynamic authorization server</description>
+ </valueHelp>
+ </properties>
+ </leafNode>
+ <leafNode name="port">
+ <properties>
+ <help>Port for Dynamic Authorization Extension server (DM/CoA) (default: 1700)</help>
+ <valueHelp>
+ <format>u32:1-65535</format>
+ <description>TCP port</description>
+ </valueHelp>
+ <constraint>
+ <validator name="numeric" argument="--range 1-65535"/>
+ </constraint>
+ </properties>
+ <defaultValue>1700</defaultValue>
+ </leafNode>
+ <leafNode name="key">
+ <properties>
+ <help>Shared secret for Dynamic Authorization Extension server</help>
+ </properties>
+ </leafNode>
+ </children>
+ </node>
+ </children>
+</node>
+<!-- include end -->
diff --git a/interface-definitions/include/accel-ppp/wins-server.xml.i b/interface-definitions/include/accel-ppp/wins-server.xml.i
new file mode 100644
index 000000000..f7f483f59
--- /dev/null
+++ b/interface-definitions/include/accel-ppp/wins-server.xml.i
@@ -0,0 +1,15 @@
+<!-- include start from accel-ppp/wins-server.xml.i -->
+<leafNode name="wins-server">
+ <properties>
+ <help>Windows Internet Name Service (WINS) servers propagated to client</help>
+ <valueHelp>
+ <format>ipv4</format>
+ <description>Domain Name Server (DNS) IPv4 address</description>
+ </valueHelp>
+ <constraint>
+ <validator name="ipv4-address"/>
+ </constraint>
+ <multi/>
+ </properties>
+</leafNode>
+<!-- include end -->