网络基础之动态主机配置协议(DHCP)理论基础及华为ENSP基础配置

DHCP理论基础

一、 DHCP的引入

一个网络如果要正常地运行,则网络中的主机(Host)必需要知道某些重要的网络参数,如IP地址、网络掩码、网关地址、DNS服务器地址、网络打印机地址等等。显然,在每台主机上都采用手工方式来配置这些参数是非常困难的、或是根本不可能的。
在大型企业网络中,会有大量的主机或设备需要获取IP地址等网络参数。
如果采用手工配置,工作量大且不好管理,如果有用户擅自修改网络参数,还有可能会造成IP地址冲突,具有相同IP地址的人,有且仅有一个人可以上网等问题。
为此,IETF于1993年发布了动态主机配置协议(DHCP:Dynamic Host Configuration Protocol)。DHCP的应用,实现了网络参数配置过程的自动化,使用动态主机配置协议 DHCP(Dynamic Host Configuration Protocol)来分配IP地址等网络参数,可以减少管理员的工作量,避免用户手工配置网络参数时造成的地址冲突。

二、 DHCP的概念

动态主机配置协议(Dynamic Host Configuration Protocol),基于请求和响应的C/S架构,是应用层协议并基于UDP协议端口 67及68。
bootps:(服务端端口号):67
bootpc:(客户端端口号):68
在这里插入图片描述
终端充当客户机请求IP地址,服务器分配IP地址。

三、 DHCP的实现方式

在具有路由功能的设备上开启DHCP功能,定义一个地址池。由管理员定义其范围,当收到客户机租用请求时就从IP池里随机分配一个未被占用的IP。
地址池:在网络管理员定义了 DHCP 范围及排除范围后,剩余的地址构成了一个地址池,地址池中的地址可以动态的分配给网络中的客户机使用。地址池仅对自动获取IP的方式有效,用户手动设置的IP只要符合规则可无视此项。
DHCP服务器:在现网中的一般的载体,具有路由功能的设备:路由器、三层交换机 能提供DHCP服务功能的服务器:Windows(收费) 、Linux(开源的,比较稳定、安全)。

1. DHCP的通信过程

在这里插入图片描述

169.254.x.x(PC本身没有IP地址,在手动获取IP地址之前,在PC启动之后,设备在触发DHCP的时候,如果它没有正常的获取到IP地址,这时候就用这个IP地址给它作填充):
如果你的主机使用了DHCP功能自动获得一个IP地址,那么当你的DHCP服务器发生故障,或响应时间太长而超出了一个系统规定的时间,Windows系统会为你分配这样一个地址。如果你发现你的主机IP地址是一个诸如此类的地址,很不幸,十有八九是你的网络不能正常运行了。

① 发现阶段,发送DHCP Discover消息(广播),寻找DHCP Server,并表示自己需要获得一个IP地址。
② 提供阶段,响应所收到的DHCP Discover消息,把准备提供的IP地址等各种配置信息(可用地址,这个地址如果分配下去了,服务器端的地址池就不存在这个地址了)携带在DHCP Offer消息(广播/单播)中,并将此消息发送给客户端。
③ 请求阶段,在收到的所有Offer中选择接受第一个到达的Offer,并向相应的DHCP Server发送DHCP Request(广播)消息,表示自己愿意接受该Offer。
④ 确认阶段,确认在提供阶段所提供的IP地址是否可以分配给客户端。如果可以,则发送DHCP Ack消息,表示IP地址分配成功;如果不可以,则发送DHCP Nak消息,表示IP地址分配失败。
⑤ 如果收到了DHCP Ack消息,就可以开始使用所分配的IP地址了;如果收到了DHCP Nak消息,则表示IP地址获取失败,需要重新进入到发现阶段。

2.报文说明

在这里插入图片描述

①DHCP客户端初次接入网络时,会发送DHCP发现报文(DHCP Discover),用于查找和定位DHCP服务器。
②DHCP服务器在收到DHCP发现报文后,发送DHCP提供报文(DHCP Offer),此报文中包含IP地址等配置信息。
③在DHCP客户端收到服务器发送的DHCP提供报文后,会发送DHCP请求报文(DHCP Request),另外在DHCP客户端获取IP地址并重启后,同样也会发送DHCP请求报文,用于确认分配的IP地址等配置信息。DHCP客户端获取的IP地址租期快要到期时,也发送DHCP请求报文向服务器申请延长IP地址租期。
④收到DHCP客户端发送的DHCP请求报文后,DHCP服务器会回复DHCP确认报文(DHCP ACK)。客户端收到DHCP确认报文后,会将获取的IP地址等信息进行配置和使用。
⑤如果DHCP服务器收到DHCP-REQUEST报文后,没有找到相应的租约记录,则发送DHCP-NAK报文作为应答,告知DHCP客户端无法分配合适IP地址。
⑥DHCP客户端通过发送DHCP释放报文(DHCP Release)来释放IP地址。收到DHCP释放报文后,DHCP服务器可以把该IP地址分配给其他DHCP客户端。

