The /etc/dhcpd.conf File



The /etc/dhcpd.conf File

When DHCP starts, it reads the file /etc/dhcpd.conf. It uses the commands here to configure your network. The standard DHCP RPM package doesn't automatically install a /etc/dhcpd.conf file, but you can find a sample copy of dhcpd.conf in the following directory, which you can always use as a guide:

     /usr/share/doc/dhcp-<version-number>/dhcpd.conf.sample

You have to copy the sample dhcpd.conf file to the /etc directory and then you have to edit it. Here is the command to do the copying for the version 3.0p11 RPM file:

     [root@bigboy tmp]# cp /usr/share/doc/dhcp-3.0pl1/dhcpd.conf.sample \
       /etc/dhcpd.conf

Here is a quick explanation of the dhcpd.conf file: Most importantly, there must be a subnet section for each interface on your Linux box:

     ddns-update-style interim
     ignore client-updates

     subnet 192.168.1.0 netmask 255.255.255.0 {
        # The range of IP addresses the server
        # will issue to DHCP enabled PC clients
        # booting up on the network

        range 192.168.1.201 192.168.1.220;

        # Set the amount of time in seconds that
        # a client may keep the IP address

        default-lease-time 86400;
        max-lease-time 86400;

        # Set the default gateway to be used by
        # the PC clients

        option routers 192.168.1.1;

        # Don't forward DHCP requests from this
        # NIC interface to any other NIC
        # interfaces

        option ip-forwarding off;

        # Set the broadcast address and subnet mask
        # to be used by the DHCP clients

        option broadcast-address 192.168.1.255;
        option subnet-mask 255.255.255.0;

        # Set the DNS server to be used by the
        # DHCP clients

        option domain-name-servers 192.168.1.100;

        # Set the NTP server to be used by the
        # DHCP clients

        option nntp-server 192.168.1.100;

        # If you specify a WINS server for your Windows clients,
        # you need to include the following option in the dhcpd.conf file:

        option netbios-name-servers 192.168.1.100;

        # You can also assign specific IP addresses based on the clients'
        # ethernet MAC address as follows (Host's name is "laser-printer":

        host laser-printer {
           hardware ethernet 08:00:2b:4c:59:23;
           fixed-address 192.168.1.222;
        }
     }
     #
     # List an unused interface here
     #
     subnet 192.168.2.0 netmask 255.255.255.0 {
     }

There are many more options statements you can use to configure DHCP. These include telling the DHCP clients where to go for services such as finger and IRC. Check the dhcp-options man page after you do your install:

     [root@bigboy tmp]# man dhcp-options

Note

The host statement seen in the sample dhcpd.conf file can be very useful. Some devices such as network printers default to getting their IP addresses using DHCP, but users need to access them by a fixed IP address to print their documents. This statement can be used to always provide specific IP address to DHCP queries from a predefined NIC MAC address. This can help to reduce systems administration overhead.