diff options
Diffstat (limited to 'interface-definitions')
19 files changed, 577 insertions, 321 deletions
| diff --git a/interface-definitions/include/accel-ppp/ppp-options-ipv6-interface-id.xml.i b/interface-definitions/include/accel-ppp/ppp-options-ipv6-interface-id.xml.i new file mode 100644 index 000000000..265f7f97c --- /dev/null +++ b/interface-definitions/include/accel-ppp/ppp-options-ipv6-interface-id.xml.i @@ -0,0 +1,54 @@ +<!-- include start from accel-ppp/ppp-options-ipv6-interface-id.xml.i --> +<leafNode name="ipv6-intf-id"> +  <properties> +    <help>Fixed or random interface identifier for IPv6</help> +    <completionHelp> +      <list>random</list> +    </completionHelp> +    <valueHelp> +      <format>random</format> +      <description>Random interface identifier for IPv6</description> +    </valueHelp> +    <valueHelp> +      <format>x:x:x:x</format> +      <description>specify interface identifier for IPv6</description> +    </valueHelp> +    <constraint> +      <regex>(random|((\d+){1,4}:){3}(\d+){1,4})</regex> +    </constraint> +  </properties> +</leafNode> +<leafNode name="ipv6-peer-intf-id"> +  <properties> +    <help>Peer interface identifier for IPv6</help> +    <completionHelp> +      <list>random calling-sid ipv4</list> +    </completionHelp> +    <valueHelp> +      <format>x:x:x:x</format> +      <description>Interface identifier for IPv6</description> +    </valueHelp> +    <valueHelp> +      <format>random</format> +      <description>Use a random interface identifier for IPv6</description> +    </valueHelp> +    <valueHelp> +      <format>ipv4</format> +      <description>Calculate interface identifier from IPv4 address, for example 192:168:0:1</description> +    </valueHelp> +    <valueHelp> +      <format>calling-sid</format> +      <description>Calculate interface identifier from calling-station-id</description> +    </valueHelp> +    <constraint> +      <regex>(random|calling-sid|ipv4|((\d+){1,4}:){3}(\d+){1,4})</regex> +    </constraint> +  </properties> +</leafNode> +<leafNode name="ipv6-accept-peer-intf-id"> +  <properties> +    <help>Accept peer interface identifier</help> +    <valueless/> +  </properties> +</leafNode> +<!-- include end --> diff --git a/interface-definitions/include/interface/mirror.xml.i b/interface-definitions/include/interface/mirror.xml.i index 2959551f0..74a172b50 100644 --- a/interface-definitions/include/interface/mirror.xml.i +++ b/interface-definitions/include/interface/mirror.xml.i @@ -1,23 +1,31 @@  <!-- include start from interface/mirror.xml.i -->  <node name="mirror">    <properties> -    <help>Incoming/outgoing packet mirroring destination</help> +    <help>Mirror ingress/egress packets</help>    </properties>    <children>      <leafNode name="ingress">        <properties> -        <help>Mirror the ingress traffic of the interface to the destination interface</help> +        <help>Mirror ingress traffic to destination interface</help>          <completionHelp> -            <script>${vyos_completion_dir}/list_interfaces.py</script> +          <script>${vyos_completion_dir}/list_interfaces.py</script>          </completionHelp> +        <valueHelp> +          <format>txt</format> +          <description>Destination interface name</description> +        </valueHelp>        </properties>      </leafNode>      <leafNode name="egress">        <properties> -        <help>Mirror the egress traffic of the interface to the destination interface</help> +        <help>Mirror egress traffic to destination interface</help>          <completionHelp> -            <script>${vyos_completion_dir}/list_interfaces.py</script> +          <script>${vyos_completion_dir}/list_interfaces.py</script>          </completionHelp> +        <valueHelp> +          <format>txt</format> +          <description>Destination interface name</description> +        </valueHelp>        </properties>      </leafNode>    </children> diff --git a/interface-definitions/include/interface/redirect.xml.i b/interface-definitions/include/interface/redirect.xml.i index 8df8957ac..b01e486ce 100644 --- a/interface-definitions/include/interface/redirect.xml.i +++ b/interface-definitions/include/interface/redirect.xml.i @@ -1,13 +1,13 @@  <!-- include start from interface/redirect.xml.i -->  <leafNode name="redirect">    <properties> -    <help>Incoming packet redirection destination</help> +    <help>Redirect incoming packet to destination</help>      <completionHelp>        <script>${vyos_completion_dir}/list_interfaces.py</script>      </completionHelp>      <valueHelp>        <format>txt</format> -      <description>Interface name</description> +      <description>Destination interface name</description>      </valueHelp>      <constraint>        #include <include/constraint/interface-name.xml.in> diff --git a/interface-definitions/include/qos/bandwidth-auto.xml.i b/interface-definitions/include/qos/bandwidth-auto.xml.i new file mode 100644 index 000000000..260bd4f7b --- /dev/null +++ b/interface-definitions/include/qos/bandwidth-auto.xml.i @@ -0,0 +1,43 @@ +<!-- include start from qos/bandwidth-auto.xml.i --> +<leafNode name="bandwidth"> +  <properties> +    <help>Available bandwidth for this policy</help> +    <completionHelp> +      <list>auto</list> +    </completionHelp> +    <valueHelp> +      <format>auto</format> +      <description>Bandwidth matches interface speed</description> +    </valueHelp> +    <valueHelp> +      <format><number></format> +      <description>Bits per second</description> +    </valueHelp> +    <valueHelp> +      <format><number>bit</format> +      <description>Bits per second</description> +    </valueHelp> +    <valueHelp> +      <format><number>kbit</format> +      <description>Kilobits per second</description> +    </valueHelp> +    <valueHelp> +      <format><number>mbit</format> +      <description>Megabits per second</description> +    </valueHelp> +    <valueHelp> +      <format><number>gbit</format> +      <description>Gigabits per second</description> +    </valueHelp> +    <valueHelp> +      <format><number>tbit</format> +      <description>Terabits per second</description> +    </valueHelp> +    <constraint> +      <validator name="numeric" argument="--positive"/> +      <regex>(auto|\d+(bit|kbit|mbit|gbit|tbit))</regex> +    </constraint> +  </properties> +  <defaultValue>auto</defaultValue> +</leafNode> +<!-- include end --> diff --git a/interface-definitions/include/qos/bandwidth.xml.i b/interface-definitions/include/qos/bandwidth.xml.i index 82af22f42..62ea93b67 100644 --- a/interface-definitions/include/qos/bandwidth.xml.i +++ b/interface-definitions/include/qos/bandwidth.xml.i @@ -1,15 +1,35 @@  <!-- include start from qos/bandwidth.xml.i -->  <leafNode name="bandwidth">    <properties> -    <help>Traffic-limit used for this class</help> +    <help>Available bandwidth for this policy</help>      <valueHelp>        <format><number></format> -      <description>Rate in kbit (kilobit per second)</description> +      <description>Bits per second</description>      </valueHelp>      <valueHelp> -      <format><number><suffix></format> -      <description>Rate with scaling suffix (mbit, mbps, ...)</description> +      <format><number>bit</format> +      <description>Bits per second</description>      </valueHelp> +    <valueHelp> +      <format><number>kbit</format> +      <description>Kilobits per second</description> +    </valueHelp> +    <valueHelp> +      <format><number>mbit</format> +      <description>Megabits per second</description> +    </valueHelp> +    <valueHelp> +      <format><number>gbit</format> +      <description>Gigabits per second</description> +    </valueHelp> +    <valueHelp> +      <format><number>tbit</format> +      <description>Terabits per second</description> +    </valueHelp> +    <constraint> +      <validator name="numeric" argument="--positive"/> +      <regex>\d+(bit|kbit|mbit|gbit|tbit)</regex> +    </constraint>    </properties>  </leafNode>  <!-- include end --> diff --git a/interface-definitions/include/qos/class-match-ipv4-address.xml.i b/interface-definitions/include/qos/class-match-ipv4-address.xml.i new file mode 100644 index 000000000..8e84c988a --- /dev/null +++ b/interface-definitions/include/qos/class-match-ipv4-address.xml.i @@ -0,0 +1,19 @@ +<!-- include start from qos/class-match-ipv4-address.xml.i --> +<leafNode name="address"> +  <properties> +    <help>IPv4 destination address for this match</help> +    <valueHelp> +      <format>ipv4</format> +      <description>IPv4 address</description> +    </valueHelp> +    <valueHelp> +      <format>ipv4net</format> +      <description>IPv4 prefix</description> +    </valueHelp> +    <constraint> +      <validator name="ipv4-address"/> +      <validator name="ipv4-prefix"/> +    </constraint> +  </properties> +</leafNode> +<!-- include end --> diff --git a/interface-definitions/include/qos/class-match-ipv6-address.xml.i b/interface-definitions/include/qos/class-match-ipv6-address.xml.i new file mode 100644 index 000000000..fd7388127 --- /dev/null +++ b/interface-definitions/include/qos/class-match-ipv6-address.xml.i @@ -0,0 +1,14 @@ +<!-- include start from qos/class-match-ipv6-address.xml.i --> +<leafNode name="address"> +  <properties> +    <help>IPv6 destination address for this match</help> +    <valueHelp> +      <format>ipv6net</format> +      <description>IPv6 address and prefix length</description> +    </valueHelp> +    <constraint> +      <validator name="ipv6"/> +    </constraint> +  </properties> +</leafNode> +<!-- include end --> diff --git a/interface-definitions/include/qos/match.xml.i b/interface-definitions/include/qos/class-match.xml.i index 7d89e4460..d9c35731d 100644 --- a/interface-definitions/include/qos/match.xml.i +++ b/interface-definitions/include/qos/class-match.xml.i @@ -1,4 +1,4 @@ -<!-- include start from qos/match.xml.i --> +<!-- include start from qos/class-match.xml.i -->  <tagNode name="match">    <properties>      <help>Class matching rule name</help> @@ -99,22 +99,11 @@              <help>Match on destination port or address</help>            </properties>            <children> -            <leafNode name="address"> -              <properties> -                <help>IPv4 destination address for this match</help> -                <valueHelp> -                  <format>ipv4net</format> -                  <description>IPv4 address and prefix length</description> -                </valueHelp> -                <constraint> -                  <validator name="ipv4"/> -                </constraint> -              </properties> -            </leafNode> +            #include <include/qos/class-match-ipv4-address.xml.i>              #include <include/port-number.xml.i>            </children>          </node> -        #include <include/qos/dscp.xml.i> +        #include <include/qos/match-dscp.xml.i>          #include <include/qos/max-length.xml.i>          #include <include/ip-protocol.xml.i>          <node name="source"> @@ -122,18 +111,7 @@              <help>Match on source port or address</help>            </properties>            <children> -            <leafNode name="address"> -              <properties> -                <help>IPv4 source address for this match</help> -                <valueHelp> -                  <format>ipv4net</format> -                  <description>IPv4 address and prefix length</description> -                </valueHelp> -                <constraint> -                  <validator name="ipv4"/> -                </constraint> -              </properties> -            </leafNode> +            #include <include/qos/class-match-ipv4-address.xml.i>              #include <include/port-number.xml.i>            </children>          </node> @@ -150,22 +128,11 @@              <help>Match on destination port or address</help>            </properties>            <children> -            <leafNode name="address"> -              <properties> -                <help>IPv6 destination address for this match</help> -                <valueHelp> -                  <format>ipv6net</format> -                  <description>IPv6 address and prefix length</description> -                </valueHelp> -                <constraint> -                  <validator name="ipv6"/> -                </constraint> -              </properties> -            </leafNode> +            #include <include/qos/class-match-ipv6-address.xml.i>              #include <include/port-number.xml.i>            </children>          </node> -        #include <include/qos/dscp.xml.i> +        #include <include/qos/match-dscp.xml.i>          #include <include/qos/max-length.xml.i>          #include <include/ip-protocol.xml.i>          <node name="source"> @@ -173,18 +140,7 @@              <help>Match on source port or address</help>            </properties>            <children> -            <leafNode name="address"> -              <properties> -                <help>IPv6 source address for this match</help> -                <valueHelp> -                  <format>ipv6net</format> -                  <description>IPv6 address and prefix length</description> -                </valueHelp> -                <constraint> -                  <validator name="ipv6"/> -                </constraint> -              </properties> -            </leafNode> +            #include <include/qos/class-match-ipv6-address.xml.i>              #include <include/port-number.xml.i>            </children>          </node> diff --git a/interface-definitions/include/qos/limiter-actions.xml.i b/interface-definitions/include/qos/class-police-exceed.xml.i index a993423aa..ee2ce16a8 100644 --- a/interface-definitions/include/qos/limiter-actions.xml.i +++ b/interface-definitions/include/qos/class-police-exceed.xml.i @@ -1,13 +1,13 @@ -<!-- include start from qos/limiter-actions.xml.i --> -<leafNode name="exceed-action"> +<!-- include start from qos/police.xml.i --> +<leafNode name="exceed">    <properties> -    <help>Default action for packets exceeding the limiter (default: drop)</help> +    <help>Default action for packets exceeding the limiter</help>      <completionHelp>        <list>continue drop ok reclassify pipe</list>      </completionHelp>      <valueHelp>        <format>continue</format> -      <description>Don't do anything, just continue with the next action in line</description> +      <description>Do not do anything, just continue with the next action in line</description>      </valueHelp>      <valueHelp>        <format>drop</format> @@ -31,15 +31,15 @@    </properties>    <defaultValue>drop</defaultValue>  </leafNode> -<leafNode name="notexceed-action"> +<leafNode name="not-exceed">    <properties> -    <help>Default action for packets not exceeding the limiter (default: ok)</help> +    <help>Default action for packets not exceeding the limiter</help>      <completionHelp>        <list>continue drop ok reclassify pipe</list>      </completionHelp>      <valueHelp>        <format>continue</format> -      <description>Don't do anything, just continue with the next action in line</description> +      <description>Do not do anything, just continue with the next action in line</description>      </valueHelp>      <valueHelp>        <format>drop</format> diff --git a/interface-definitions/include/qos/class-priority.xml.i b/interface-definitions/include/qos/class-priority.xml.i new file mode 100644 index 000000000..3fd848c93 --- /dev/null +++ b/interface-definitions/include/qos/class-priority.xml.i @@ -0,0 +1,15 @@ +<!-- include start from qos/class-priority.xml.i --> +<leafNode name="priority"> +  <properties> +    <help>Priority for rule evaluation</help> +    <valueHelp> +      <format>u32:0-20</format> +      <description>Priority for match rule evaluation</description> +    </valueHelp> +    <constraint> +      <validator name="numeric" argument="--range 0-20"/> +    </constraint> +    <constraintErrorMessage>Priority must be between 0 and 20</constraintErrorMessage> +  </properties> +</leafNode> +<!-- include end --> diff --git a/interface-definitions/include/qos/dscp.xml.i b/interface-definitions/include/qos/match-dscp.xml.i index bb90850ac..2d2fd0a57 100644 --- a/interface-definitions/include/qos/dscp.xml.i +++ b/interface-definitions/include/qos/match-dscp.xml.i @@ -1,4 +1,4 @@ -<!-- include start from qos/dscp.xml.i --> +<!-- include start from qos/match-dscp.xml.i -->  <leafNode name="dscp">    <properties>      <help>Match on Differentiated Services Codepoint (DSCP)</help> @@ -137,7 +137,6 @@        <validator name="numeric" argument="--range 0-63"/>        <regex>(default|reliability|throughput|lowdelay|priority|immediate|flash|flash-override|critical|internet|network|AF11|AF12|AF13|AF21|AF22|AF23|AF31|AF32|AF33|AF41|AF42|AF43|CS1|CS2|CS3|CS4|CS5|CS6|CS7|EF)</regex>      </constraint> -    <constraintErrorMessage>Priority must be between 0 and 63</constraintErrorMessage>    </properties>  </leafNode>  <!-- include end --> diff --git a/interface-definitions/include/qos/max-length.xml.i b/interface-definitions/include/qos/max-length.xml.i index 4cc20f8c4..64cdd02ec 100644 --- a/interface-definitions/include/qos/max-length.xml.i +++ b/interface-definitions/include/qos/max-length.xml.i @@ -1,15 +1,15 @@  <!-- include start from qos/max-length.xml.i -->  <leafNode name="max-length">    <properties> -    <help>Maximum packet length (ipv4)</help> +    <help>Maximum packet length</help>      <valueHelp> -      <format>u32:0-65535</format> +      <format>u32:1-65535</format>        <description>Maximum packet/payload length</description>      </valueHelp>      <constraint> -      <validator name="numeric" argument="--range 0-65535"/> +      <validator name="numeric" argument="--range 1-65535"/>      </constraint> -    <constraintErrorMessage>Maximum IPv4 total packet length is 65535</constraintErrorMessage> +    <constraintErrorMessage>Maximum packet length is 65535</constraintErrorMessage>    </properties>  </leafNode>  <!-- include end --> diff --git a/interface-definitions/include/qos/queue-type.xml.i b/interface-definitions/include/qos/queue-type.xml.i index 634f61024..c7d4cde82 100644 --- a/interface-definitions/include/qos/queue-type.xml.i +++ b/interface-definitions/include/qos/queue-type.xml.i @@ -3,28 +3,31 @@    <properties>      <help>Queue type for default traffic</help>      <completionHelp> -      <list>fq-codel fair-queue drop-tail random-detect</list> +      <list>drop-tail fair-queue fq-codel priority random-detect</list>      </completionHelp>      <valueHelp> -      <format>fq-codel</format> -      <description>Fair Queue Codel</description> +      <format>drop-tail</format> +      <description>First-In-First-Out (FIFO)</description>      </valueHelp>      <valueHelp>        <format>fair-queue</format>        <description>Stochastic Fair Queue (SFQ)</description>      </valueHelp>      <valueHelp> -      <format>drop-tail</format> -      <description>First-In-First-Out (FIFO)</description> +      <format>fq-codel</format> +      <description>Fair Queue Codel</description> +    </valueHelp> +    <valueHelp> +      <format>priority</format> +      <description>Priority queuing</description>      </valueHelp>      <valueHelp>        <format>random-detect</format>        <description>Random Early Detection (RED)</description>      </valueHelp>      <constraint> -      <regex>(fq-codel|fair-queue|drop-tail|random-detect)</regex> +      <regex>(drop-tail|fair-queue|fq-codel|priority|random-detect)</regex>      </constraint>    </properties> -  <defaultValue>drop-tail</defaultValue>  </leafNode>  <!-- include end --> diff --git a/interface-definitions/include/qos/set-dscp.xml.i b/interface-definitions/include/qos/set-dscp.xml.i index 55c0ea44d..07f33783f 100644 --- a/interface-definitions/include/qos/set-dscp.xml.i +++ b/interface-definitions/include/qos/set-dscp.xml.i @@ -3,7 +3,7 @@    <properties>      <help>Change the Differentiated Services (DiffServ) field in the IP header</help>      <completionHelp> -      <list>default reliability throughput lowdelay priority immediate flash flash-override critical internet network</list> +      <list>default reliability throughput lowdelay priority immediate flash flash-override critical internet network AF11 AF12 AF13 AF21 AF22 AF23 AF31 AF32 AF33 AF41 AF42 AF43 CS1 CS2 CS3 CS4 CS5 CS6 CS7 EF</list>      </completionHelp>      <valueHelp>        <format>u32:0-63</format> @@ -53,9 +53,89 @@        <format>network</format>        <description>match DSCP (111000)</description>      </valueHelp> +    <valueHelp> +      <format>AF11</format> +      <description>High-throughput data</description> +    </valueHelp> +    <valueHelp> +      <format>AF12</format> +      <description>High-throughput data</description> +    </valueHelp> +    <valueHelp> +      <format>AF13</format> +      <description>High-throughput data</description> +    </valueHelp> +    <valueHelp> +      <format>AF21</format> +      <description>Low-latency data</description> +    </valueHelp> +    <valueHelp> +      <format>AF22</format> +      <description>Low-latency data</description> +    </valueHelp> +    <valueHelp> +      <format>AF23</format> +      <description>Low-latency data</description> +    </valueHelp> +    <valueHelp> +      <format>AF31</format> +      <description>Multimedia streaming</description> +    </valueHelp> +    <valueHelp> +      <format>AF32</format> +      <description>Multimedia streaming</description> +    </valueHelp> +    <valueHelp> +      <format>AF33</format> +      <description>Multimedia streaming</description> +    </valueHelp> +    <valueHelp> +      <format>AF41</format> +      <description>Multimedia conferencing</description> +    </valueHelp> +    <valueHelp> +      <format>AF42</format> +      <description>Multimedia conferencing</description> +    </valueHelp> +    <valueHelp> +      <format>AF43</format> +      <description>Multimedia conferencing</description> +    </valueHelp> +    <valueHelp> +      <format>CS1</format> +      <description>Low-priority data</description> +    </valueHelp> +    <valueHelp> +      <format>CS2</format> +      <description>OAM</description> +    </valueHelp> +    <valueHelp> +      <format>CS3</format> +      <description>Broadcast video</description> +    </valueHelp> +    <valueHelp> +      <format>CS4</format> +      <description>Real-time interactive</description> +    </valueHelp> +    <valueHelp> +      <format>CS5</format> +      <description>Signaling</description> +    </valueHelp> +    <valueHelp> +      <format>CS6</format> +      <description>Network control</description> +    </valueHelp> +    <valueHelp> +      <format>CS7</format> +      <description></description> +    </valueHelp> +    <valueHelp> +      <format>EF</format> +      <description>Expedited Forwarding</description> +    </valueHelp>      <constraint>        <validator name="numeric" argument="--range 0-63"/> -      <regex>(default|reliability|throughput|lowdelay|priority|immediate|flash|flash-override|critical|internet|network)</regex> +      <regex>(default|reliability|throughput|lowdelay|priority|immediate|flash|flash-override|critical|internet|network|AF11|AF12|AF13|AF21|AF22|AF23|AF31|AF32|AF33|AF41|AF42|AF43|CS1|CS2|CS3|CS4|CS5|CS6|CS7|EF)</regex>      </constraint>      <constraintErrorMessage>Priority must be between 0 and 63</constraintErrorMessage>    </properties> diff --git a/interface-definitions/include/version/qos-version.xml.i b/interface-definitions/include/version/qos-version.xml.i index e4d139349..c67e61e91 100644 --- a/interface-definitions/include/version/qos-version.xml.i +++ b/interface-definitions/include/version/qos-version.xml.i @@ -1,3 +1,3 @@  <!-- include start from include/version/qos-version.xml.i --> -<syntaxVersion component='qos' version='1'></syntaxVersion> +<syntaxVersion component='qos' version='2'></syntaxVersion>  <!-- include end --> diff --git a/interface-definitions/interfaces-dummy.xml.in b/interface-definitions/interfaces-dummy.xml.in index 1ffd04a3d..201e9b179 100644 --- a/interface-definitions/interfaces-dummy.xml.in +++ b/interface-definitions/interfaces-dummy.xml.in @@ -25,6 +25,24 @@              </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> diff --git a/interface-definitions/qos.xml.in b/interface-definitions/qos.xml.in index dc807781e..36190949e 100644 --- a/interface-definitions/qos.xml.in +++ b/interface-definitions/qos.xml.in @@ -3,6 +3,7 @@    <node name="qos" owner="${vyos_conf_scripts_dir}/qos.py">      <properties>        <help>Quality of Service (QoS)</help> +      <priority>900</priority>      </properties>      <children>        <tagNode name="interface"> @@ -24,17 +25,7 @@              <properties>                <help>Interface ingress traffic policy</help>                <completionHelp> -                <path>traffic-policy drop-tail</path> -                <path>traffic-policy fair-queue</path> -                <path>traffic-policy fq-codel</path> -                <path>traffic-policy limiter</path> -                <path>traffic-policy network-emulator</path> -                <path>traffic-policy priority-queue</path> -                <path>traffic-policy random-detect</path> -                <path>traffic-policy rate-control</path> -                <path>traffic-policy round-robin</path> -                <path>traffic-policy shaper</path> -                <path>traffic-policy shaper-hfsc</path> +                <path>qos policy limiter</path>                </completionHelp>                <valueHelp>                  <format>txt</format> @@ -46,17 +37,17 @@              <properties>                <help>Interface egress traffic policy</help>                <completionHelp> -                <path>traffic-policy drop-tail</path> -                <path>traffic-policy fair-queue</path> -                <path>traffic-policy fq-codel</path> -                <path>traffic-policy limiter</path> -                <path>traffic-policy network-emulator</path> -                <path>traffic-policy priority-queue</path> -                <path>traffic-policy random-detect</path> -                <path>traffic-policy rate-control</path> -                <path>traffic-policy round-robin</path> -                <path>traffic-policy shaper</path> -                <path>traffic-policy shaper-hfsc</path> +                <path>qos policy cake</path> +                <path>qos policy drop-tail</path> +                <path>qos policy fair-queue</path> +                <path>qos policy fq-codel</path> +                <path>qos policy network-emulator</path> +                <path>qos policy priority-queue</path> +                <path>qos policy random-detect</path> +                <path>qos policy rate-control</path> +                <path>qos policy round-robin</path> +                <path>qos policy shaper</path> +                <path>qos policy shaper-hfsc</path>                </completionHelp>                <valueHelp>                  <format>txt</format> @@ -66,12 +57,97 @@            </leafNode>          </children>        </tagNode> -      <node name="policy" owner="${vyos_conf_scripts_dir}/qos.py"> +      <node name="policy">          <properties>            <help>Service Policy definitions</help> -          <priority>900</priority>          </properties>          <children> +          <tagNode name="cake"> +            <properties> +              <help>Common Applications Kept Enhanced (CAKE)</help> +              <valueHelp> +                <format>txt</format> +                <description>Policy name</description> +              </valueHelp> +              <constraint> +                <regex>[[:alnum:]][-_[:alnum:]]*</regex> +              </constraint> +              <constraintErrorMessage>Only alpha-numeric policy name allowed</constraintErrorMessage> +            </properties> +            <children> +              #include <include/generic-description.xml.i> +              #include <include/qos/bandwidth.xml.i> +              <node name="flow-isolation"> +                <properties> +                  <help>Flow isolation settings</help> +                </properties> +                <children> +                  <leafNode name="blind"> +                    <properties> +                      <help>Disables flow isolation, all traffic passes through a single queue</help> +                      <valueless/> +                    </properties> +                  </leafNode> +                  <leafNode name="src-host"> +                    <properties> +                      <help>Flows are defined only by source address</help> +                      <valueless/> +                    </properties> +                  </leafNode> +                  <leafNode name="dst-host"> +                    <properties> +                      <help>Flows are defined only by destination address</help> +                      <valueless/> +                    </properties> +                  </leafNode> +                  <leafNode name="host"> +                    <properties> +                      <help>Flows are defined by source-destination host pairs</help> +                      <valueless/> +                    </properties> +                  </leafNode> +                  <leafNode name="flow"> +                    <properties> +                      <help>Flows are defined by the entire 5-tuple</help> +                      <valueless/> +                    </properties> +                  </leafNode> +                  <leafNode name="dual-src-host"> +                    <properties> +                      <help>Flows are defined by the 5-tuple, and fairness is applied first over source addresses, then over individual flows</help> +                      <valueless/> +                    </properties> +                  </leafNode> +                  <leafNode name="dual-dst-host"> +                    <properties> +                      <help>Flows are defined by the 5-tuple, and fairness is applied first over destination addresses, then over individual flows</help> +                      <valueless/> +                    </properties> +                  </leafNode> +                  <leafNode name="nat"> +                    <properties> +                      <help>Perform NAT lookup before applying flow-isolation rules</help> +                      <valueless/> +                    </properties> +                  </leafNode> +                </children> +              </node> +              <leafNode name="rtt"> +                <properties> +                  <help>Round-Trip-Time for Active Queue Management (AQM)</help> +                  <valueHelp> +                    <format>u32:1-3600000</format> +                    <description>RTT in ms</description> +                  </valueHelp> +                  <constraint> +                    <validator name="numeric" argument="--range 1-3600000"/> +                  </constraint> +                  <constraintErrorMessage>RTT must be in range 1 to 3600000 milli-seconds</constraintErrorMessage> +                </properties> +                <defaultValue>100</defaultValue> +              </leafNode> +            </children> +          </tagNode>            <tagNode name="drop-tail">              <properties>                <help>Packet limited First In, First Out queue</help> @@ -139,7 +215,7 @@            </tagNode>            <tagNode name="fq-codel">              <properties> -              <help>Fair Queuing Controlled Delay</help> +              <help>Fair Queuing (FQ) with Controlled Delay (CoDel)</help>                <valueHelp>                  <format>txt</format>                  <description>Policy name</description> @@ -171,6 +247,7 @@                <constraintErrorMessage>Only alpha-numeric policy name allowed</constraintErrorMessage>              </properties>              <children> +              #include <include/generic-description.xml.i>                <tagNode name="class">                  <properties>                    <help>Class ID</help> @@ -184,23 +261,13 @@                    <constraintErrorMessage>Class identifier must be between 1 and 4090</constraintErrorMessage>                  </properties>                  <children> +                  #include <include/generic-description.xml.i>                    #include <include/qos/bandwidth.xml.i>                    #include <include/qos/burst.xml.i> -                  #include <include/generic-description.xml.i> -                  #include <include/qos/match.xml.i> -                  #include <include/qos/limiter-actions.xml.i> +                  #include <include/qos/class-police-exceed.xml.i> +                  #include <include/qos/class-match.xml.i> +                  #include <include/qos/class-priority.xml.i>                    <leafNode name="priority"> -                    <properties> -                      <help>Priority for rule evaluation</help> -                      <valueHelp> -                        <format>u32:0-20</format> -                        <description>Priority for match rule evaluation</description> -                      </valueHelp> -                      <constraint> -                        <validator name="numeric" argument="--range 0-20"/> -                      </constraint> -                      <constraintErrorMessage>Priority must be between 0 and 20</constraintErrorMessage> -                    </properties>                      <defaultValue>20</defaultValue>                    </leafNode>                  </children> @@ -212,10 +279,9 @@                  <children>                    #include <include/qos/bandwidth.xml.i>                    #include <include/qos/burst.xml.i> -                  #include <include/qos/limiter-actions.xml.i> +                  #include <include/qos/class-police-exceed.xml.i>                  </children>                </node> -              #include <include/generic-description.xml.i>              </children>            </tagNode>            <tagNode name="network-emulator"> @@ -231,10 +297,9 @@                <constraintErrorMessage>Only alpha-numeric policy name allowed</constraintErrorMessage>              </properties>              <children> -              #include <include/qos/bandwidth.xml.i> -              #include <include/qos/burst.xml.i>                #include <include/generic-description.xml.i> -              <leafNode name="network-delay"> +              #include <include/qos/bandwidth.xml.i> +              <leafNode name="delay">                  <properties>                    <help>Adds delay to packets outgoing to chosen network interface</help>                    <valueHelp> @@ -247,7 +312,7 @@                    <constraintErrorMessage>Priority must be between 0 and 65535</constraintErrorMessage>                  </properties>                </leafNode> -              <leafNode name="packet-corruption"> +              <leafNode name="corruption">                  <properties>                    <help>Introducing error in a random position for chosen percent of packets</help>                    <valueHelp> @@ -260,9 +325,9 @@                    <constraintErrorMessage>Priority must be between 0 and 100</constraintErrorMessage>                  </properties>                </leafNode> -              <leafNode name="packet-loss"> +              <leafNode name="duplicate">                  <properties> -                  <help>Add independent loss probability to the packets outgoing to chosen network interface</help> +                  <help>Cosen percent of packets is duplicated before queuing them</help>                    <valueHelp>                      <format><number></format>                      <description>Percentage of packets affected</description> @@ -270,10 +335,10 @@                    <constraint>                      <validator name="numeric" argument="--range 0-100"/>                    </constraint> -                  <constraintErrorMessage>Must be between 0 and 100</constraintErrorMessage> +                  <constraintErrorMessage>Priority must be between 0 and 100</constraintErrorMessage>                  </properties>                </leafNode> -              <leafNode name="packet-loss"> +              <leafNode name="loss">                  <properties>                    <help>Add independent loss probability to the packets outgoing to chosen network interface</help>                    <valueHelp> @@ -286,9 +351,9 @@                    <constraintErrorMessage>Must be between 0 and 100</constraintErrorMessage>                  </properties>                </leafNode> -              <leafNode name="packet-loss"> +              <leafNode name="reordering">                  <properties> -                  <help>Packet reordering percentage</help> +                  <help>Emulated packet reordering percentage</help>                    <valueHelp>                      <format><number></format>                      <description>Percentage of packets affected</description> @@ -315,6 +380,7 @@                <constraintErrorMessage>Only alpha-numeric policy name allowed</constraintErrorMessage>              </properties>              <children> +              #include <include/generic-description.xml.i>                <tagNode name="class">                  <properties>                    <help>Class Handle</help> @@ -332,10 +398,13 @@                    #include <include/qos/codel-quantum.xml.i>                    #include <include/qos/flows.xml.i>                    #include <include/qos/interval.xml.i> -                  #include <include/qos/match.xml.i> -                  #include <include/qos/queue-limit-2-10999.xml.i> -                  #include <include/qos/target.xml.i> +                  #include <include/qos/class-match.xml.i> +                  #include <include/qos/queue-limit-1-4294967295.xml.i>                    #include <include/qos/queue-type.xml.i> +                  <leafNode name="queue-type"> +                    <defaultValue>drop-tail</defaultValue> +                  </leafNode> +                  #include <include/qos/target.xml.i>                  </children>                </tagNode>                <node name="default"> @@ -343,21 +412,22 @@                    <help>Default policy</help>                  </properties>                  <children> -                  #include <include/generic-description.xml.i>                    #include <include/qos/codel-quantum.xml.i>                    #include <include/qos/flows.xml.i>                    #include <include/qos/interval.xml.i> -                  #include <include/qos/queue-limit-2-10999.xml.i> -                  #include <include/qos/target.xml.i> +                  #include <include/qos/queue-limit-1-4294967295.xml.i>                    #include <include/qos/queue-type.xml.i> +                  <leafNode name="queue-type"> +                    <defaultValue>drop-tail</defaultValue> +                  </leafNode> +                  #include <include/qos/target.xml.i>                  </children>                </node> -              #include <include/generic-description.xml.i>              </children>            </tagNode>            <tagNode name="random-detect">              <properties> -              <help>Priority queuing based policy</help> +              <help>Weighted Random Early Detect policy</help>                <valueHelp>                  <format>txt</format>                  <description>Policy name</description> @@ -368,11 +438,8 @@                <constraintErrorMessage>Only alpha-numeric policy name allowed</constraintErrorMessage>              </properties>              <children> -              #include <include/qos/bandwidth.xml.i> -              <leafNode name="bandwidth"> -                <defaultValue>auto</defaultValue> -              </leafNode>                #include <include/generic-description.xml.i> +              #include <include/qos/bandwidth-auto.xml.i>                <tagNode name="precedence">                  <properties>                    <help>IP precedence</help> @@ -413,6 +480,7 @@                        </constraint>                        <constraintErrorMessage>Mark probability must be greater than 0</constraintErrorMessage>                      </properties> +                    <defaultValue>10</defaultValue>                    </leafNode>                    <leafNode name="maximum-threshold">                      <properties> @@ -426,6 +494,7 @@                        </constraint>                        <constraintErrorMessage>Threshold must be between 0 and 4096</constraintErrorMessage>                      </properties> +                    <defaultValue>18</defaultValue>                    </leafNode>                    <leafNode name="minimum-threshold">                      <properties> @@ -457,8 +526,8 @@                <constraintErrorMessage>Only alpha-numeric policy name allowed</constraintErrorMessage>              </properties>              <children> -              #include <include/qos/bandwidth.xml.i>                #include <include/generic-description.xml.i> +              #include <include/qos/bandwidth.xml.i>                #include <include/qos/burst.xml.i>                <leafNode name="latency">                  <properties> @@ -478,7 +547,7 @@            </tagNode>            <tagNode name="round-robin">              <properties> -              <help>Round-Robin based policy</help> +              <help>Deficit Round Robin Scheduler</help>                <valueHelp>                  <format>txt</format>                  <description>Policy name</description> @@ -503,11 +572,11 @@                    <constraintErrorMessage>Class identifier must be between 1 and 4095</constraintErrorMessage>                  </properties>                  <children> -                  #include <include/qos/codel-quantum.xml.i>                    #include <include/generic-description.xml.i> +                  #include <include/qos/codel-quantum.xml.i>                    #include <include/qos/flows.xml.i>                    #include <include/qos/interval.xml.i> -                  #include <include/qos/match.xml.i> +                  #include <include/qos/class-match.xml.i>                    <leafNode name="quantum">                      <properties>                        <help>Packet scheduling quantum</help> @@ -523,111 +592,26 @@                    </leafNode>                    #include <include/qos/queue-limit-1-4294967295.xml.i>                    #include <include/qos/queue-type.xml.i> +                  <leafNode name="queue-type"> +                    <defaultValue>drop-tail</defaultValue> +                  </leafNode>                    #include <include/qos/target.xml.i>                  </children>                </tagNode> -            </children> -          </tagNode> -          <tagNode name="shaper-hfsc"> -            <properties> -              <help>Hierarchical Fair Service Curve's policy</help> -              <valueHelp> -                <format>txt</format> -                <description>Policy name</description> -              </valueHelp> -              <constraint> -                <regex>[[:alnum:]][-_[:alnum:]]*</regex> -              </constraint> -              <constraintErrorMessage>Only alpha-numeric policy name allowed</constraintErrorMessage> -            </properties> -            <children> -              #include <include/qos/bandwidth.xml.i> -              <leafNode name="bandwidth"> -                <defaultValue>auto</defaultValue> -              </leafNode> -              #include <include/generic-description.xml.i> -              <tagNode name="class"> -                <properties> -                  <help>Class ID</help> -                  <valueHelp> -                    <format>u32:1-4095</format> -                    <description>Class Identifier</description> -                  </valueHelp> -                  <constraint> -                    <validator name="numeric" argument="--range 1-4095"/> -                  </constraint> -                  <constraintErrorMessage>Class identifier must be between 1 and 4095</constraintErrorMessage> -                </properties> -                <children> -                  #include <include/generic-description.xml.i> -                  <node name="linkshare"> -                    <properties> -                      <help>Linkshare class settings</help> -                    </properties> -                    <children> -                      #include <include/qos/hfsc-d.xml.i> -                      #include <include/qos/hfsc-m1.xml.i> -                      #include <include/qos/hfsc-m2.xml.i> -                    </children> -                  </node> -                  #include <include/qos/match.xml.i> -                  <node name="realtime"> -                    <properties> -                      <help>Realtime class settings</help> -                    </properties> -                    <children> -                      #include <include/qos/hfsc-d.xml.i> -                      #include <include/qos/hfsc-m1.xml.i> -                      #include <include/qos/hfsc-m2.xml.i> -                    </children> -                  </node> -                  <node name="upperlimit"> -                    <properties> -                      <help>Upperlimit class settings</help> -                    </properties> -                    <children> -                      #include <include/qos/hfsc-d.xml.i> -                      #include <include/qos/hfsc-m1.xml.i> -                      #include <include/qos/hfsc-m2.xml.i> -                    </children> -                  </node> -                </children> -              </tagNode>                <node name="default">                  <properties>                    <help>Default policy</help>                  </properties>                  <children> -                  <node name="linkshare"> -                    <properties> -                      <help>Linkshare class settings</help> -                    </properties> -                    <children> -                      #include <include/qos/hfsc-d.xml.i> -                      #include <include/qos/hfsc-m1.xml.i> -                      #include <include/qos/hfsc-m2.xml.i> -                    </children> -                  </node> -                  <node name="realtime"> -                    <properties> -                      <help>Realtime class settings</help> -                    </properties> -                    <children> -                      #include <include/qos/hfsc-d.xml.i> -                      #include <include/qos/hfsc-m1.xml.i> -                      #include <include/qos/hfsc-m2.xml.i> -                    </children> -                  </node> -                  <node name="upperlimit"> -                    <properties> -                      <help>Upperlimit class settings</help> -                    </properties> -                    <children> -                      #include <include/qos/hfsc-d.xml.i> -                      #include <include/qos/hfsc-m1.xml.i> -                      #include <include/qos/hfsc-m2.xml.i> -                    </children> -                  </node> +                  #include <include/qos/codel-quantum.xml.i> +                  #include <include/qos/flows.xml.i> +                  #include <include/qos/interval.xml.i> +                  #include <include/qos/queue-limit-1-4294967295.xml.i> +                  #include <include/qos/queue-type.xml.i> +                  <leafNode name="queue-type"> +                    <defaultValue>fair-queue</defaultValue> +                  </leafNode> +                  #include <include/qos/target.xml.i>                  </children>                </node>              </children> @@ -645,10 +629,8 @@                <constraintErrorMessage>Only alpha-numeric policy name allowed</constraintErrorMessage>              </properties>              <children> -              #include <include/qos/bandwidth.xml.i> -              <leafNode name="bandwidth"> -                <defaultValue>auto</defaultValue> -              </leafNode> +              #include <include/generic-description.xml.i> +              #include <include/qos/bandwidth-auto.xml.i>                <tagNode name="class">                  <properties>                    <help>Class ID</help> @@ -662,10 +644,8 @@                    <constraintErrorMessage>Class identifier must be between 2 and 4095</constraintErrorMessage>                  </properties>                  <children> -                  #include <include/qos/bandwidth.xml.i> -                  <leafNode name="bandwidth"> -                    <defaultValue>100%</defaultValue> -                  </leafNode> +                  #include <include/generic-description.xml.i> +                  #include <include/qos/bandwidth-auto.xml.i>                    #include <include/qos/burst.xml.i>                    <leafNode name="ceiling">                      <properties> @@ -697,31 +677,19 @@                      </properties>                    </leafNode>                    #include <include/qos/codel-quantum.xml.i> -                  #include <include/generic-description.xml.i>                    #include <include/qos/flows.xml.i>                    #include <include/qos/interval.xml.i> -                  #include <include/qos/match.xml.i> -                  <leafNode name="priority"> -                    <properties> -                      <help>Priority for usage of excess bandwidth</help> -                      <valueHelp> -                        <format>u32:0-7</format> -                        <description>Priority order for bandwidth pool</description> -                      </valueHelp> -                      <constraint> -                        <validator name="numeric" argument="--range 0-7"/> -                      </constraint> -                      <constraintErrorMessage>Priority must be between 0 and 7</constraintErrorMessage> -                    </properties> -                    <defaultValue>20</defaultValue> -                  </leafNode> +                  #include <include/qos/class-match.xml.i> +                  #include <include/qos/class-priority.xml.i>                    #include <include/qos/queue-limit-1-4294967295.xml.i>                    #include <include/qos/queue-type.xml.i> +                  <leafNode name="queue-type"> +                    <defaultValue>fq-codel</defaultValue> +                  </leafNode>                    #include <include/qos/set-dscp.xml.i>                    #include <include/qos/target.xml.i>                  </children>                </tagNode> -              #include <include/generic-description.xml.i>                <node name="default">                  <properties>                    <help>Default policy</help> @@ -759,7 +727,6 @@                      </properties>                    </leafNode>                    #include <include/qos/codel-quantum.xml.i> -                  #include <include/generic-description.xml.i>                    #include <include/qos/flows.xml.i>                    #include <include/qos/interval.xml.i>                    <leafNode name="priority"> @@ -778,12 +745,116 @@                    </leafNode>                    #include <include/qos/queue-limit-1-4294967295.xml.i>                    #include <include/qos/queue-type.xml.i> +                  <leafNode name="queue-type"> +                    <defaultValue>fq-codel</defaultValue> +                  </leafNode>                    #include <include/qos/set-dscp.xml.i>                    #include <include/qos/target.xml.i>                  </children>                </node>              </children>            </tagNode> +          <tagNode name="shaper-hfsc"> +            <properties> +              <help>Hierarchical Fair Service Curve's policy</help> +              <valueHelp> +                <format>txt</format> +                <description>Policy name</description> +              </valueHelp> +              <constraint> +                <regex>[[:alnum:]][-_[:alnum:]]*</regex> +              </constraint> +              <constraintErrorMessage>Only alpha-numeric policy name allowed</constraintErrorMessage> +            </properties> +            <children> +              #include <include/generic-description.xml.i> +              #include <include/qos/bandwidth-auto.xml.i> +              <tagNode name="class"> +                <properties> +                  <help>Class ID</help> +                  <valueHelp> +                    <format>u32:1-4095</format> +                    <description>Class Identifier</description> +                  </valueHelp> +                  <constraint> +                    <validator name="numeric" argument="--range 1-4095"/> +                  </constraint> +                  <constraintErrorMessage>Class identifier must be between 1 and 4095</constraintErrorMessage> +                </properties> +                <children> +                  #include <include/generic-description.xml.i> +                  <node name="linkshare"> +                    <properties> +                      <help>Linkshare class settings</help> +                    </properties> +                    <children> +                      #include <include/qos/hfsc-d.xml.i> +                      #include <include/qos/hfsc-m1.xml.i> +                      #include <include/qos/hfsc-m2.xml.i> +                    </children> +                  </node> +                  #include <include/qos/class-match.xml.i> +                  <node name="realtime"> +                    <properties> +                      <help>Realtime class settings</help> +                    </properties> +                    <children> +                      #include <include/qos/hfsc-d.xml.i> +                      #include <include/qos/hfsc-m1.xml.i> +                      #include <include/qos/hfsc-m2.xml.i> +                    </children> +                  </node> +                  <node name="upperlimit"> +                    <properties> +                      <help>Upperlimit class settings</help> +                    </properties> +                    <children> +                      #include <include/qos/hfsc-d.xml.i> +                      #include <include/qos/hfsc-m1.xml.i> +                      #include <include/qos/hfsc-m2.xml.i> +                    </children> +                  </node> +                </children> +              </tagNode> +              <node name="default"> +                <properties> +                  <help>Default policy</help> +                </properties> +                <children> +                  <node name="linkshare"> +                    <properties> +                      <help>Linkshare class settings</help> +                    </properties> +                    <children> +                      #include <include/qos/hfsc-d.xml.i> +                      #include <include/qos/hfsc-m1.xml.i> +                      #include <include/qos/hfsc-m2.xml.i> +                    </children> +                  </node> +                  <node name="realtime"> +                    <properties> +                      <help>Realtime class settings</help> +                    </properties> +                    <children> +                      #include <include/qos/hfsc-d.xml.i> +                      #include <include/qos/hfsc-m1.xml.i> +                      #include <include/qos/hfsc-m2.xml.i> +                    </children> +                  </node> +                  <node name="upperlimit"> +                    <properties> +                      <help>Upperlimit class settings</help> +                    </properties> +                    <children> +                      #include <include/qos/hfsc-d.xml.i> +                      #include <include/qos/hfsc-m1.xml.i> +                      #include <include/qos/hfsc-m2.xml.i> +                    </children> +                  </node> +                </children> +              </node> +            </children> +          </tagNode>          </children>        </node>      </children> diff --git a/interface-definitions/service-pppoe-server.xml.in b/interface-definitions/service-pppoe-server.xml.in index b31109296..47ad96582 100644 --- a/interface-definitions/service-pppoe-server.xml.in +++ b/interface-definitions/service-pppoe-server.xml.in @@ -170,52 +170,7 @@                  </properties>                </leafNode>                #include <include/accel-ppp/ppp-options-ipv6.xml.i> -              <leafNode name="ipv6-intf-id"> -                <properties> -                  <help>Fixed or random interface identifier for IPv6</help> -                  <completionHelp> -                    <list>random</list> -                  </completionHelp> -                  <valueHelp> -                    <format>random</format> -                    <description>Random interface identifier for IPv6</description> -                  </valueHelp> -                  <valueHelp> -                    <format>x:x:x:x</format> -                    <description>specify interface identifier for IPv6</description> -                  </valueHelp> -                </properties> -              </leafNode> -              <leafNode name="ipv6-peer-intf-id"> -                <properties> -                  <help>Peer interface identifier for IPv6</help> -                  <completionHelp> -                    <list>random calling-sid ipv4</list> -                  </completionHelp> -                  <valueHelp> -                    <format>x:x:x:x</format> -                    <description>Interface identifier for IPv6</description> -                  </valueHelp> -                  <valueHelp> -                    <format>random</format> -                    <description>Use a random interface identifier for IPv6</description> -                  </valueHelp> -                  <valueHelp> -                    <format>ipv4</format> -                    <description>Calculate interface identifier from IPv4 address, for example 192:168:0:1</description> -                  </valueHelp> -                  <valueHelp> -                    <format>calling-sid</format> -                    <description>Calculate interface identifier from calling-station-id</description> -                  </valueHelp> -                </properties> -              </leafNode> -              <leafNode name="ipv6-accept-peer-intf-id"> -                <properties> -                  <help>Accept peer interface identifier</help> -                  <valueless /> -                </properties> -              </leafNode> +              #include <include/accel-ppp/ppp-options-ipv6-interface-id.xml.i>              </children>            </node>            <tagNode name="pado-delay"> diff --git a/interface-definitions/vpn-l2tp.xml.in b/interface-definitions/vpn-l2tp.xml.in index 06ca4ece5..86aeb324e 100644 --- a/interface-definitions/vpn-l2tp.xml.in +++ b/interface-definitions/vpn-l2tp.xml.in @@ -251,6 +251,7 @@                  <children>                    #include <include/accel-ppp/lcp-echo-interval-failure.xml.i>                    #include <include/accel-ppp/ppp-options-ipv6.xml.i> +                  #include <include/accel-ppp/ppp-options-ipv6-interface-id.xml.i>                  </children>                </node>              </children> | 
