目录

  • 1. 引言
  • 2. BOOTP的分组格式
    • 2.1 BOOTP请求和应答的格式:
    • 2.2 端口号
  • 3. BOOTP服务器的设计
  • 4. BOOTP穿越路由器
  • 5. 特定厂商信息
  • 6. 小结

1. 引言

无盘系统进行系统引导时使用RARP获取IP地址的缺点:1)IP地址是返回的唯一结果;2)RARP使用链路层广播,请求不会被路由器转发,故每个网络都要设置一个RARP服务器。
因此提出了另一种用于无盘系统进行系统引导的方法——引导程序协议BOOTP,使用UDP,且常与TFTP协同工作。

2. BOOTP的分组格式

2.1 BOOTP请求和应答的格式:

系统引导时,引导请求一般采用链路层广播,IP首部目的IP地址为255.255.255.255(受限的广播),源IP地址为0.0.0.0,因为此时客户不知道自身的IP地址。

2.2 端口号

BOOTP服务器为67,客户为68

3. BOOTP服务器的设计

服务器从端口67读取UDP数据报,必须读取类型字段为 “RARP请求” 的以太网帧。BOOTP协议将客户的硬件地址存入BOOTP分组,使得服务器很容易获取客户的硬件地址。
服务器将响应送回BOOTP客户问题的解决办法:

  1. 服务器发送ioctl(2)请求给内核为客户在ARP高速缓存中设置一个条目
  2. 服务器广播这个BOOTP应答

4. BOOTP穿越路由器

若路由器支持BOOTP协议,那么BOOTP就能由路由器转发,该功能主要用于无盘路由器。
路由器收到BOOTP请求,中继代理将它的IP地址填入收到BOOTP请求中的 “网关IP地址字段”,然后将该请求发到真正的BOOTP服务器并将跳数字段加1(跳数加到3就可以丢弃了)。真正的BOOTP服务器收到请求后产生BOOTP应答,并将其发回中继代理而不是请求的客户。

5. 特定厂商信息

6. 小结

无盘系统在只读存储器中系统引导需要的协议:BOOTP、TFTP、UDP、IP和一个局域网的驱动程序

BOOTP相较于RARP用于引导无盘系统获取IP地址的优点:

  1. RARP只返回IP地址,而BOOTP返回路由器的IP地址、客户的子网掩码以及名字服务器的IP地址。
  2. RARP请求不会被路由器转发,但路由器可以作为真正BOOTP服务器的代理,向不同网络中的BOOTP服务器转发客户的BOOTP请求。

【TCP-IP详解卷一:协议】ch16 BOOTP:引导程序协议相关推荐

  1. TCP/IP详解卷一读书笔记一

    TCP/IP详解卷一:第一章 一.分层   1.网络协议通常分不同层次进行开发,每一层分别负责不同的通信功能.   疑点 介质访问控制方法   多个主机需要通过一条"共享介质"发送 ...

  2. 《TCP/IP详解卷一》读书笔记九:IGMP和MLD

    由于工作需要和知识储备,重新系统地学习网络方面的知识,先从<TCP/IP详解卷一>开始,对看书的大体内容进行简单整理,在这里进行记录.记录只是对知识的整理过程,并不追求面面俱到. 概念 I ...

  3. 《TCP/IP详解卷一》学习笔记

    <TCP/IP详解卷一>学习笔记 第1章 概述 第3章 IP:网际协议 第6章 ICMP:internet控制报文协议 第7/8章 Ping/Traceroute程序 第9/10章 IP路 ...

  4. 《TCP/IP详解卷一:协议》 概述

    分层 TCP/IP协议族是一组不同层次上的多个协议的组合.TCP/IP通常被认为是一个四层次协议系统. 链路层(数据链路层或网络接口层):通常包括操作系统中的设备驱动程序和计算机中对应的网络接口卡.用 ...

  5. 秃头整理:TCP/IP 详解卷一 笔记--完结撒花

    目录 数据链路层 以太网和IEEE 802封装 环回口/loopback 最大传输单元 MTU 路径MTU 几个基本概念 ip 协议 路由选择 ARP和RARP(地址解析) ARP 地址解析协议 RA ...

  6. 『TCP/IP详解——卷一:协议』读书笔记——03

    2013-08-17 17:31:49 1.7 分用 分用(Demultiplexing):这是一个过程--当目的主机收到一个以太网数据帧时,数据就开始从协议栈中由底向上升,同时去掉各层协议上的报文首 ...

  7. 《TCP/IP详解 卷一》读书笔记-----广播多播IGMP

    1.广播和多播都只适用于UDP,因为TCP是面向连接的,需要将两台主机的两个进程绑定在一起,即IP地址和端口对 2.通常,网卡能看到网络中的每一个数据帧,但是往往它只接受目的地址与自己MAC地址相同的 ...

  8. TCP/IP详解卷一02

    1. 链路层的目的: 1.1 为IP模块发送IP数据报和接收IP数据报: 1.2 为ARP模块发送ARP请求和接收ARP应答 1.3为RARP模块发送RARP请求和接收RARP应答 2.以太网(主要局 ...

  9. tcp/ip详解卷一总结

    TCP/IP与OSI最大的不同在于OSI是一个理论上的网络通信模型,而TCP/IP则是实际运行的网络协议. 通过路由器连接的两个网络 TCP/IP协议族不同层次的协议 五类互联网地址 数据进入协议栈时 ...

  10. TCP/IP详解卷一之广播和本地组播(IGMP和MLD)

    1 引言 -广播和组播为应用程序提供了两种服务: · 数据分组交付至多个目的地: · 通过客户端请求/发现服务器,如DHCP. -广播比较简单,但开销更高:组播比较复杂,但效率更高. -IPv4支持广 ...

最新文章

  1. Editplus的扩展程序的删除
  2. BV-Person: A Large-scale Dataset for Bird-view Person Re-identification
  3. Numpy_构建列向量
  4. (DFS)求出n个数中选择m个数的所有可能
  5. oracle能否生成mdb,oracle怎么导入.mdb文件
  6. MySQL查看状态及简单优化
  7. 在 Kubernetes 集群中使用 MetalLB 作为 LoadBalancer(下)
  8. Codeforces Round #114 (Div. 2)
  9. Android权限管理
  10. 金山毒霸遭国际评测组织除名
  11. Excel 如何锁定表头
  12. HTML5 学习准备
  13. 关于B树的思考:m阶B树的非根非叶节点为什么要至少为ceil(m/2)个孩子? c/c++描述
  14. matlab spline三次样条插值x,Spline(三次样条插值)
  15. 计算机组成原理相关知识重要吗?
  16. git pull 时出现:There is no tracking information for the current branch. Please specify which branch...
  17. jeecgboot初学习疑问与总结--2021-05-11
  18. Docker之Docker概述
  19. 插入数据报错:ISAM error:no free disk space
  20. 〖全域运营实战白宝书 - 运营角色认知篇②〗- 什么是运营?

热门文章

  1. 《名人传》:走进名人的人生,感悟名人们的优秀品质
  2. 企业经营12法的领悟
  3. 利尔达与紫光展锐、中国电信等行业伙伴共筑NB-IoT安全生态
  4. 提取文本中的汉字字符串
  5. WebAssembly的基础使用方法
  6. 数据库恢复(database restore)之兵不血刃——半小时恢复客户数据库
  7. jsplumb当浏览器窗口大小变化时,自适应(重新绘制端点和连线)
  8. 【HNUMSC】C语言第一讲
  9. 额温枪、耳温枪设计方案
  10. 雅可比法实验报告matlab,数学建模实验报告范文 数学建模的实验报告