confd: update DHCP YANG model, new options, arping, and route metric

Signed-off-by: Joachim Wiberg <troglobit@gmail.com>
This commit is contained in:
Joachim Wiberg
2023-12-14 16:40:41 +01:00
committed by Mattias Walström
parent eb0022b39d
commit c10e5797e9
@@ -15,6 +15,66 @@ module infix-dhcp-client {
reference "rfc2131 rfc7950";
}
/*
* Typedefs
*/
typedef route-preference {
type uint32;
description "This type is used for route preferences (metric).";
}
typedef dhcp-options {
type union {
type uint8 {
range "0..61";
}
type enumeration {
enum subnet {
value 1;
description "Subnet (IP address and netmask)";
}
enum router {
value 3;
description "Default route(s)";
}
enum dns {
value 6;
description "DNS server";
}
enum hostname {
value 12;
description "Hostname";
}
enum domain {
value 15;
description "Domain name";
}
enum broadcast {
value 28;
description "Broadcast address";
}
enum ntpsrv {
value 42;
description "NTP server";
}
enum address {
value 50;
description "Requested (previously cached) address";
}
enum clientid {
value 61;
description "Client ID (default MAC, and option 12)";
}
enum staticroutes {
value 121;
description "Classless static routes";
}
}
}
description "Supported DHCP client request options";
}
/*
* Data Nodes
*/
@@ -44,6 +104,24 @@ module infix-dhcp-client {
type string;
description "Optional Client ID, option 61, default: MAC address.";
}
leaf arping {
type boolean;
default "true";
description "ARP for lease to check for IP address collisions (slow).";
}
leaf-list options {
type dhcp-options;
description "DHCP options to request (and accept), default: supported.";
}
leaf route-preference {
type route-preference;
default 100;
description
"The metric any route is installed with, both option 33 and 121.
The default (100) is based on a plain Ethernet interface, the
interface type determines this, e.g. a WiFi interface would be
metric 500.";
}
}
}
}