What is Dynamic Host Configuration Protocol (DHCP)?
Dynamic Host Configuration Protocol (DHCP) is network protocol for automatically assigning TCP/IP information to client machines. Each DHCP client connects to the centrally-located DHCP server which returns that client's network configuration including IP address, gateway, and DNS servers.
Why you need DHCP server?
DHCP is useful for fast delivery of client network configuration. When configuring the client system, the administrator can choose DHCP and not have to enter an IP address, netmask, gateway, or DNS servers. The client retrieves this information from the DHCP server. DHCP is also useful if an administrator wants to change the IP addresses of a large number of systems. Instead of reconfiguring all the systems, he can just edit one DHCP configuration file on the server for the new set of IP address. If the DNS servers for an organization changes, the changes are made on the DHCP server, not on the DHCP clients. Once the network is restarted on the clients (or the clients are rebooted), the changes will take effect.
Furthermore, if a laptop or any type of mobile computer is configured for DHCP, it can be moved from office to office without being reconfigured as long as each office has a DHCP server that allows it to connect to the network.
Installing DHCP server in Debian
#apt-get install dhcp3-server
Once you press enter installation will start it will ask you some questions just you need to click ok for all three times
Configuring DHCP server
The main Configuration file for DHCP server is /etc/dhcp3/dhcpd.conf
Before doing any changes take backup copy of this file and add the following lines
first line provides the name field for the clients, second line gives DNS for for the clients, third one is for router ip,fourth one is lease time fifth line is subnet and netmask details, sixth line is ipaddress range for your clients
If you want more details in dhcpd.conf file check the man page of this file
If you want to configure static ipaddress for some machines follow this
First line name of the host you want to configure static ip address,second one is MAC address of that perticular machine,if you want to find the MAC address of that machine you need to run the "ifconfig" command,third one is ipaddress you want to assign to that perticular machine.
You need to restart the DHCP daemon to take effect of your new changes.
If it restarts without any errors your configuration is correct. If you get any errors you need to check the log files for more error information
The following file give you the complete details about the DHCP clients connecting to the DHCP server this details includes the following
IP address of the client machine
MAC address of the client machine
Name of the client machine
Beginning and ending of ipaddress lease time
Client Machine Configuration
You need to modify the following file
# vi /etc/network/interfaces
You need to add the following lines and save the file.
auto lo eth0
iface lo inet loopback
iface eth0 inet dhcp
Now you need to restart the networking service to take these new changes
If you want to check your machine is configured properly you need to run the following command
Finally you can check your log file(/var/log/messages) everything is properly configured or not.