轻松搭建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

相关推荐

  • CentOS7系统下扩容根目录

    利用单一磁盘的剩余空间 在同一块磁盘下,有剩余空间未分配,将该空间合并到根目录中 本文以/dev/sda为例 查看磁盘分区情况 lsblk或者fdisk -l /dev/sda 可以看到 sda 总容量为30G,而 sda1和 sda2 加起来总共使用了10G,因此我们可以将剩余的容量添加到目录中 对剩余空间进行分区格式化操作 fdisk /dev/sda …

    2022年6月9日
    1.4K00
  • 网站发现打开是404报错

    现象:今日再使用IIS部署网站发现打开是404报错 分析过程:首先判断web下是否缺失文件,默认文档配置是否正确,PHP模块映射配置是否正确,PHP版本是否有故障。 发现php manager中php版本未能选择,重新选择php版本报错 解决办法:  打开处理程序映射,使php的处理程序为fastcgi,即可修复成功!!!

    2022年12月8日
    1.4K00
  • iftop详解

    Linux安装iftop 界面如下 界面参数说明 常用的参数 显示网卡eth0的信息,主机通过ip显示 显示端口号(添加-P参数,进入界面可通过p参数关闭) 显示将输出以byte为单位显示网卡流量,默认是bit 显示流量进度条 显示每个连接的总流量 显示指定ip 8.8.8.8的流量

    2023年1月5日
    1.2K00
  • Nginx常见502错误提示原因和解决方法

    常见的Nginx 502 Bad Gateway解决办法如下: Nginx 502错误情况1: 网站的访问量大,而php-cgi的进程数偏少。 针对这种情况的502错误,只需增加php-cgi的进程数。具体就是修改/usr/local/php/etc/php-fpm.conf 文件,将其中的max_children值适当增加。这个数据要依据你的VPS或独立服…

    2022年6月21日
    1.0K00
  • find命令排除某些目录或文件

    使用-prune开关。例如,如果要排除misc目录,只需将a添加-path ./misc -prune -o到您的find命令中: find . -path ./misc -prune -false -o -name ‘*.txt’ 这是带有多个目录的示例: find . -type d \( -path dir1 -o -path dir2 -o -pat…

    2023年6月16日
    1.2K00

发表回复

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

在线咨询: QQ交谈

邮件:712342017@qq.com

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

关注微信