
第10章引导协议与动态主机配置协议 引导协议BOOTP(BOOTstrap Protocol)是TCPP协议族的应用层协 议,它的主要作用是使无盘站点从服务器 上获得引导信息。 动态主机配置协议DHCP(Dynamic Host Configuration Protocol)是在 BOOTP协议基础上发展起来的协议,它 使客户机能够在TCP/IP网络上获得相关 的配置信息
第10章 引导协议与动态主机配置协议 引导协议BOOTP(BOOTstrap Protocol)是TCP/IP协议族的应用层协 议,它的主要作用是使无盘站点从服务器 上获得引导信息。 动态主机配置协议DHCP(Dynamic Host Configuration Protocol)是在 BOOTP协议基础上发展起来的协议,它 使客户机能够在TCP/IP网络上获得相关 的配置信息

第10章引导协议与动态主机配置协议 10.1 BOOTP原理 10.2 BOOTP报文 10.3启动配置文件 10.4DHCP基本概念 10.5DHCP运行方式 10.6 DHCP/BOOTP中继代理
第10章 引导协议与动态主机配置协议 10.1 BOOTP原理 10.2 BOOTP 报文 10.3 启动配置文件 10.4 DHCP基本概念 10.5 DHCP运行方式 10.6 DHCP/BOOTP中继代理

10.1 BOOTP原理 。 引导协议BOOTP是针对网络上无盘节点 而设计的启动协议,无盘节点启动时它 需要从网上获得三种信息: -自己的P地址 -文件服务器的P地址 一可运行的初始内存印象(启动映象文件名) ·利用RARP只能获得自己的IP地址
10.1 BOOTP原理 • 引导协议BOOTP是针对网络上无盘节点 而设计的启动协议,无盘节点启动时它 需要从网上获得三种信息: –自己的IP地址 –文件服务器的IP地址 –可运行的初始内存印象(启动映象文件名) • 利用RARP只能获得自己的IP地址

·BOOTP协议工作过程: 1) 由ROM芯片中的BOOTP启动代码启动客 户机,此时客卢机还没有P地址,它便用有限 广播形式以0.0.0.0的源P地址向网经发出 B0OTP请求,这个请求中包含了客户机网卡 的MAC地址。 2)网络中运行BOOTP服务的服务器接收到 这个请求,根据请求中的AC地址EBOOTP 数据库中查找这个MAC的记录,如果没有此 MAC的记录则不响应这个请求,如果宥就将 南翼是盒清翼套红的P星的服雾蒸锅下地 址和启动映象文件名等信息。 3)客户机根据返回信息通过TFTP服务器下 载启动映象文件,并启动该文件
• BOOTP协议工作过程: 1)由ROM芯片中的BOOTP启动代码启动客 户机,此时客户机还没有IP地址,它便用有限 广播形式以0.0.0.0的源IP地址向网络中发出 BOOTP请求,这个请求中包含了客户机网卡 的MAC地址。 2)网络中运行BOOTP服务的服务器接收到 这个请求,根据请求中的MAC地址在BOOTP 数据库中查找这个MAC的记录,如果没有此 MAC的记录则不响应这个请求,如果有就将 有关信息发送回客户机。返回的响应中包含 的主要信息有客户机的IP地址、服务器的IP地 址和启动映象文件名等信息。 3)客户机根据返回信息通过TFTP服务器下 载启动映象文件,并启动该文件

被动打开 ←67 服务器 UDP 客户 请求 68H 67 服务器 UDP UDP 应答 客户 68 67 服务器 UDP UDP
客户 68 客户 68 67 服务器 67 服务器 请求 应答 UDP UDP UDP UDP 67 服务器 UDP 被动打开

BOOTP协议的实现要点如下: 1)使用一个单独的包交换信息; 使用超时重发机制,直到发送方收到应答 信息为止。 请求和应答使用相同的包字段结构格式; 使用(最大可能长度的)固定长度的字段, 以简化结构定义和分析的需要。 2)客户端广播引导请求(boot request)包, 其包含客户端的硬件地址,如果知道的话,还 包含它的1P地址。服务器单播引导应答boot reply)包
BOOTP协议的实现要点如下: 1)使用一个单独的包交换信息; 使用超时重发机制,直到发送方收到应答 信息为止。 请求和应答使用相同的包字段结构格式; 使用(最大可能长度的)固定长度的字段, 以简化结构定义和分析的需要。 2)客户端广播引导请求(boot request)包, 其包含客户端的硬件地址,如果知道的话,还 包含它的IP地址。服务器单播引导应答(boot reply)包

