CentOS 7: Setup a DHCP server and provide specific IP based on MAC address
Step 1: Install DHCP service
We installed the Dynamic host configuration protocol
software (DHCP
service) using the command:
yum install dhcp;
The dhcp
package provides the ISC DHCP
service and relay agent.
Step 2: Configure the DHCP service
Afterwards, we created the file /etc/dhcp/dhcpd.conf
using the following content:
subnet 192.168.0.0 netmask 255.255.255.0 { option routers 192.168.0.254; option subnet-mask 255.255.255.0; option domain-name "bytefreaks.net"; option domain-name-servers 192.168.0.1; option time-offset -18000; # Eastern Standard Time range 192.168.0.90 192.168.0.99; } host coolServer { hardware ethernet 0e:e0:4b:b4:28:82; fixed-address 192.168.0.80; }
This configuration allowed us to provide a DHCP
service to the network for the subdomain 192.168.0.x
with the range [90,99
].
Also, we statically defined the IP
for our coolServer using a filter
based on the MAC
address of the machine.
If you do not want to provide any range, only static IPs, then comment out (#
) the line that starts with the word range
.
Step 3: Start DHCP service
systemctl start dhcpd.service;
Step 4: Check the status of DHCP service
systemctl status dhcpd.service;
It is a good idea to verify that there are no errors, so be sure to check the status of the service.
You can ignore the error that says “you did not define a subnet declaration for all devices” if you do not really need to do it.
Step 5: Permanently enable the DHCP service
systemctl enable dhcpd.service;
Additional:
Disable the DHCP service
systemctl disable dhcpd.service;
Stop the DHCP service
systemctl stop dhcpd.service;