3.DHCP租期

在这里插入图片描述

  • DHCP Server每次给DHCP Client分配一个IP地址时,只是跟DHCP Client定立了一个关于这个IP地址的租约(Lease)。每个租约都有一个租约期(Duration of Lease),DHCP协议规定租约期的缺省值不得小于1个小时,而实际部署DHCP时,租约期的缺省值(默认值)通常都是24小时。在租约期内,DHCP Client才能使用相应的IP地址。当租约期到期之后,DHCP Client是不被允许继续使用这个IP地址的。在租约期还没有到期的时候,DHCP Client可以申请续租这个IP地址,其过程如图所示。

  • DHCP协议规定,在缺省情况下,图中的T1时刻是租约期到了一半(50%)的时刻,而T2时刻则是租约期到了87.5%的时刻。在T1时刻,PC上的DHCP Client会以单播方式向R上的DHCP Server发送一个DHCP Request消息,请求续租IP地址(也就是请求重新开始租约期的计时)。如果在T2时刻之前, PC上的DHCP Client收到了回应的DHCP Ack消息,则说明续租已经成功。如果直到T2时刻,PC上的DHCP Client都未收到回应的DHCP Ack消息,那么在T2时刻,PC上的DHCP Client会以广播方式发送一个DHCP Request消息,继续请求续租IP地址。如果在租约期到期之前,PC上的DHCP Client收到了回应的DHCP Ack消息,则说明续租成功。如果直到租约期到期时,PC上的DHCP Client仍未收到回应的DHCP Ack消息,那么PC就必须停止使用原来的IP地址,也就是说,PC只能重新从发现阶段开始来重新申请一个IP地址。

四、DHCP地址池配置:

在这里插入图片描述

1.基于全局地址池的DHCP服务器给客户端分配IP地址:

配置基于全局地址池的地址分配方式,可以响应所有端口接收的DHCP请求。

dhcp enable      //使用全局的DHCP功能,在配置DHCP服务器时必须先执行该命令,才能配置DHCP的其他功能并生效
ip pool HW       //设置一个名为HW的全局地址池
gateway-list 192.168.1.1       //设置分配的网关IP
network 192.168.1.0 mask 255.255.255.0     //设置分配的地址网段
excluded-ip-address 192.168.1.2     //设置不参与自动分配的IP地址范围
lease day 3 hour 0 minute 0      //设置地址池中IP地址的租用有效期限,默认1天
dns-list 192.168.1.2             //设置分配的DNS服务器地址
2. 基于接口的DHCP服务器给客户端分配IP地址:

DHCP Server配置基于接口的地址分配方式,只会响应该接口接收的DHCP请求

interface g0/0/0
ip address 192.168.1.1 24
dhcp select interface                 //使能接口分配地址方式且关联接口地址池
dhcp server dns-list 192.168.1.2       //指定分配的DNS服务器地址
dhcp server excluded-ip-address 192.168.1.2    //配置接口地址池中不参与自动分配的IP地址范围,排除手动的,静态的IP地址,防止IP地址的冲突
dhcp server lease day 2 hour 0 minute 0          //配置接口地址池中IP地址的租用有效期,默认1天
3.总结:

1.接口
全局开启DHCP enable 功能
进入接口
配置好IP地址 //IP地址在一个网段 (192.168.1.254 24,说明地址池网段 192.168.1.0 24)
选择地址池的模式-接口模式
dhcp select interface //指定地址池的地址范围是 接口所在的网段范围,接口是这个网段的网关
指定DNS服务器的地址
指定要排除的 IP地址
指定租期
dhcp server lease day 1 hour 3 minute 5 //租期可以精确到 minutes

2.全局
1.开启全局DHCP功能
2.创建地址池—给地址池起名字
3.指定地址池的大小
4.指定网关
5.指定DNS服务器的地址
6.指定租期时间
7.进入相关的接口 选择DHCP的模式为全局 global

4.接口地址池配置验证:

在这里插入图片描述

