首页 > 编程知识 正文

dhcp网络服务器的架设,电脑作为dhcp服务器

时间:2023-05-04 00:36:42 阅读:176747 作者:1336

DHCP构建流程和知识点罗列

一.基本知识点概述

1 .概念

DCP全称: dynamichostconfigurationprotocol,动态主机分配协议是局域网的网络协议,是APP应用层的协议。 它主要通过客户端将广播包发送到物理网段中的所有主机,并响应客户端的IP参数请求(如果局域网中有DHCP服务器)。

2 .创造条件

.具有真正的物理网卡,或者具有连接到广播域的真正的物理网卡

.此接口或物理网卡必须具有合理的IP地址

C/S架构-----满足客户端和服务端

3.DHCP的8种数据消息

)1) DHCP发现程序

当DHCP客户机请求地址时,它会以广播形式在本地网络中发送请求消息,因为它不知道DHCP服务器的位置。 此消息是Discover消息,目的是发现网络中的DHCP服务器,所有接收到Discover消息的DHCP服务器都发送回复消息,从而允许DHCP客户机在网络中发现

)2) DHCP Offer

服务器收到Discover消息后,会在配置的地址池中查找合适的IP地址,添加合适的配置信息(如网关、DNS服务器等),构建提供消息并发送给用户,使用户使用本服务器

)3) DHCP请求

通常,客户端选择最初接收到提供消息的服务作为其目标服务,并响应Request消息的DHCP具有租用信息,在客户端成功获取IP地址后,地址将超过租用期的1/2 如果DHCP服务器通过发送单播Request消息来继续租用,但没有收到DHCP Ack消息,请记住在租用时间超过3/4时再次发送广播Request消息来继续租用

)4) DHCP Ack

DCP服务器接收到Request消息后,从Request消息中包含的用户MAC中检查是否存在相应的租赁记录(即,在以前的预分发过程中注册的MAC ),如果存在,则发送ACK消息作为响应进行分配

)5) DHCP NAK否定应答

如果DHCP服务器接收到Request消息后找不到相关的租用记录,或者因为任何原因无法成功分配IP地址,所发送的NAK消息将无法作为响应进行分配

)6) DHCP发布

当用户不再需要使用分配的IP地址时,“活动”会向DHCP服务器发送Release消息,告知服务器用户不再需要分配IP地址。 DHCP服务器释放绑定的租用。 (清除到数据库MAC所在IP的租用记录,以便将此IP分配给下一个请求租用的MAC。 )

((7) DHCP Decline )拒绝) ) ) ) ) ) )7) ) ) DHCP Decline )拒绝) ) DHCP Decline ) ) 652 )

DHCP客户机从DHCP服务器接收到回复的ACK消息后,如果地址冲突检测到服务器分配的地址冲突或其他原因不可用,发送Decline消息并分配给服务器客户端可以手动设置静态IP,或者在DHCP分配期间可能会显示“检测到IP冲突”消息,这是因为客户端通过ARP机制验证当前是否正在使用内部网中指定的IP

)8) DHCP信息

如果需要从DHCP服务器获取更详细的配置信息,则DHCP客户机会发送Inform消息并请求服务器,在收到该消息后,服务器会基于租约执行搜索,并在找到所需的配置信息后发送ACK消息

*注意: **这里有先进先出的想法。 如果存在多个DHCP服务器,则客户机将使用最初接收到的信息。 这是因为IP地址请求要求实时性。

4.DHCP三种IP地址分配方法

(1)自动分配

HCP服务器为客户机分配一个永久IP地址,以便客户机在第一次从服务器成功借用IP地址后可以永久使用

)2)动态分配方式

DCP服务器为客户机分配一个有时间限制的IP地址,然后随着时间的推移或客户机主机自动销毁该地址,该地址便可供其他客户机主机使用

)3)手动分配方式

由网络管理员自己指定。

5 .工作原理

DHCP协议使用UDP作为传输协议,客户端主机将消息发送到DHCP服务器上的端口67,然后DHCP服务器将响应主机上的端口68。

概要:

