读书笔记五:TCP/IP详解之RARP逆地址解析协议
RARP的介绍
具有本地磁盘的系统引导时,一般是从磁盘上的配置文件中读取IP地址,而对于无盘机,则需要用RARP来获取IP地址。
已知mac地址,获取该物理地址的ip地址。无盘系统获取ip地址就是采用RARP协议。
无盘系统的RARP的实现为从接口卡上读取硬件地址,然后发送RARP请求,最后RARP服务器在应答中返回该地址对应的IP.
RARP的分组格式
RARP的分组格式与ARP分组基本一致,只是它的请求或应答的帧类型代码是0x8035,请求操作码是3,应答操作码是4。
其请求一般以广播方式传送,应答以单播方式传送。如果没有响应,则等待时间会倍增,达到阈值后又初始化。比如,5.34s,6.55s,8.97s,13.8s……间隔分别是1.21s,2.42s,4.83s……
RARP服务器
RARP服务器提供硬件地址到IP地址的映射,该映射包含在磁盘文件中,内核一般不读取磁盘文件,因此RARP服务器由用户进程来实现,而不能作为内核的TCP/IP来实现。
ARP服务器是内核的TCP/IP一部分.每台主机都可以充当ARP服务器应答ARP请求,而RARP需要专门的RARP服务器。虽然RARP的概念很简单,但是实现却比较复杂,而且其实现与系统相关,所以并不是所有的TCP/IP实现都提供RARP服务器。虽然发送方发出的是广播信息,RARP规定只有RARP服务器能产生应答。许多网络指定多个RARP服务器,这样做既是为了平衡负载也是为了作为出现问题时的备份。
在代码的世界尽情的翱翔吧!