3)请求可以包含客户端指定的响应服务器的名称。 这样客户端可以强制从一个指定的主机引导。如果 一个相同的引导文件存在多种版本或服务器属于一 个远距离的网络域,客户端不必处理名称域服务, 而是由BOOTP服务器实现这种情况下的相应功能。 4)请求可以包含通用(generic)引导文件名。例如 ‘uniⅸ'。但服务器发送引导应答时,它使用对应的 引导文件的确切路径名称来取代这个字段。 5)服务器必须有一个硬件地址和P地址对应的数据 库。此类客户端P地址被放在引导应答的对应字段 中。 6)某些网络拓扑可能在一个物理网上没有一个直接 可以访问的TFTP服务器,BOOTP允许客户端通过 使用相邻的网关从几跳外的服务器上引导
3)请求可以包含客户端指定的响应服务器的名称。 这样客户端可以强制从一个指定的主机引导。如果 一个相同的引导文件存在多种版本或服务器属于一 个远距离的网络/域,客户端不必处理名称/域服务, 而是由BOOTP服务器实现这种情况下的相应功能。 4) 请求可以包含通用(generic)引导文件名。例如 ‘unix’ 。但服务器发送引导应答时,它使用对应的 引导文件的确切路径名称来取代这个字段。 5) 服务器必须有一个硬件地址和IP地址对应的数据 库。此类客户端IP地址被放在引导应答的对应字段 中。 6) 某些网络拓扑可能在一个物理网上没有一个直接 可以访问的TFTP服务器,BOOTP允许客户端通过 使用相邻的网关从几跳外的服务器上引导

·引导协议BOOTP的特点: 1)BOOTP协议基于UDP,不和硬件直接打交道, 易于实现且移植性好: 2)协议交换的信息量较大,可以充分利用硬件的 能力。 ·BOOTP与RARP的比较: -两者工作模式相同,均采用请求应答的客户服 务器方式,从而具有很大的灵活性。 -两者不同之处:BOOTP服务器是作为一个应用程 序而存在的,请求应答报文在同一个P网络内实 现,易于修改和移植。而RARP服务器存在于内 核中,请求应答报文在同一个物理网络内实现, 修改和移植都很困难。 返回
• 引导协议BOOTP的特点: 1)BOOTP协议基于UDP,不和硬件直接打交道, 易于实现且移植性好; 2)协议交换的信息量较大,可以充分利用硬件的 能力。 • BOOTP与RARP的比较: – 两者工作模式相同,均采用请求/应答的客户--服 务器方式,从而具有很大的灵活性。 – 两者不同之处:BOOTP服务器是作为一个应用程 序而存在的,请求/应答报文在同一个IP网络内实 现,易于修改和移植。而RARP服务器存在于内 核中,请求/应答报文在同一个物理网络内实现, 修改和移植都很困难。 返回

10.2 BOOTP报文 10.2.1B00TP报文格式 BOOTP协议有请求和应答两种报文,被封 装在UDP数据报中,如图10-1所示。 P数据报 DP数据报 P首部 UDP首部 BOOTP请求/应答 20字节 8字节 300字节 图10-1B00TP协议封装格式
10.2 BOOTP 报文 10.2.1 BOOTP 报文格式 BOOTP协议有请求和应答两种报文,被封 装在UDP数据报中,如图10-1所示

图10-2显示了长度为300字节的B00TP请求 和应答的格式。 0 8 16 24 31 操作码 硬件类型 硬件地址长度 跳数 (1请求,2=应答) (1=以太网) (以太网为6) 事务标识 秒数 未使用 客户P地址 你的IP地址 服务器P地址 300字节 网关P地址 客户主机硬件地址(16字节) 服务器主机名(64字节) 引导文件名(128字节) 特定厂商信息(64字节) 图10-2B00TP请求和应答格式
图10-2显示了长度为300字节的BOOTP请求 和应答的格式。 300字节 0 8 16 24 31