轻松搭建DHCP服务器

DHCP(Dynamic Host Configuration Protocol)动态主机配置协议

DHCP(Dynamic Host Configuration Protocol),动态主机配置协议,是一个应用层协议。当我们将客户主机ip地址设置为动态获取方式时,DHCP服务器就会根据DHCP协议给客户端分配IP,使得客户机能够利用这个IP上网。
DHCP的前身是BOOTP协议(Bootstrap Protocol),BOOTP被创建出来为连接到网络中的设备自动分配地址,后来被DHCP取代了,DHCP比BOOTP更加复杂,功能更强大。

DHCP的实现

轻松搭建DHCP服务器

第一步:Client端在局域网内发起一个DHCP Discover包,目的是想发现能够给它提供IP的DHCP Server。
第二步:可用的DHCP Server接收到Discover包之后,通过发送DHCP Offer包给予Client端应答,意在告诉Client端它可以提供IP地址。
第三步:Client端接收到Offer包之后,发送DHCP Request包请求分配IP。
第四步:DHCP Server发送ACK数据包,确认信息

一、DHCP服务的配置
  • 安装好yum源
  • 在yum源中查找并安装DHCP服务
[root@foundation79 ~]# yum search dhcp

Loaded plugins: langpacks, product-id, search-disabled-repos, subscription-
              : manager
This system is not registered to Red Hat Subscription Management. You can use subscription-manager to register.
============================== N/S matched: dhcp ===============================
dhcp-common.x86_64 : Common files used by ISC dhcp client and server
dhcp-libs.i686 : Shared libraries used by ISC dhcp client and server
dhcp-libs.x86_64 : Shared libraries used by ISC dhcp client and server
dhclient.x86_64 : Provides the ISC DHCP client daemon and dhclient-script
dhcp.x86_64 : Dynamic host configuration protocol software
dnsmasq.x86_64 : A lightweight DHCP/caching DNS server
  Name and summary matches only, use "search all" for everything.

yum 源安装dhcp:

[root@localhost ~]# yum install dhcp.x86_64 -y
Loaded plugins: langpacks
Resolving Dependencies
--> Running transaction check
---> Package dhcp.x86_64 12:4.2.5-27.el7 will be installed
--> Finished Dependency Resolution
Dependencies Resolved
=======================================================================================================================
 Package                Arch                     Version                              Repository                  Size
=======================================================================================================================
Installing:
 dhcp                   x86_64                   12:4.2.5-27.el7                      rhel_dvd                   506 k
Transaction Summary
=======================================================================================================================
Install  1 Package

Total download size: 506 k
Installed size: 1.4 M
Downloading packages:
dhcp-4.2.5-27.el7.x86_64.rpm                                                                    | 506 kB  00:00:00     
Running transaction check
Running transaction test
Transaction test succeeded
Running transaction
  Installing : 12:dhcp-4.2.5-27.el7.x86_64                                                                         1/1 
  Verifying  : 12:dhcp-4.2.5-27.el7.x86_64                                                                         1/1 

Installed:
  dhcp.x86_64 12:4.2.5-27.el7                                                                                          

Complete!
2.更改DHCP配置文件

因为每台主机需要DHCp分配的IP范围和DNS不同,所以这些都需要用户在配置文件中进行添加。

[root@foundation79 ~]# cp /usr/share/doc/dhcp-4.2.5/dhcpd.conf.example /etc/dhcp/dhcpd.conf

cp: overwrite ‘/etc/dhcp/dhcpd.conf’? y

[root@foundation79 ~]# vim /etc/dhcp/dhcpd.conf
轻松搭建DHCP服务器

3.启动DHCP程序

[root@foundation79 ~]# systemctl start dhcpd
[root@foundation79 ~]# systemctl enable dhcpd
Created symlink from /etc/systemd/system/multi-user.target.wants/dhcpd.service to /usr/lib/systemd/system/dhcpd.service.
重启网络:
[root@foundation79 ~]# systemctl restart network

