0% found this document useful (0 votes)
173 views4 pages

DHCP Server Setup Guide

The document discusses configuring a DHCP server on a Linux system. It describes creating the DHCP configuration file, modifying options and parameters, assigning static and dynamic IP addresses, and grouping declarations. It also mentions restarting the DHCP daemon for changes to take effect and using omshell for an interactive configuration method.
Copyright
© Attribution Non-Commercial (BY-NC)
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
173 views4 pages

DHCP Server Setup Guide

The document discusses configuring a DHCP server on a Linux system. It describes creating the DHCP configuration file, modifying options and parameters, assigning static and dynamic IP addresses, and grouping declarations. It also mentions restarting the DHCP daemon for changes to take effect and using omshell for an interactive configuration method.
Copyright
© Attribution Non-Commercial (BY-NC)
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd

12.2.

Configuring a DHCP Server


The dhcp package contains an ISC DHCP server. First, install the package as the superuser:
~]# yum install dhcp Installing the dhcp package

creates a file, /etc/dhcp/[Link], which is merely an empty

configuration file:
~]# cat /etc/dhcp/[Link] # # DHCP Server Configuration file. # see /usr/share/doc/dhcp*/[Link] The sample configuration file can be found at /usr/share/doc/dhcp<version>/[Link]. You should use this file to help you configure /etc/dhcp/[Link], which is explained in detail below. DHCP also uses the file /var/lib/dhcpd/[Link] to store the client lease database.

Refer to Section 12.2.2, Lease Database for more information.

12.2.1. Configuration File


The first step in configuring a DHCP server is to create the configuration file that stores the network information for the clients. Use this file to declare options and global options for client systems. The configuration file can contain extra tabs or blank lines for easier formatting. Keywords are case-insensitive and lines beginning with a hash sign (#) are considered comments. There are two types of statements in the configuration file:

Parameters State how to perform a task, whether to perform a task, or what network configuration options to send to the client. Declarations Describe the topology of the network, describe the clients, provide addresses for the clients, or apply a group of parameters to a group of declarations.

The parameters that start with the keyword option are referred to as options. These options control DHCP options; whereas, parameters configure values that are not optional or control how the DHCP server behaves. Parameters (including options) declared before a section enclosed in curly brackets ({ }) are considered global parameters. Global parameters apply to all the sections below it.

Restart the DHCP daemon for the changes to take effect


If the configuration file is changed, the changes do not take effect until the DHCP daemon is restarted with the command service dhcpd restart.

Use the omshell command

Instead of changing a DHCP configuration file and restarting the service each time, using the omshell command provides an interactive way to connect to, query, and change the configuration of a DHCP server. By using omshell, all changes can be made while the server is running. For more information on omshell, refer to the omshell man page. In Example 12.1, Subnet declaration, the routers, subnet-mask, domain-search, domain-nameservers, and time-offset options are used for any host statements declared below it. Additionally, a subnet can be declared, a subnet declaration must be included for every subnet in the network. If it is not, the DHCP server fails to start. In this example, there are global options for every DHCP client in the subnet and a range declared. Clients are assigned an IP address within the range. Example 12.1. Subnet declaration
subnet [Link] netmask [Link] { option routers [Link]; option subnet-mask [Link]; option domain-search "[Link]"; option domain-name-servers [Link]; option time-offset -18000; # Eastern Standard Time range [Link] [Link]; }

To configure a DHCP server that leases a dynamic IP address to a system within a subnet, modify Example 12.2, Range parameter with your values. It declares a default lease time, maximum lease time, and network configuration values for the clients. This example assigns IP addresses in the range [Link] and [Link] to client systems. Example 12.2. Range parameter
default-lease-time 600; max-lease-time 7200; option subnet-mask [Link]; option broadcast-address [Link]; option routers [Link]; option domain-name-servers [Link], [Link]; option domain-search "[Link]"; subnet [Link] netmask [Link] { range [Link] [Link]; }

To assign an IP address to a client based on the MAC address of the network interface card, use the hardware ethernet parameter within a host declaration. As demonstrated in Example 12.3, Static IP address using DHCP, the host apex declaration specifies that the network interface card with the MAC address [Link] always receives the IP address [Link]. Note that the optional parameter host-name can also be used to assign a host name to the client.

Example 12.3. Static IP address using DHCP


host apex { option host-name "[Link]"; hardware ethernet [Link]; fixed-address [Link]; }

All subnets that share the same physical network should be declared within a shared-network declaration as shown in Example 12.4, Shared-network declaration. Parameters within the sharednetwork, but outside the enclosed subnet declarations, are considered to be global parameters. The name of the shared-network must be a descriptive title for the network, such as using the title 'testlab' to describe all the subnets in a test lab environment. Example 12.4. Shared-network declaration
shared-network name { option domain-search "[Link]"; option domain-name-servers [Link], [Link]; option routers [Link]; more parameters for EXAMPLE shared-network subnet [Link] netmask [Link] { parameters for subnet range [Link] [Link]; } subnet [Link] netmask [Link] { parameters for subnet range [Link] [Link]; } }

As demonstrated in Example 12.5, Group declaration, the group declaration is used to apply global parameters to a group of declarations. For example, shared networks, subnets, and hosts can be grouped. Example 12.5. Group declaration
group { option routers [Link]; option subnet-mask [Link]; option domain-search "[Link]"; option domain-name-servers [Link]; option time-offset -18000; # Eastern Standard Time host apex { option host-name "[Link]"; hardware ethernet [Link]; fixed-address [Link]; } host raleigh { option host-name "[Link]"; hardware ethernet [Link];

fixed-address [Link]; } }

Using the sample configuration file


The sample configuration file provided can be used as a starting point and custom configuration options can be added to it. To copy it to the proper location, use the following command:
cp /usr/share/doc/dhcp-<version-number>/[Link] /etc/dhcp/[Link] ... where <version-number> is the DHCP version number.

For a complete list of option statements and what they do, refer to the dhcp-options man page.

You might also like