summaryrefslogtreecommitdiff
path: root/docs/interfaces
diff options
context:
space:
mode:
Diffstat (limited to 'docs/interfaces')
-rw-r--r--docs/interfaces/index.rst1
-rw-r--r--docs/interfaces/qinq.rst58
2 files changed, 59 insertions, 0 deletions
diff --git a/docs/interfaces/index.rst b/docs/interfaces/index.rst
index 414ed925..756269c4 100644
--- a/docs/interfaces/index.rst
+++ b/docs/interfaces/index.rst
@@ -57,5 +57,6 @@ respective sections.
bonding
vti
vlan
+ qinq
vxlan
wireguard
diff --git a/docs/interfaces/qinq.rst b/docs/interfaces/qinq.rst
new file mode 100644
index 00000000..12fbd47d
--- /dev/null
+++ b/docs/interfaces/qinq.rst
@@ -0,0 +1,58 @@
+.. _interfaces-qinq:
+
+QinQ
+----
+
+QinQ (802.1ad_) — allows multiple VLAN tags to be inserted into a single frame.
+
+QinQ can be used to tunnel vlans in a vlan.
+
+**vif-s** and **vif-c** stand for the ethertype tags that get set:
+
+The inner tag is the tag which is closest to the payload portion of the frame; it is officially called C-TAG (Customer tag, with ethertype 0x8100).
+The outer tag is the one closer/closest to the Ethernet header; its name is S-TAG (Service tag, ethertype 0x88a8).
+
+Configuration commands:
+
+.. code-block:: sh
+
+ interfaces
+ ethernet <eth[0-999]>
+ address <ipv4>
+ address <ipv6>
+ description <txt>
+ disable
+ ip
+ <usual IP options>
+ ipv6
+ <usual IPv6 options>
+ vif-s <[0-4096]>
+ address <ipv4>
+ address <ipv6>
+ description <txt>
+ disable
+ ip
+ <usual IP options>
+ ipv6
+ <usual IPv6 options>
+ vif-c <[0-4096]>
+ address <ipv4>
+ address <ipv6>
+ description <txt>
+ disable
+ ip
+ <usual IP options>
+ ipv6
+ <usual IPv6 options>
+
+
+Example:
+
+.. code-block:: sh
+
+ set interfaces ethernet eth0 vif-s 333
+ set interfaces ethernet eth0 vif-s 333 address 192.0.2.10/32
+ set interfaces ethernet eth0 vif-s 333 vif-c 777
+ set interfaces ethernet eth0 vif-s 333 vif-c 777 address 10.10.10.10/24
+
+.. _802.1ad: https://en.wikipedia.org/wiki/IEEE_802.1ad \ No newline at end of file