summaryrefslogtreecommitdiff
path: root/interface-definitions/dhcp-relay.xml
diff options
context:
space:
mode:
Diffstat (limited to 'interface-definitions/dhcp-relay.xml')
-rw-r--r--interface-definitions/dhcp-relay.xml98
1 files changed, 98 insertions, 0 deletions
diff --git a/interface-definitions/dhcp-relay.xml b/interface-definitions/dhcp-relay.xml
new file mode 100644
index 000000000..b83402aa1
--- /dev/null
+++ b/interface-definitions/dhcp-relay.xml
@@ -0,0 +1,98 @@
+<?xml version="1.0"?>
+<!-- DHCP relay configuration -->
+<interfaceDefinition>
+ <node name="service">
+ <children>
+ <node name="dhcp-relay" owner="${vyos_conf_scripts_dir}/dhcp_relay.py">
+ <properties>
+ <help>Host Configuration Protocol (DHCP) relay agent</help>
+ <priority>910</priority>
+ </properties>
+ <children>
+ <leafNode name="interface">
+ <properties>
+ <help>DHCP relay interface [REQUIRED]</help>
+ <completionHelp>
+ <script>${vyos_completion_dir}/list_interfaces.py -b</script>
+ </completionHelp>
+ <multi/>
+ </properties>
+ </leafNode>
+ <node name="relay-options">
+ <properties>
+ <help>Relay options</help>
+ </properties>
+ <children>
+ <leafNode name="hop-count">
+ <properties>
+ <help>Policy to discard packets that have reached specified hop-count</help>
+ <valueHelp>
+ <format>1-255</format>
+ <description>Hop count (default: 10)</description>
+ </valueHelp>
+ <constraint>
+ <validator name="numeric" argument="--range 1-255"/>
+ </constraint>
+ <constraintErrorMessage>hop-count must be a value between 1 and 255</constraintErrorMessage>
+ </properties>
+ </leafNode>
+ <leafNode name="max-size">
+ <properties>
+ <help>Maximum packet size to send to a DHCPv4/BOOTP server</help>
+ <valueHelp>
+ <format>64-1400</format>
+ <description>Maximum packet size (default: 576)</description>
+ </valueHelp>
+ <constraint>
+ <validator name="numeric" argument="--range 64-1400"/>
+ </constraint>
+ <constraintErrorMessage>max-size must be a value between 64 and 1400</constraintErrorMessage>
+ </properties>
+ </leafNode>
+ <leafNode name="relay-agents-packets">
+ <properties>
+ <help>Policy to handle incoming DHCPv4 packets which already contain relay agent options (default: forward)</help>
+ <completionHelp>
+ <list>append replace forward discard</list>
+ </completionHelp>
+ <valueHelp>
+ <format>append</format>
+ <description>append own relay options to packet</description>
+ </valueHelp>
+ <valueHelp>
+ <format>replace</format>
+ <description>replace existing agent option field</description>
+ </valueHelp>
+ <valueHelp>
+ <format>forward</format>
+ <description>forward packet unchanged</description>
+ </valueHelp>
+ <valueHelp>
+ <format>discard</format>
+ <description>discard packet (default action if giaddr not set in packet)</description>
+ </valueHelp>
+ <constraint>
+ <regex>(append|replace|forward|discard)</regex>
+ </constraint>
+ </properties>
+ </leafNode>
+ </children>
+ </node>
+ <leafNode name="server">
+ <properties>
+ <help>DHCP server address</help>
+ <valueHelp>
+ <format>ipv4</format>
+ <description>DHCP server IPv4 address</description>
+ </valueHelp>
+ <multi/>
+ <constraint>
+ <validator name="ipv4-address"/>
+ </constraint>
+ </properties>
+ </leafNode>
+ </children>
+ </node>
+ </children>
+ </node>
+</interfaceDefinition>