加载中…
个人资料
Cest-La-Vie
Cest-La-Vie
  • 博客等级:
  • 博客积分:0
  • 博客访问:101,849
  • 关注人气:12
  • 获赠金笔:0支
  • 赠出金笔:0支
  • 荣誉徽章:
相关博文
推荐博文
谁看过这篇博文
加载中…
正文 字体大小:

DHCP和RARP的区别

(2013-01-04 14:49:12)
标签:

rarp

杂谈

分类: 网络技术

RARP在功能上有点类似于DHCP协议,确切的说DHCP是BOOTP协议的升级,而BOOTP在某种意义上又是RARP协议的升级。BOOTP和RARP的区别在于RARP是在数据链路层实现的,而BOOTP实在应用层实现的,作为BOOTP的升级版DHCP也是在应用层实现的。这种实现层面的差别也从RARP和BOOTP/DHCP的报文封装格式的差别上体现出来了,RARP直接封装在以太网帧中,协议类型置为0x0800以标识这个报文是ARP/RARP报文,BOOTP/DHCP报文是直接封装在UDP报文中,作为UDP的数据段出现的。

 

从功能上说,RARP只能实现简单的从MAC地址到IP地址的查询工作,RARP server上的MAC地址和IP地址是必须事先静态配置好的。但DHCP却可以实现除静态分配外的动态IP地址分配以及IP地址租期管理等等相对复杂的功能。

 

RARP是早期提供的通过硬件地址获取ip的解决方案,但它有自己的局限性,比如RARP客户与RARP服务器不在同一网段,中间有路由器等设备连接,这时候利用RARP就显得无能为力,因为RARP请求报文不能通过路由器,BOOTP/DHCP提供了很好的解决方法。 

 

RARP、BOOT和DHCP都是动态学习IP地址的协议。起初,客户端主机要发送一个广播以启动发现进程,有一台专门的服务器负责监听这些请求并提供IP地址给客户端主机。

RARP使用的是和ARP相同的消息,只不过它的消息中列出的目标MAC地址是其自己的MAC地址,而目标IP地址是0.0.0.0。预先配置好的RARP服务器(必须处于客户端同一子网中)接收请求并进行查询。如果目标MAC地址的匹配到,RARP服务器就发送ARP响应(包含配置的IP地址在其源IP地址字段中)

BOOTP可以提升RARP的地址分配范围。它使用的是完全不同的消息集(在RFC 951中定义),其命令封装在IP和UDP包头中。只要路由器配置好了,BOOTP消息包可以转发到其它子网。此外,BOOTP还支持其他信息(如子网掩码、默认网关等)的分配。不过,BOOTP仍然没有解决RARP的配置负担,它还是需要为每个客户端定义MAC地址和IP地址的映射。

DHCP大大减轻了配置工作,因为它是动态分配的。在DHCP中,不需要预先配置MAC地址,你只需要配置一个地址池,DHCP会动态地在地址池中选择地址进行分配。在路由器上配置ip helper-address dhcp_server_address可以跨子网使用DHCP协议(DHCP中继代理)。另一种方法是将路由器配置为DHCP服务器,其步骤如下:

1)配置一个DHCP池

2)配置路由器在DHCP池中排除自身地址(ip dhcp excluded-address

3)屏蔽DHCP冲突日志(no ip dhcp conflict-logging)或配置一个DHCP数据库代理(ip dhcp database

 

RARP、BOOTP和DHCP的比较

特性

RARP

BOOTP

DHCP

依赖于服务器来分配IP地址

消息封装在IP和UDP中,所以它们可以转发到远端服务器

客户端可发现自己的掩码、网关、DNS和下载服务器

由IP地址池动态分配地址,而不需要知道客户端的MAC地址

允许IP地址的临时租用

包含注册客户端主机的FQDN(用DNS)的扩展功能

 

 

0

阅读 评论 收藏 转载 喜欢 打印举报/Report
  • 评论加载中,请稍候...
发评论

    发评论

    以上网友发言只代表其个人观点,不代表新浪网的观点或立场。

      

    新浪BLOG意见反馈留言板 电话:4000520066 提示音后按1键(按当地市话标准计费) 欢迎批评指正

    新浪简介 | About Sina | 广告服务 | 联系我们 | 招聘信息 | 网站律师 | SINA English | 会员注册 | 产品答疑

    新浪公司 版权所有