网络(6): DHCP原理与报文详解

一.DHCP请求流程与报文

局域网中主机经常移动,增减,需要对局域网中的主机进行ip地址分配管理

优点:动态获得地址 网络环境复杂 规模比较大

报文类型

主要功能

DHCP-DISCOVER

DHCP客户端广播发送的,用来查找网络中可用的DHCP服务器

DHCP-OFFER

DHCP服务器用来响应客户端的DHCP-DISCOVER请求,并为客户端指定相应配置参数

DHCP-REQUEST

DHCP客户端广播发送给DHCP服务器,用来请求配置参数或者续借租期

DHCP-ACK

DHCP服务器通知客户端可以使用分配的IP地址和配置参数

DHCP-NAK

DHCP服务器通知客户端地址请求不正确或者租期已过期  续租失败

DHCP-RELEASE

DHCP客户端主动向DHCP服务器发送,告知服务器该客户端不再需要分配的IP地址

DHCP-DECLINE

DHCP客户端发现地址冲突或由于其它原因导致地址不能使用,则发送DHCP-DECLINE报文,通知服务器所分配的IP地址不可用

DHCP-INFORM

DHCP客户端已经有IP地址,用它来向服务器请求其他的配置参数

报文详解

客户端采用 UDP 端口号:68;
服务器采用 UDP 端口号:67
各字段的解释如下:
op:dhcp 报文的操作类型,分为请求报文和响应报文,1 为请求报文;2 为
响应报文。
htype、hlen:dhcp 客户端的硬件地址类型及长度。
hops:dhcp 报文经过的 dhcp 中继的数目。dhcp 请求报文每经过一个 dhcp
中继,该字段就会增加 1。
xid:客户端发起一次请求时选择的随机数,用来标识一次地址请求过程。
ecs:dhcp 客户端开始 dhcp 请求后的时间。
flags:第一个比特为广播响应标识位,用来标识 dhcp 服务器响应报文是
采用单播还是广播发送。其余比特保留不用。
ciaddr:dhcp 客户端的 ip 地址。
yiaddr:dhcp 服务器分配给客户端的 ip 地址。
siaddr:dhcp 客户端获取 ip 地址等信息的服务器 ip 地址。
giaddr:dhcp 客户端发出请求报文后经过的第一个 dhcp 中继的 ip 地址。
chaddr:dhcp 客户端的硬件地址。
sname:dhcp 客户端获取 ip 地址等信息的服务器名称。
file:dhcp 服务器为 dhcp 客户端指定的启动配置文件名称。
option:可选变长选项字段,包含报文的类型、有效租期、dns(domain n
ame system,域名系统)服务器的 ip 地址、wins 服务器的 ip 地址等配置信息。

 DHCP  dicover 报文

 DHCP offer 报文

DHCP request 报文

DHCP ack 报文

 Dhcp  release 报文

Dhcp  续约

 

二.Dhcp  relay

 局域网内的客户端可以通过DHCP Relay与其他子网的DHCP服务器通信,最终取得合法的IP地址

三.问题

3.1 dhcp的 offer 报文中已经填充了server 分配给 client的ip地址。为什么client 还会再发一个 request 报文 ? 

因为discover广播出去可能又多个server回复offer报文,需要client确认使用哪个server提供的ip地址

猜你喜欢

转载自blog.csdn.net/qq_37674086/article/details/124478826
今日推荐