FreeRADIUS InkBridge

isc_dhcp Module

The isc_dhcp module reads ISC DHCP configuration files.

When the module is listed in the recv Discover section, it will look up the client by client-identifier, or failing that, by hardware ethernet. If found, the module will apply a fixed-address option to assign an IP address.

Leases are not handled by this module. Instead, you should use the sqlippool module in the send Offer section. After an IP address has been allocated, list isc_dhcp.

The module will then apply any matching options to the packet.

Configuration Settings

moddir

Search for files in a subdirectory of mods-config which matches this instance of the files module.

filename

The ISC DHCP configuration file

debug

For developers, we print out what we’re parsing.

pedantic

Be harsh or forgiving about what we parse

The isc_dhcp module implements only a small subset of the ISC DHCP configuration file commands. However, the module parses just about everything that is allowable in the ISC DHCP configuration.

The goal here is to allow an easy migration from ISC DHCP to FreeRADIUS, by just copying over "dhcpd.conf". FreeRADIUS will at least start, instead of complaining about everything.

If pedantic = true, then the module will fail with an error when it sees a command it does not support.

The module will also issue warnings for commands which are ignored (e.g. OMAPI ones, "listen on port X", and similar). The module will also issue warnings for commands which should be implemented at some point.

If a command does not produce any errors or warnings, it is implemented and supported.

The default is pedantic = false

Configuration Keywords

The following tables list the ISC DHCP configuration file keywords which are either supported, not yet implemented, or are ignored.

Supported Keywords

The following keywords are have the same meaning and behavior as ISC DHCP.

Keyword Meaning

filename STRING

read the file

fixed-address IPADDR,

match the ip address

group SECTION

nested group

hardware ethernet ETHER

match the ethernet address

host STRING SECTION

host declaration

include STRING

include another file

next-server IPADDR

set next server

option STRING STRING,

set option by name and value

server-identifier IPADDR

set server identifier

server-name STRING

set server name

subnet IPADDR netmask IPADDR SECTION

match subnet

Remaining Keywords

All other keywords are not supported.

Ignored Keywords

The following keywords control ISC DHCP behavior such as network IP/port, LDAP access, etc. These keywords are ignored even when the module is configured with pedantic = true

Keyword

dhcpv6-lease-file-name STRING

dhcpv6-pid-file-name STRING

ldap-base-dn STRING

ldap-debug-file STRING

ldap-dhcp-server-cn STRING

ldap-gssapi-keytab STRING

ldap-gssapi-principal STRING

ldap-init-retry STRING

ldap-method STRING

ldap-password STRING

ldap-port STRING

ldap-referrals BOOL

ldap-server STRING

ldap-ssl STRING

ldap-tls-ca-dir STRING

ldap-tls-ca-file STRING

ldap-TLS-Certificate STRING

ldap-tls-ciphers STRING

ldap-tls-crlcheck STRING

ldap-tls-key STRING

ldap-tls-randfile STRING

ldap-tls-reqcert STRING

ldap-username STRING

lease-file-name STRING

local-address IPADDR

local-address6 IPADDR6

local-port UINT16

log-facility STRING

log-threshold-high UINT8

log-threshold-low UINT8

omapi-key STRING

omapi-port UINT16

pid-file-name STRING

remote-port UINT16

Default Configuration

isc_dhcp {
	moddir = ${modconfdir}/${.:instance}
	filename = ${moddir}/dhcpd.conf
	debug = true
#	pedantic = true
}