【华为认证HCIA】小白简单学网工DHCP原理

DHCP详解

​【温馨提示】需要资料或者需要进群交流划到最底部

DHCP介绍

 DHCP(Dynamic Host Configuration Protocol,动态主机配置协议),是一个应用层协议,通常被应用在大型的局域网络环境中,主要作用是集中的管理、分配IP地址,使网络环境中的主机动态的获得IP地址、Gateway地址、DNS服务器地址等信息,并能够提升地址的使用率。

 DHCP协议采用客户端/服务器模型,主机地址的动态分配任务由网络主机驱动。当DHCP服务器接收到来自网络主机申请地址的信息时,才会向网络主机发送相关的地址配置等信息,以实现网络主机地址信息的动态配置。

DHCP工作流程
在这里插入图片描述

1 DHCP Client发现阶段
DHCP客户机寻找DHCP服务器的阶段。DHCP客户机以广播方式(因为DHCP服务器的IP地址对于客户机来说是未知的)发送 DHCP discover发现信息来寻找DHCP服务器,源地址为0.0.0.0目的地址为255.255.255.255。网络上每一台安装了TCP/IP协议的主机 都会接收到这种广播信息,但只有DHCP服务器才会做出响应。

2 DHCP Server提供阶段
DHCP服务器提供IP地址的阶段。在网络中接收到DHCP discover发现信息的DHCP服务器都会做出响应,它从尚未出租的IP地址中挑选一个分配给DHCP客户机,向DHCP客户机发送一个包含出租的 IP地址和其他设置的DHCP offer信息。

3 DHCP Client选择阶段
DHCP客户机选择某台DHCP服务器提供的IP地址的阶段。如果有多台DHCP服务器向DHCP客户机发来的DHCP offer提供信息,则DHCP客户机只接受第一个收到的DHCP offer提供信息,然后它就以广播方式回答一个DHCP request请求信息,该信息中包含向它所选定的DHCP服务器请求IP地址的内容。之所以要以广播方式回答,是为了通知所有的DHCP服务器,他将选择某台DHCP服务器所提供的IP地址。

4 DHCP Server确认阶段
DHCP服务器确认所提供的IP地址的阶段。当DHCP服务器收到DHCP客户机回答的DHCP request请求信息之后,它便向DHCP客户机发送一个包含它所提供的IP地址和其他设置的DHCP ack确认信息,告诉DHCP客户机可以使用它所提供的IP地址。然后DHCP客户机便将其TCP/IP协议与网卡绑定。

另外,除DHCP客户机选中的服务器外,其他的DHCP服务器都将收回之前为其提供的IP地址。

5 DHCP Client重新登录
以后DHCP客户机每次重新登录网络时,就不需要再发送DHCP discover发现信息了,而是直接发送包含前一次所分配的IP地址的DHCP request请求信息。当DHCP服务器收到这一信息后,它会尝试让DHCP客户机继续使用原来的IP地址,并回答一个DHCP ack确认信息。如果此IP地址已无法再分配给原来的DHCP客户机使用时(比如此IP地址已分配给其它DHCP客户机使用),则DHCP服务器给 DHCP客户机回答一个DHCP nack否认信息。当原来的DHCP客户机收到此DHCP nack否认信息后,它就必须重新发送DHCP discover发现信息来请求新的IP地址。

6 DHCP Client更新租约
DHCP服务器向DHCP客户机出租的IP地址一般都有一个租借期限,期满后DHCP服务器便会收回出租的IP地址。如果DHCP客户 机要延长其IP租约,则必须更新其IP租约。DHCP客户机启动时和IP租约期限过一半时,DHCP客户机都会自动向DHCP服务器发送更新其IP租约的 信息。

DHCP报文

在这里插入图片描述

1 报文内容

Op: 报文类型,分为 两大类: Request(1) 和 Reply(2)

HW Type: 硬件类型,一般是以太网:1

HW Len: 硬件地址长度,单位字节。对应以太网:6(mac地址长度为6字节48bit)

Transaction ID:事务ID,随机数,有客户端生成,服务器Reply时,会把Request中的Transaction拷贝到Reply报文中。

Secs: 距离第一次发射IP请求或Renew请求过去的秒数

Flags:标志位,目前仅第一个bit有使用,置1 标明广播

Client IP Address:当前客户端的IP地址,如果当前客户端没有IP地址,则置0

Your IP Address: 服务器想客户端提供IP地址时,会把IP地址填入本字段

(Next)Server IP Address:客户端引导时需要的另一个服务器的IP地址

Gateway (Relay) IP Address: 网关(中继)IP地址,有DHCP 中继器在转发DHCP报文的时候填入

Server Name: Server名字,有64bytes,一般不使用,填充为0

Boot File name: boot file的路径,128bytes, 一般不使用,填充为0

Option: 选项,不定长度。

2 Option字段

3 DHCP Message Type(53)

在DHCP Option中,我们着重看下DHCP Message Type(53),DHCP Message Type标识DHCP消息类型,主要有一下类型:

在这里插入图片描述

