interfaces: extend usage of new cmdinclude directive for bridge, bond, eth, peth, vxlan

Commit c46473a ("docs: add ..cmdinclude:: directive") added support for including
common text but only replacing individual labels so there can be source of truth
also for the documentation.
This commit is contained in:
Christian Poessinger 2020-11-10 20:02:47 +01:00
parent 58b3a577e5
commit b7e61a03f0
9 changed files with 70 additions and 131 deletions

View File

@ -0,0 +1,20 @@
.. cfgcmd:: set interfaces {{ var0 }} <interface> ipv6 address autoconf
:abbr:`SLAAC (Stateless Address Autoconfiguration)`
:rfc:`4862`. IPv6 hosts can configure themselves automatically when connected
to an IPv6 network using the Neighbor Discovery Protocol via :abbr:`ICMPv6
(Internet Control Message Protocol version 6)` router discovery messages.
When first connected to a network, a host sends a link-local router
solicitation multicast request for its configuration parameters; routers
respond to such a request with a router advertisement packet that contains
Internet Layer configuration parameters.
.. note:: This method automatically disables IPv6 traffic forwarding on the
interface in question.
Example:
.. code-block:: none
set interfaces {{ var0 }} {{ var1 }} ipv6 address autoconf

View File

@ -0,0 +1,8 @@
.. cfgcmd:: set interfaces {{ var0 }} <interface> ipv6 address eui64 <prefix>
:abbr:`EUI-64 (64-Bit Extended Unique Identifier)` as specified in
:rfc:`4291` allows a host to assign iteslf a unique 64-Bit IPv6 address.
.. code-block:: none
set interfaces {{ var0 }} {{ var1 }} ipv6 address eui64 2001:db8:beef::/64

View File

@ -16,40 +16,17 @@ Configuration
Address
-------
.. cfgcmd:: set interfaces bonding <interface> address <address | dhcp | dhcpv6>
.. cmdinclude:: ../_include/interface-address.txt
:var0: bonding
:var1: bond0
Configure interface `<interface>` with one or more interface addresses.
* **address** can be specified multiple times as IPv4 and/or IPv6 address,
e.g. 192.0.2.1/24 and/or 2001:db8::1/64
* **dhcp** interface address is received by DHCP from a DHCP server on this
segment.
* **dhcpv6** interface address is received by DHCPv6 from a DHCPv6 server on
this segment.
Example:
.. code-block:: none
set interfaces bonding bond0 address 192.0.2.1/24
set interfaces bonding bond0 address 192.0.2.2/24
set interfaces bonding bond0 address 2001:db8::ffff/64
set interfaces bonding bond0 address 2001:db8:100::ffff/64
.. cfgcmd:: set interfaces bonding <interface> ipv6 address autoconf
.. include:: common-ipv6-addr-autoconf.txt
.. cfgcmd:: set interfaces bonding <interface> ipv6 address eui64 <prefix>
:abbr:`EUI-64 (64-Bit Extended Unique Identifier)` as specified in
:rfc:`4291` allows a host to assign iteslf a unique 64-Bit IPv6 address.
.. code-block:: none
set interfaces bonding bond0 ipv6 address eui64 2001:db8:beef::/64
.. cmdinclude:: ../_include/interface-ipv6-addr-autoconf.txt
:var0: bonding
:var1: bond0
.. cmdinclude:: ../_include/interface-ipv6-addr-eui64.txt
:var0: bonding
:var1: bond0
Link Administration
-------------------

View File

@ -24,22 +24,13 @@ Address
:var0: bridge
:var1: br0
.. cmdinclude:: ../_include/interface-ipv6-addr-autoconf.txt
:var0: bridge
:var1: br0
.. cfgcmd:: set interfaces bridge <interface> ipv6 address autoconf
.. include:: common-ipv6-addr-autoconf.txt
.. cfgcmd:: set interfaces bridge <interface> ipv6 address eui64
<prefix>
:abbr:`EUI-64 (64-Bit Extended Unique Identifier)` as specified in
:rfc:`4291` allows a host to assign iteslf a unique 64-Bit IPv6
address.
.. code-block:: none
set interfaces bridge br0 ipv6 address eui64 2001:db8:beef::/64
.. cmdinclude:: ../_include/interface-ipv6-addr-eui64.txt
:var0: bridge
:var1: br0
.. cfgcmd:: set interfaces bridge <interface> aging <time>

View File

@ -1,8 +0,0 @@
Configure interface `<interface>` with one or more interface addresses.
* **address** can be specified multiple times as IPv4 and/or IPv6 address,
e.g. 192.0.2.1/24 and/or 2001:db8::1/64
* **dhcp** interface address is received by DHCP from a DHCP server on this
segment.
* **dhcpv6** interface address is received by DHCPv6 from a DHCPv6 server on
this segment.

View File

