BOOTP(Bootstrap Protocol,引导程序协议)是一种引导协议,基于IP/UDP协议,也称自举协议,是DHCP协议的前身。BOOTP用于无盘工作站的局域网中,可以让无盘工作站从一个中心服务器上获得IP地址。通过BOOTP协议可以为局域网中的无盘工作站分配动态IP地址,这样就不需要管理员去为每个用户去设置静态IP地址。
BOOTP协议的要点
1.使用了一个单独的包交换(信息)。使用超时机制直到收到应答。双向使用相同的包字段结构。使用(最大可能长度的)固定长度的字段来简化结构定义和分析。
2.一个'opcode'字段包含两个值。客户端广播一个'引导请求(bootrequest)'包。服务器应答一个'引导应答(bootreply)'包。'bootrequest'包含客户端的硬件地址,如果知道,还包含它的IP地址。
3.请求可以包含客户端指定的响应服务器的名称。这样客户端可以强制从一个指定的主机引导。(如果一个相同的引导文件存在多种版本或服务器在一个远距离的网络/域。)客户端不必处理名称/域服务,这个功能推到了BOOTP服务器。
4.请求可以包含'通用(generic)'引导文件名。例如'unix'或'ethertip'。但服务器发送引导应答时,它使用对应的引导文件的确切的路径名称来取代这个字段。服务器查询客户端的地址和请求文件名相关的数据库,以使用客户端自定义的特定引导文件确定这个文件名称。
如果引导请求文件名是空字符串,服务器返回一个带有客户端加载的默认文件的文件名字段。
5.客户端不知道它们的IP地址的情况下,服务器必须有一个硬件地址和IP地址对应的数据库。这个客户端IP地址被放在引导应答的(对应)字段中。
6.某些网络拓朴(如斯坦福的网络)可能在一个物理网上没有一个直接可以访问的TFTP服务器(例如在某些网上的所有的网关和主机都可能是无盘的)。
BOOTP允许客户端通过使用相邻的网关从几跳外的服务器上引导。请看下面'通过网关引导'的章节。这部分协议不需求客户端部分做特定的动作。实现是可选的,网关和服务器需要一些额外的代码。
参考资料:
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)