summaryrefslogtreecommitdiff
path: root/interface-definitions/include
diff options
context:
space:
mode:
authorYoshiaki Suyama <yoshiaki.suyama@suyama.ne.jp>2025-03-16 01:16:55 +0900
committerChristian Breunig <christian@breunig.cc>2025-04-18 20:45:46 +0200
commitb124f0b3b05bced1f916e9519d986d03f2b95c51 (patch)
treed14696ac9fc86052a205423a461d647ca9718c44 /interface-definitions/include
parentab648af4c07e8a09e0a1236b661ac0ec0639ff17 (diff)
downloadvyos-1x-b124f0b3b05bced1f916e9519d986d03f2b95c51.tar.gz
vyos-1x-b124f0b3b05bced1f916e9519d986d03f2b95c51.zip
interface: T4627: support IPv6 Interface Identifier (token) for SLAAC
Add common IPv6 CLI option (use ethernet as example): set interfaces ethernet eth0 ipv6 address interface-identifier Co-authored-by: Christian Breunig <christian@breunig.cc>
Diffstat (limited to 'interface-definitions/include')
-rw-r--r--interface-definitions/include/interface/ipv6-address-interface-identifier.xml.i15
-rw-r--r--interface-definitions/include/interface/ipv6-address.xml.i1
2 files changed, 16 insertions, 0 deletions
diff --git a/interface-definitions/include/interface/ipv6-address-interface-identifier.xml.i b/interface-definitions/include/interface/ipv6-address-interface-identifier.xml.i
new file mode 100644
index 000000000..d173dfdb8
--- /dev/null
+++ b/interface-definitions/include/interface/ipv6-address-interface-identifier.xml.i
@@ -0,0 +1,15 @@
+<!-- include start from interface/ipv6-address-interface-identifier.xml.i -->
+<leafNode name="interface-identifier">
+ <properties>
+ <help>SLAAC interface identifier</help>
+ <valueHelp>
+ <format>::h:h:h:h</format>
+ <description>Interface identifier</description>
+ </valueHelp>
+ <constraint>
+ <regex>::([0-9a-fA-F]{1,4}(:[0-9a-fA-F]{1,4}){0,3})</regex>
+ </constraint>
+ <constraintErrorMessage>Interface identifier format must start with :: and may contain up four hextets (::h:h:h:h)</constraintErrorMessage>
+ </properties>
+</leafNode>
+<!-- include end -->
diff --git a/interface-definitions/include/interface/ipv6-address.xml.i b/interface-definitions/include/interface/ipv6-address.xml.i
index e1bdf02fd..ff35b858c 100644
--- a/interface-definitions/include/interface/ipv6-address.xml.i
+++ b/interface-definitions/include/interface/ipv6-address.xml.i
@@ -6,6 +6,7 @@
<children>
#include <include/interface/ipv6-address-autoconf.xml.i>
#include <include/interface/ipv6-address-eui64.xml.i>
+ #include <include/interface/ipv6-address-interface-identifier.xml.i>
#include <include/interface/ipv6-address-no-default-link-local.xml.i>
</children>
</node>