DHCP与DHCPv6讲解

目录

DHCP

DHCP端口号

DHCP报文

DHCP工作过程

DHCP租期续租

DHCPv6

DHCPv6端口号

DHCPv6报文

DHCPv6工作原理


DHCP

DHCP端口号

DHCP主要有两个端口号,分别是UDP67和UDP68

DHCP客户端向DHCP服务器发送报文时采用68端口号,DHCP服务器向DHCP客户端发送报文时采用67端口号

DHCP报文

Discover 用来寻找DHCP服务器(广播)

Offer      服务器用来响应discover报文(携带了各种配置信息)(广播/单播)

Request 客户端初始化时用来回应服务器发送的Offer报文(广播);客户端重启时用来确认先前被分配的IP地址等配置信息(广播);客户端进行IP地址续约时发送(广播/单播)

Ack        服务器对Request报文的确认响应报文(客户端收到此报文后,才真正获得了IP地址和相关的配置信息)(广播/单播)

Decline  客户端发现服务器分配的地址冲突,发送此报文重新申请地址(单播)

Release  客户端主动释放服务器分配的IP地址(单播)

Inform   客户端获取IP地址后向服务器请求其他配置信息(网关地址、DNS服务器等信息)(单播)

Nak        服务器对客户端Request报文的拒绝响应报文(单播)

Relay     DHCP中继设备向服务器发送的报文(单播)

客户端发送报文:Discover、Request、Deline、Release、Inform

服务器发送报文:Offer、Ack、Nak

DHCP工作过程

DHCP与DHCPv6讲解_第1张图片

1、客户端发送一个广播discover报文

2、Server收到报文后,会向客户端发送offer报文(携带为客户端分配的地址)

3、客户端收到offer报文后,会服务器发送广播request报文

4、Server收到报文之后会回复一条ACK进行确认

5、客户端收到ack之后会执行DAD(重复地址检测),如果冲突了会给服务器发送decline报文,告知这个地址无法使用,然后重新获取IP地址

为什么DHCP Request报文也是广播的

当网络中有多台server服务器,就会分配多个offer;客户端会使用第一个收到的offer报文中携带的地址作为本机地址;此时发送广播request报文,即可以告诉offer报文所对应DHCP服务器我使用了哪个地址,也可以告诉其它服务器将offer里的地址回收,可以分配给其他主机了

服务器发送Offer和Ack有单播和广播两种情况,具体如何发送?

这取决于客户端发送的Discover和Request报文中携带的Boot Flags字段(大多数情况下都是单播)

如果Boot Flags = 0x8000 ,则服务器回应时发广播

 如果Boot Flags = 0x0000 ,则服务器回应时发单播

DHCP租期续租

1、客户端发现租期只有一半时,发送单播Request报文(如果得不到服务器回应,还是会继续使用此地址)

2、客户端发现租期到87.5%时,发送广播Request报文(如果服务器还得不到回应,当租期到期后会发送Release释放此地址,重新发送Discover报文申请地址

注意:当服务器发生Request里的地址没有租约记录时,会发送nak报文进行回收


DHCPv6

DHCPv6没有广播报文,通过组播报文来实现,用到的组播地址有两个

FF02::1:2:所有DHCPv6服务器和中继代理的组播地址,用于客户端和相邻的服务器及中继代理之间通信

FF05::1:3:所有DHCPv6服务器组播地址,用于中继代理和服务器之间的通信

DHCPv6端口号

DHCPv6报文承载在UDPv6上

客户端侦听的UDP目的端口号是546;服务器、中继代理侦听的UDP端口号是547

即客户端发送时端口号为547,服务器发送时端口号为546

DHCPv6报文

Solicit           同dhcpv4 的discover

Advertise      同dhcpv4 的offer

Request        同dhcpv4 的request(请求IPv6地址)

Reply            同dhcpv4 的 ack/nck

Renew           同dhcpv4 的request(进行续约-单播)

Rebind          同dhcpv4 的request(Renew无应答,广播向任意服务器请求延长此地址)

Release         同dhcpv4 的release

Decline         同dhcpv4 的decline

Informmation-Request            同dhcpv4 inform

Confirm        客户端向任意可达的v6服务器发送此报文检查自己目前获得的IPv6地址是否适用与它所连接的链路

Reconfigure  服务器向客户端发送此报文,提示客户服务器上存在新的网络配置i休尼希

Relay-Forw   中继代理向服务器转发客户端的请求报文

Relay-Repl   服务器向中继代理发送报文(携带了转发给客户端的报文)

DHCPv6工作原理

四步获取地址

DHCP与DHCPv6讲解_第2张图片

两步快速获取地址

DHCP与DHCPv6讲解_第3张图片

1、DHCPv6客户端在发送的Solicit报文中携带Rapid Commit选项,标识客户端希望服务器能够快速为其分配地址和网络配置参数。

2、DHCPv6服务器接收到Solicit报文后,将进行如下处理:

        如果DHCPv6服务器支持快速分配地址,则直接返回Reply报文,为客户端分配IPv6地址和其他网络配置参数,Reply报文中也携带Rapid Commit选项。

        如果DHCPv6服务器不支持快速分配过程,则采用四步交互方式为客户端分配IPv6地址/前缀和其他网络配置参数。

无状态工作过程

DHCP与DHCPv6讲解_第4张图片

1、DHCPv6客户端以组播方式向DHCPv6服务器发送Information-Request报文,该报文中携带Option Request选项,指定DHCPv6客户端需要从DHCPv6服务器获取的配置参数。

2、DHCPv6服务器收到Information-Request报文后,为DHCPv6客户端分配网络配置参数,并单播发送Reply报文,将网络配置参数返回给DHCPv6客户端。DHCPv6客户端根据收到Reply报文提供的参数完成DHCPv6客户端无状态配置。

你可能感兴趣的:(路由交换协议理论讲解,IPv6技术,网络,运维,华为)