DHCP中继

在这里插入图片描述

 DHCP客户使用IP广播来寻找同一网段上的DHCP服务器。当服务器和客户段处在不同网段,即被路由器分割开来时,路由器是不会转发这样广播包的。因此可能需要在每个网段上设置一个DHCP服务器,虽然DHCP只消耗很小的一部分资源的,但多个DHCP服务器,毕竟要带来管理上的不方便。DHCP中继的使用使得一个DHCP服务器同时为多个网段服务成为可能。

 简单来说,DHCP中继就是帮DHCP客户端分配IP。比如百说有多个网络A,B,C,现在有一台DHCP服务器,在A网络里,由于DHCP获取IP是广播式,若度是B和C网络里的客户机要获取IP,所以B和C的DHCP请求问发不到A网络中的DHCP服务器,此时就要在B和C网络里加一台中继服务器,让中继服务以单播的行式向A网络中的DHCP服务器请答求IP。当然,DHCP服务器上得有对应版A,B和C三个网络里的地址池。一般来说,中继都权配置在交换机上面,不需要单独地建立一台服务器。

 为了让路由器可以帮助转发广播请求数据包,使用ip help-address命令。通过使用该命令,路由器可以配置为接受广播请求,然后将其以单播方式转发个指定IP地址。缺省情况下ip help-address转发以下8种UDP服务:

1.Time2.Tacacs 3.DNS4.BOOTP/DHCP服务器5. BOOTP/DHCP客户6.TFTP7.NetBios名称服务8. NetBios数据报服务

 在DHCP广播情况下,客户在本地网段广播-个DHCP发现分组。网关获得这个分组, ex配置了帮助地址,就将DHCP分组转发到特定地址。

DCHP中继配置
第一步:查看设备是否支持IOS DHCPServer功能

 一般的Cisco路由 器或访问服务器,以及少部分安装有路由交换模块或多层交换功能卡的交换机都具有IOS DHCP Server功能。如果还没有确认你的设备是否具备这一功能,那么,你可以按如下方法在命令行界面(CLI) 下进行快速检测,步骤如下:

router>enable

Password:

router#conf t

router(config)#ip dhcp ?

如果出现的是下面的信息,那么很遗憾,设备不支持IOS DHCP Server功能: %Unrecognized command

否则,恭喜你,你的设置支持DHCP功能。

 第二步: DHCP服务器端配置(此处 用路由器来当DHCPserver.PC机上配置类似) :

route(config)#ip dhcp pool vlan10 //配置一个地址池 ,vlan10是 地址池的名称,

route(dhcp-config)#network 192.1 68.10.0255.255. 255.0 //动态分配的地址段

route(dhcp-config)#default-router192.1 68.10.254 //网关地址

route(dhcp-config)#dns-server X.X.X.X //为客户机配置DNS服务器

route(dhcp-config)#lease 1 //地址租用期为

route(dhcp-config)#exit

route(config)#ip dhcp excluded-address192.168.10.1 /该地址不被分配

route(config)#ip dhcp excluded-address192.1 68.10.254 //该地址不被分配

route(config)#ip dhcp pool vlan20 17百C直地址池vlan20,vlan30地址池配置 类似

route(dhcp-config)#network 192.1 68.20.0255.255.255. 0//动态分配的地址段

route(dhcp-config)#default-router192.1 68.20.254 //网关地址

route(dhcp-config)#dns-server X.X.X.X 1/为客户机配置DNS服务器

route(dhcp-config)#lease 1 //地址租用期为1天

route(dhcp-config)#exit

route(config)#ip dhcp excluded-address192.168.20.254 //该 地址不被分配。

 第三步:使用路由器做单臂路由时的DHCP配置:

int f0

no ip addressno shut

exit

int f0.10 //vlan10

ip address 192.168.10.254 255.255.255.0//vlan网关

ip help-address 192.168.10.1 //DHCP脂器地址

no shut

exit

int f0.20 /vlan20, 多个网段类似

ip address 192.168.20.254 //vlan网关

ip help-address 192.168.10.1 //以单播的形式发往该DHCP服务器地址

no shut

exit

 使用多层交换机的DHCP配置int vlan 10

ip address 192.168.10.254 255.255.255.0//vlan10网关

ip help-address 192.168.10.1 //DHCP服务器地址

no shut

exit

int vlan 20

ip address 192.1 68.20.254 255.255.25//vlan10网关

ip help-address 192.168.10.1 //DHCP服务器地址

no shut

exit

为了更好地帮助大家学习并了解网络工程师,等相关内容,我特意将所有资料进行了系统整理,这里也免费分享大家。为大家整理的网工必备资料,包括:

华为认证思维导图(超细);

华为认证必备知识文档(pdf);

网工必备知识文档合集;

网工必备工具包;

网工必备实验包;

网工必备视频面试包。

……

资料有点多 我就不全列出来了,先写到这,如果有什么问题欢迎留言、私信交流讨论~

猜你喜欢

转载自blog.csdn.net/ZYJY2020/article/details/113344723
今日推荐