五、DHCP的优缺点:

  • DHCP的优点:
    1、 网络管理员可以验证IP地址和其它配置参数,而不用去检查每个主机;
    2、 DHCP不会同时租借相同的IP地址给两台主机;
    3、 DHCP管理员可以约束特定的计算机使用特定的IP地址
    4、 可以为每个DHCP地址池设置很多选项;
    5、 客户机在不同子网间移动时不需要重新设置IP地址

  • DHCP服务的缺点:
    1、 DHCP不能发现网络上非DHCP客户机已经在使用的IP地址;
    2、 当网络上存在多个DHCP服务器时,一个DHCP服务器不能查出已被其它服务器租出去的IP地址;
    3、 DHCP服务器不能跨路由器与客户机通信,除非路由器允许DHCP转发 ---- 中继
    DHCP协议基本上是一个单向驱动协议;SERVER完全是被动的,其动作行为基本完全由CLIENT的请求行为而激发。即SERVER端无法主动控制CLIENT端。
    DHCP Relay
    一、引入DHCP Relay
    随着网络规模的扩大,需求的增加导致不能满足在路由器上做地址池,这样的话,就需要专门的服务器给各种网段的主机提供DHCP服务。
    在这里插入图片描述
    在这里插入图片描述

    PC客户端与DHCP server不在同一个网段;
    PC发出的广播DHCP discover包到达三层设备;
    对于三层交换机来说,自身不是DHCP server,所以它没有办法做出回应,Discover MSG(广播)被三层接口丢弃,因此数据无法到达DHCP服务器;
    三层接口是指:要给PC做网关的vlanif 接口。
    在DHCP的通信过程中可知,DHCP Discover、DHCP Offer等消息都是以广播报文的方式发送的,也就是说,DHCP Client和DHCP Server必须在同一个二层广播域中才能接收到彼此发送的DHCP消息。DHCP消息无法跨越二层广播域传递。
    一个实际的IP网络通常都包含了多个二层广播域,如果需要部署DHCP,那么可以有两种方法:
    方法一:在每一个二层广播域中都部署一个DHCP Server 在这里插入图片描述
    比如说,在每一个网段都搭建一台服务器,把客户机A划分到VLAN10下,搭建一台服务器,把客户机B划分到VALN20下,再搭建一台服务器。代价较大,显然很不经济,现实中一般不推荐此方法。
    方法二:部署一个DHCP Server来同时为多个二层广播域中的DHCP Client服务,这就需要引入DHCP Relay。

在这里插入图片描述
二、DHCP Relay的概念
DHCP Relay (DHCP中继),可以实现在不同子网和物理网段之间处理和转发dhcp信息的功能。
在这里插入图片描述
二、DHCP Relay基本工作原理
在这里插入图片描述DHCP Relay的基本作用就是专门在DHCP Client和DHCP Server之间进行DHCP消息的中转。
如图所示,DHCP Client利用DHCP Relay来从DHCP Server那里获取IP地址等配置参数时,DHCP Relay必须与DHCP Client位于同一个二层广播域,但DHCP Server可以与DHCP Relay位于同一个二层广播域,也可以与DHCP Relay位于不同的二层广播域。DHCP Client与DHCP Relay之间是以广播方式交换DHCP消息的,但DHCP Relay与DHCP Server之间是以单播方式交换DHCP消息的
这就意味着,DHCP Relay必须事先知道DHCP Server的IP地址,中继设备有DHCP Server的路由。
一般的话,在能收到二层的广播报文的所有接口上,但凡使用到DHCP,DHCP Server不在广播域内就需要配中继。
DHCP Relay配置实现
网络拓扑图(Internet可忽略)
在这里插入图片描述

配置DHCP-Server:                                          //DHCP服务器可以采用全局地址分配或者接口地址分配,此处以全局地址池分配地址为例
dhcp enable                               
ip pool DHCP-relay                                 //"DHCP-relay"仅为DHCP地址池名称
ip route-static 192.168.1.0 24 10.1.1.2   //由于中继后的DHCP报文是一个源地址为192.168.1.1的单播报文,需要有回去的路由,当前为了简单,使用静态路由完成,正常网络内可以配置IGP使得地址能够通信
配置DHCP中继(GW):
dhcp server group DHCP                    //配置DHCP服务器组名
dhcp-server 10.1.1.1                            //设定DHCP服务器地址
dhcp enable                                         //中继设备也需要开启DHCP,否则后面接口下的命令不能使能
interface g0/0/1                                  //进入连接客户端的接口
ip address 192.168.1.1 24 
dhcp select relay                                //启动DHCP Relay功能
dhcp relay server-select DHCP          //设定DHCP Relay要使用的服务器组
  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值