summaryrefslogtreecommitdiff
path: root/interface-definitions/dhcp-server.xml.in
diff options
context:
space:
mode:
authorIndrajit Raychaudhuri <irc@indrajit.com>2023-12-17 15:21:30 -0600
committerIndrajit Raychaudhuri <irc@indrajit.com>2023-12-21 19:48:25 -0600
commit4e1b826eecdf611fc318b2b95a27d289799ae5f4 (patch)
tree676af43851bed572582aafe726aefd82392a1701 /interface-definitions/dhcp-server.xml.in
parentdfbc854157fa4655a8f459b2447df64dc74119d1 (diff)
downloadvyos-1x-4e1b826eecdf611fc318b2b95a27d289799ae5f4.tar.gz
vyos-1x-4e1b826eecdf611fc318b2b95a27d289799ae5f4.zip
dhcp: T3316: Support hostname, DUID and MAC address in reservation
Reinstate support for hostname in DHCP reservation. Having `hostname` in allows for server-side assignment of hostname. This is useful for static lookup of hostname. Ensure that hostname is a valid FQDN (doesn't have underscore, etc.) Additionally, support using either of DUID or MAC address for reservation. While MAC address is typically used for IPv4, and DUID is typically used for IPv6, either of them can be used in IPv4 and IPv6 reservations in Kea.
Diffstat (limited to 'interface-definitions/dhcp-server.xml.in')
-rw-r--r--interface-definitions/dhcp-server.xml.in20
1 files changed, 5 insertions, 15 deletions
diff --git a/interface-definitions/dhcp-server.xml.in b/interface-definitions/dhcp-server.xml.in
index 081f7ed42..8aaeeb29d 100644
--- a/interface-definitions/dhcp-server.xml.in
+++ b/interface-definitions/dhcp-server.xml.in
@@ -284,11 +284,11 @@
</tagNode>
<tagNode name="static-mapping">
<properties>
- <help>Name of static mapping</help>
+ <help>Hostname for static mapping reservation</help>
<constraint>
- <regex>[-_a-zA-Z0-9.]+</regex>
+ <validator name="fqdn"/>
</constraint>
- <constraintErrorMessage>Invalid static mapping name, may only be alphanumeric, dot and hyphen</constraintErrorMessage>
+ <constraintErrorMessage>Invalid static mapping hostname</constraintErrorMessage>
</properties>
<children>
#include <include/generic-disable-node.xml.i>
@@ -304,18 +304,8 @@
</constraint>
</properties>
</leafNode>
- <leafNode name="mac-address">
- <properties>
- <help>Media Access Control (MAC) address</help>
- <valueHelp>
- <format>macaddr</format>
- <description>Hardware (MAC) address</description>
- </valueHelp>
- <constraint>
- <validator name="mac-address"/>
- </constraint>
- </properties>
- </leafNode>
+ #include <include/interface/mac.xml.i>
+ #include <include/interface/duid.xml.i>
</children>
</tagNode>
<tagNode name="static-route">