重置server进行检测:

[root@foundation79 ~]# rht-vmctl reset server 
Are you sure you want to reset server? (y/n) y
Resetting server.
Powering off server..
Creating virtual machine disk overlay for rh124-server-vda
Creating virtual machine disk overlay for rh124-server-vdb
Starting server.

[root@localhost ~]# ifconfig
eth0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        inet 172.25.254.188  netmask 255.255.255.0  broadcast 172.25.254.255
        inet6 fe80::5054:ff:fe00:4f0b  prefixlen 64  scopeid 0x20<link>
        ether 52:54:00:00:4f:0b  txqueuelen 1000  (Ethernet)
        RX packets 50  bytes 8215 (8.0 KiB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 306  bytes 23261 (22.7 KiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

查看dhcp租约文件中的租约记录

[root@localhost ~]# cat /var/lib/dhcpd/dhcpd.leases
# The format of this file is documented in the dhcpd.leases(5) manual page.
# This lease file was written by isc-dhcp-4.2.5

server-duid "\000\001\000\001\"\226D\255RT\000\000O\012";

lease 172.25.254.188 {
  starts 2 2018/05/22 03:02:42;
  ends 2 2018/05/22 03:12:42;
  cltt 2 2018/05/22 03:02:42;
  binding state active;
  next binding state free;
  rewind binding state free;
  hardware ethernet  52:54:00:00:4f:0b;   #分配出的网卡地址与剩余ip
}

文章来源:https://www.cnaaa.net,转载请注明出处:https://www.cnaaa.net/archives/10405

(0)
凯影的头像凯影
上一篇 2023年12月5日 下午5:36
下一篇 2023年12月6日 下午3:58

相关推荐

  • 宝塔一键下载安装失败解决方法

    今天使用国内云服务器部署lnmp环境,发现下载安装宝塔失败 报连接超时错误,使用ping 测试也ping不通,不排除禁止ping可能性, 云服务器国内地区的用户,可以尝试执行下面的命令,指定节点解决此问题, https://www.bt.cn/bbs/thread-87257-1-1.html 宝塔论坛上的解决方式 windows面板的操作方式如下:win的…

    2023年11月3日
    1.4K00
  • Linux如何调整Swap空间大小

    查看当前Swap文件位置以及大小 要查看当前正在使用的swap文件或分区的位置,您可以使用swapon命令。 执行以下命令: 这将显示所有活动的swap空间,包括其类型(例如文件或分区)、大小、使用情况和位置。 如果您只对文件路径或分区路径感兴趣,您可以通过/proc/swaps文件查看相同的信息: 这将列出系统上所有的swap空间,包括它们的位置。 设置一…

    2023年11月6日
    1.4K00
  • Key exchange was not finished, connection is closed.解决办法

    利用java连接Linux服务器中碰到错误:Key exchange was not finished, connection is closed.,导致服务器的连接失败,报错如下 原因 是ssh中的key交换算法不兼容导致 解决办法 修改配置文件 添加如下内容 重启服务

    2023年7月25日
    2.2K00
  • centos7 shell 支持中文显示

    其实很简单,让 shell 支持 utf8 即可。先使用locale命令看一下设置情况: LC_ALL没有设置,需要赋值en_US.UTF-8,很简单: 最后,不要忘了source一下bash_profile,让其生效。

    2023年3月14日
    1.4K00
  • CentOS 添加(永久)静态路由的方法总结

    一、使用 route 命令加入临时路由,重启后将失效 route 命令参数: 二、在 Linux 中添加永久路由的方法 1. 默认网关 (1)写入 ifcfg 文件(推荐) vi /etc/sysconfig/network-scripts/ifcfg-eth0 在配置 ip 地址的时候直接将 GATEWAY 的配置写入 ifcfg 文件。形式:GATEWA…

    2023年9月5日
    1.6K00

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

在线咨询: QQ交谈

邮件:712342017@qq.com

工作时间:周一至周五,8:30-17:30,节假日休息

关注微信