See sample dhcp virtual server for details of these options.
Packets received on the socket will be processed through one of the following sections, named after the DHCP packet type. See dictionary.dhcp for the packet types.
IP Address of the DHCP server
IP Address of the DHCP relay (where the reply should go to) If requests are coming from an upstream relay, this will already be set in the packet
Call the dhcpv4 module to do the relay
The DHCP Offer will come from the relay host
A repeat of the Discover section to handle Request packets This can be repeated for Inform, Release and Decline as required.
Default Configuration
# This is a virtual server that handles DHCPv4 relaying
# Only one server can listen on a socket, so you cannot
# do DHCP relaying && run a DHCP server at the same time.
# Configure an instance of the dhcpv4 module in order to use
# this virtual server - that module provides DHCPv4 client
# and relay functionality.
server dhcp.eth1 {
namespace = dhcpv4
listen {
type = Discover
type = Request
type = Inform
type = Release
type = Decline
transport = udp
udp {
ipaddr = *
port = 67
interface = eth1
src_ip_addr = 127.0.0.1
broadcast = no
}
}
recv Discover {
&control.Net.Dst.IP := 192.0.2.2
&request.Gateway-IP-Address := 192.0.2.1
dhcpv4
do_not_respond
}
recv Request {
&control.Net.Dst.IP := 192.0.2.2
&request.Gateway-IP-Address := 192.0.2.1
dhcpv4
do_not_respond
}
}