@ -1,12 +0,0 @@
:abbr:`SLAAC (Stateless Address Autoconfiguration)`
:rfc:`4862`. IPv6 hosts can configure themselves automatically when connected
to an IPv6 network using the Neighbor Discovery Protocol via :abbr:`ICMPv6
(Internet Control Message Protocol version 6)` router discovery messages.
When first connected to a network, a host sends a link-local router
solicitation multicast request for its configuration parameters; routers
respond to such a request with a router advertisement packet that contains
Internet Layer configuration parameters.
.. note:: This method automatically disables IPv6 traffic forwarding on the
interface in question.

View File

@ -10,31 +10,17 @@ Configuration
Address
-------
.. cfgcmd:: set interfaces ethernet <interface> address <address | dhcp | dhcpv6>
.. cmdinclude:: ../_include/interface-address.txt
:var0: ethernet
:var1: eth0
.. include:: common-ip-ipv6-addr.txt
.. cmdinclude:: ../_include/interface-ipv6-addr-autoconf.txt
:var0: ethernet
:var1: eth0
Example:
.. code-block:: none
set interfaces ethernet eth0 address 192.0.2.1/24
set interfaces ethernet eth0 address 192.0.2.2/24
set interfaces ethernet eth0 address 2001:db8::ffff/64
set interfaces ethernet eth0 address 2001:db8:100::ffff/64
.. cfgcmd:: set interfaces ethernet <interface> ipv6 address autoconf
.. include:: common-ipv6-addr-autoconf.txt
.. cfgcmd:: set interfaces ethernet <interface> ipv6 address eui64 <prefix>
:abbr:`EUI-64 (64-Bit Extended Unique Identifier)` as specified in
:rfc:`4291` allows a host to assign iteslf a unique 64-Bit IPv6 address.
.. code-block:: none
set interfaces ethernet eth0 ipv6 address eui64 2001:db8:beef::/64
.. cmdinclude:: ../_include/interface-ipv6-addr-eui64.txt
:var0: ethernet
:var1: eth0
Speed/Duplex
------------

View File

@ -44,22 +44,17 @@ Configuration
Address
-------
.. cfgcmd:: set interfaces pseudo-ethernet <interface> address <address | dhcp | dhcpv6>
.. cmdinclude:: ../_include/interface-address.txt
:var0: pseudo-ethernet
:var1: peth0
.. include:: common-ip-ipv6-addr.txt
.. cmdinclude:: ../_include/interface-ipv6-addr-autoconf.txt
:var0: pseudo-ethernet
:var1: peth0
Example:
.. code-block:: none
set interfaces pseudo-ethernet peth0 address 192.0.2.1/24
set interfaces pseudo-ethernet peth0 address 192.0.2.2/24
set interfaces pseudo-ethernet peth0 address 2001:db8::ffff/64
set interfaces pseudo-ethernet peth0 address 2001:db8:100::ffff/64
.. cfgcmd:: set interfaces pseudo-ethernet <interface> ipv6 address autoconf
.. include:: common-ipv6-addr-autoconf.txt
.. cmdinclude:: ../_include/interface-ipv6-addr-eui64.txt
:var0: pseudo-ethernet
:var1: peth0
Physical Asignment
------------------

View File

@ -39,35 +39,17 @@ Configuration
Address
-------
.. cfgcmd:: set interfaces vxlan <interface> address <address>
.. cmdinclude:: ../_include/interface-address.txt
:var0: vxlan
:var1: vxlan0
Configure VXLAN interface `<interface>` with one or more interface
addresses. Address can be specified multiple times as IPv4 and/or IPv6
address, e.g. 192.0.2.1/24 and/or 2001:db8::1/64
Example:
.. code-block:: none
set interfaces vxlan vxlan0 address 192.0.2.1/24
set interfaces vxlan vxlan0 address 192.0.2.2/24
set interfaces vxlan vxlan0 address 2001:db8::ffff/64
set interfaces vxlan vxlan0 address 2001:db8:100::ffff/64
.. cfgcmd:: set interfaces vxlan <interface> ipv6 address autoconf
.. include:: common-ipv6-addr-autoconf.txt
.. cfgcmd:: set interfaces vxlan <interface> ipv6 address eui64 <prefix>
:abbr:`EUI-64 (64-Bit Extended Unique Identifier)` as specified in
:rfc:`4291` allows a host to assign iteslf a unique 64-Bit IPv6 address.
.. code-block:: none
set interfaces vxlan vxlan0 ipv6 address eui64 2001:db8:beef::/64
.. cmdinclude:: ../_include/interface-ipv6-addr-autoconf.txt
:var0: vxlan
:var1: vxlan0
.. cmdinclude:: ../_include/interface-ipv6-addr-eui64.txt
:var0: vxlan
:var1: vxlan0
.. cfgcmd:: set interfaces vxlan <interface> vni <number>