Linux DHCP Server

From Braindisconnect
Jump to navigationJump to search

Errors

interface name too long

dhcpd -t /etc/dhcp/dhcpd.conf

/etc/dhcp/dhcpd.conf: interface name too long (is 20)

This message has nothing to do with your dhcpd.conf file.
The error is because dhcpd is interpreting the /etc/dhcp/dhcpd.conf as an interface.
The 20 is the character count of "/etc/dhcp/dhcpd.conf" and not the file contents.

Add the -cf to your syntax and so that config file is actually getting tested or just use dhcpd -t.

Correct Syntax

dhcpd -t –cf /etc/dhcp/dhcpd.conf

or

dhcpd -t


Example using file names:
dhcpd -t –cf /etc/dhcp/dhcpd.conf
syntax is good and should report errors in the config

DHCP failing to start

Check your messages log:
tail -f /var/log/message

Mar 14 19:50:49 server dhcpd: No subnet declaration for eth1 (172.16.31.254).
Mar 14 19:50:49 server dhcpd: ** Ignoring requests on eth1.  If this is not what
Mar 14 19:50:49 server dhcpd:    you want, please write a subnet declaration
Mar 14 19:50:49 server dhcpd:    in your dhcpd.conf file for the network segment
Mar 14 19:50:49 server dhcpd:    to which interface eth1 is attached. **
Mar 14 19:50:49 server dhcpd: 
Mar 14 19:50:49 server dhcpd: 
Mar 14 19:50:49 server dhcpd: Not configured to listen on any interfaces!

cat /etc/network/interfaces

~
# To Router Interface
auto eth1
iface eth1 inet static
       address 172.16.31.254
       netmask 255.255.255.0
       network 172.16.31.0
       broadcast 172.16.31.255

This issue is because the interface set for DHCP does have the subnet defined in a declaration statement in dhcp.conf.

At the very least declare the subnet even if you do not plan on serving DHCP to that particular subnet.

subnet 172.16.31.0 netmask 255.255.255.0 {
}