首页 >常见问题 >bootstrap是什么协议

bootstrap是什么协议

青灯夜游
青灯夜游原创
2021-12-28 14:38:282409浏览

bootstrap协议全称“Bootstrap Protocol”,中文意思为“引导协议”,是一种基于“UDP/IP”的协议,该协议主要用于客户机从服务器获得自己的IP地址,服务器的IP地址以及启动映象文件名。

bootstrap是什么协议

本教程操作环境:Windows7系统、DELL G3电脑

BOOTP:引导协议 (Bootstrap Protocol)

 引导协议(BOOTP)是一种基于 UDP/IP 的协议。这种协议允许正在启动的主机动态配置而无需用户监督。BOOTP 主要用于客户机从服务器获得自己的 IP 地址,服务器的 IP 地址以及启动映象文件名。其它一些配置信息,如本地子网掩码、本地时间偏移量、默认路由器地址和各种 Internet 服务器地址,都能与使用 BOOTP 协议的客户机交流。

BOOTP 使用两个不同的知名通讯端口 UDP67/68。UDP67 用于服务器,UDP68 用于 BOOTP 客户机。客户机启动时,本身还没有 IP 地址,这时 BOOTP 客户机就以广播的形式发出一个名为 BOOTREQUEST 的 IP 地址查询请求包,这个请求包中包含了客户机物理地址,还可能有一个 IP 地址,如果已有的话。客户使用地址 255.255.255.255 发送广播,这种特殊地址称为有限广播地址。然后客户机等待服务器的响应,如果在特定时间段内没有收到响应,客户机就重新发出请求。

通过引导答复(bootreply)包,服务器响应客户机请求。请求可以包含“通用”引导文件名,例如,unix 或 ethertip。但服务器发送引导应答包时,它使用对应的引导文件的确切的路径名称来取代这个字段。为了确定路径名,服务器会查询本身的的数据库。这个 数据库关联了客户机地址、请求文件名和为用户定制的特殊引导文件。如果请求(bootrequest)文件名是空,服务器就返回一个文件名字段用于表示客 户机需加载的默认文件。

在客户机 IP 地址不知道的情况下,服务器必须要有一个硬件地址和 IP 地址相对应的数据库。客户机 IP 地址也被放到“bootreply”的某一字段中。

BOOTP 和 RARP 类似,但 RARP 只运行于 LAN 网络的数据链路层;而基于 UDP/IP 的配置协议 BOOTP 则提供了更多配置方面的信息,它允许整个 IP 网络动态配置。总之,BOOTP 及其扩展成为动态主机配置协议(DHCP)的基础。

协议结构

8 16 24 32
Op Htype Hlen Hops
Xid
Secs Flags
Ciaddr
Yiaddr
Siaddr
Giaddr
Chaddr (16 bytes)
sname (64 bytes)
File (128 bytes)
Option (variable)
  • Op – 消息操作代码,可以是引导请求( BOOTREQUEST )也可以是引导答复( BOOTREPLY )
  • Htype – 硬件地址类型
  • Hlen – 硬件地址长度
  • Xid – 事务 ID.
  • Secs – 客户机开始地址请求或续约后消耗的时间(秒数)
  • Flags – 标记
  • Ciaddr – 客户机 IP 地址
  • Yiaddr – “你的”(客户机) IP 地址
  • Siaddr – 在 bootstrap 中下一台服务器可用服务器的 IP 地址
  • Giaddr – 通过代理启动时代理的 IP 地址
  • Chaddr – 客户机硬件地址
  • Sname – 其他可用服务器主机名称,空终止符
  • File – 引导文件名、空终止符; DHCPDISCOVER 包中的属名或者空值, DHCPOFFER 包中的完全合格目录路径名
  • Options – 可选参数字段

BOOTP 由 IETF(http://www.ietf.org)RFC 951和 RFC 1542定义

更多相关知识,请访问常见问题栏目!

以上是bootstrap是什么协议的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn