什么是BOOTP协议

BOOTP(Bootstrap Protocol,引导程序协议)是一种引导协议,基于IP/UDP协议,也称自举协议,是DHCP协议的前身

1、协议简述
BOOTP用于无盘工作站的局域网中,可以让无盘工作站从一个中心服务器上获得IP地址。通过BOOTP协议可以为局域网中的无盘工作站分配动态IP地址,这样就不需要管理员去为每个用户去设置静态IP地址。

BOOTP使用UDP报文传输,并使用保留端口号67(BOOTP服务器)和68(BOOTP客户端)工作。使用BOOTP协议的时候,一般包括Bootstrap Protocol Server(自举协议服务端)和Bootstrap Protocol Client(自举协议客户端)两部分。

2、BOOTP协议流程
BOOTP的一般工作流程就是BOOTP客户端和BOOTP服务器之间的交互,其流程如下:

  1. 由BOOTP启动代码来启动BOOTP客户端,这个时候BOOTP客户端还没有IP地址
  2. BOOTP客户端使用广播形式的IP地址255.255.255.255向网络中发出IP地址查询要求。
  3. 运行BOOTP协议的服务器接收到这个请求,会根据请求中提供的MAC地址找到BOOTP客户端,并发送一个含有IP地址、服务器IP地址、网关等信息的回应帧
  4. BOOTP客户端会根据该回应帧来获得自己的IP地址并通过专用文件服务器(如TFTP服务器)下载启动镜像文件,模拟成磁盘来完成启动。

我们熟知的DHCP协议是从BOOTP的基础上发展而来的,它们都是主机配置协议,都可以大大减少管理员的工作量。BOOTP可以看成是简单版的DHCP,是对主机的静态配置,而DHCP可以依据一些策略对主机进行动态配置。BOOTP用于无盘工作站的启动和配置,而DHCP更适用于客户端接入变化的网络,即客户端接入时间、接入地点不固定。