DHCP(一)-BOOTP引导程序协议小结

BOOTP:

       谈及DHCP不得不说下BOOTP,BOOTP是一种IP/UDP的引导协议,允许无盘客户端发现自己的IP地址,服务器主机的IP地址,并下载,加载指定文件名的文件(通常为操作系统镜像文件)到内存中。

       当一个系统使用BOOTP进行系统引导的时,引导请求通常采用链路层广播,IP报首部源IP为0.0.0.0 ,因为此时网卡还不知道自己的IP地址,目的地址为255.255.255.255,广播地址。

      BOOTP通常与TFTP(69端口)联合使用。

      BOOTP使用两个端口:67/68

              BOOTP服务端是67,客户端使用68.

 

BOOTP系统引导流程:

      1、无盘客户端发送BOOTP广播报文,携带自己的Mac地址

           0.0.0.0:68 ------------>255.255.255.255.67

      2、BOOTP服务端,收到该广播报文后,返回给客户端的报文中包含,客户端的IP地址,服务端的IP地址,网关的IP地址,引导文件路径以及文件名。

      3、BOOTP客户端收到服务端返回的报文后,向网络中发送3个ARP报文,来查看网络是否有设备用服务端分配给自己的IP地址。

      4、确认无设备使用后自己使用该IP地址

      5、再次发送2次BOOTP广播报文,与1不一样的是,本次发送的广播报文的IP首部是源IP地址是自己的IP地址,收到同一个BOOTP服务端相同的应答。

      6、以BOOTP服务端IP地址为ARP地址,发送一个ARP请求,获取到了BOOPT 服务端的响应。

      7、发送一个TFTP请求报文,请求读取引导文件。之后经过有限个TFTP分组和确认后,客户端获取到完整的引导文件,并加载到内存中。

 

BOOTP穿越路由器:

      BOOTP中继代理在67端口收到报文后,做如下处理:

      1、将自己的IP地址填入到BOOTP请求报文中的“网关IP地址”字段中

      2、将BOOTP请求报文以单播的形式发送到BOOTP服务端

     BOOTP服务端收到BOOTP请求后,将BOOTP应答报文发送给BOOTP中继代理。中继代理收到应答后将报文返回给BOOTP客户端。

 

 

你可能感兴趣的:(DHCP BOOTP)