(16)BOOTP:引导程序协议
一、简介
在进行系统引导时通过RARP来获得它自身的IP地址,这存在两个问题:(1)IP地址是返回的唯一结果;(2)既然RARP使用链路层广播,RARP请求就不会被路由器转发(迫使每个实际网络设置一个RARP服务器)。而BOOTP(引导程序协议)是一种用于无盘系统进行系统引导的替代方法。
二、BOOTP的分组格式
BOOTP请求和应答军备封装在UDP数据报中,如下所示:
BOOTP请求和应答格式如下:
详细介绍见书中的P163。
BOOTP有两个熟知的端口号:BOOTP服务器为67,BOOTP客户为68。选择两个端口而不是一个端口为BOOTP服务器用的原因是:服务器的应答可以进行广播。
三、BOOTP服务器的设计
BOOTP客户通常固化在无盘系统只读存储器中。
BOOTP服务器将从它的熟知端口67读取UDP数据报。BOOTP协议通过将客户的硬件地址放入BOOTP分组中,使得服务器很容易获取客户的硬件地址。
既然BOOTP用于系统引导过程,一个无盘系统需要下列协议才能在只读存储器中完成:BOOTP、TFTP、UDP、IP和一个局域网的驱动程序。