客户端使用广播数据包发送功能搜索了DHCP服务器,但由于客户端不知道自己属于哪个网络,因此该数据包数据消息的第3层中源IP为0.0.0.0,目标IP为0.0.0.0

当DHCP服务器接收到来自客户端的DHCP discover广播时,它会根据该客户端进行单播通信,并将地址委托给该客户端。

客户端决定使用DHCP服务器提供的网络参数租用来向服务器确认。 客户机还向物理网络段内的所有主机发送DHCP discover广播分组,通知服务器租用已被接受,同时询问地址是否被另一主机使用

服务端记录盖茨的租赁行为,向客户端发送响应数据消息,确认客户端使用

2 .建立方法和进程

> 1.软件安装
#yum install dhcp-server -y
DHCP服务器的示例文件 /usr/share/doc/dhcp-server/dhcpd.conf.example
这里我们可以通过#rpm -ql dhcp-server来进行查看然后再进入再通过#vim /etc/dhcp/dhcp.conf,在末行模式下进行直接编辑


注意:我这里所说的软件安装是基于yum仓库源文件定义完成之后操作的,后期文章会编写关于这些基本操作的知识点。
2.配置文件格式说明
DHCP服务器主要配置文件路径:/etc/dhcp/dhcp.conf

编写配置文件的规范:
(1)除了大括号后面的,其余每一行配置都要在最后面以“;”结尾。
(2)配置项目的语法i形式主要是“参数代号 配置内容”------------也就是通常所说的键值对形式
(3)某些配置项目必须以option来定义,基本形式为“option 参数代码 配置内容”

这里我将这些参数做一些解释:
subnet 10.5.5.0 netmask 255.255.255.224 { ------声明网段和掩码
range 10.5.5.26 10.5.5.30; ----------指定地址池范围
option domain-name-servers 114.114.114.114 ;----------------指定DNS
option subnet-mask 255.255.255.0; --------------指定掩码
option routers 10.5.5.1; ---------------指定网关
default-lease-time 600; -----------默认租约
max-lease-time 7200; -------------------最大租约
}
3.具体操作
在今后的Linux操作系统学习中,我们无非就是去不断的搭建各种协议啊之类的东西,所以我们应该养成一个比较好的思维方式。这种思维方式也能很好的锻炼我们,以至于我们不管在做什么事情之前都有一个良好的思考能力和逻辑的解决方法,可以说是很有用的。下面我以这个搭建DHCP服务器为例来具体阐述一下
①首先要搭建DHCP服务器,我们就必须得满足最基本的条件:合理的IP即同一种网络模式(桥接或者仅主机都可)以及C/S架构

②安装DHCP服务软件包

③关闭防火墙,selinux这两种安全机制

这里我们常用到命令有
#getenforce -----查看目前selinux状态
或者也可以直接在/etc/selinux/config这个配置文件中直接将selinuxde状态改为permissive警告状态
#systemctl 系统控制命令后面可以跟start启动、restar重启t、stop停止、enable开机启动、disable开机不启用、status状态等
#systemctl status 文件名 可以查看目前文件的状态
这些都还是比较常用的命令,我做一些小小的总结
④根据需求自定义配置文件


**注意:**我们在对配置文件做了一些修改的时候必须重启一下服务,才可以正常运行,我这里使用的是八版本的,有些七版本的则不用。
⑤测试
在客户端主机上先手动关闭默认的DHCP功能,

然后通过正常的正常的地址请求就可以查看能否正常获取到IP了


个人心得:我在接触了一些网络实验以及Linux操作系统实验后,总结出了一个对我来说比较有用的学习方法,那就是逻辑思维能力,这是一个很重要的思想,它能锻炼我们在遇到问题时可以有条不紊的去剖析它,从而一步步的解决,这种思想的养成就是要靠我们在做事情前有目的的去从全局来思考,然后再脑海中搭建一个模糊的框架,然后一层一层的进行处理,从而达到我们的目的。慢慢的会发现,不管是遇到难题还是难事的时候,都能达到一种心中有乾坤的状态,也能培养我们的大局观。

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。