特性 |
RARP |
BOOTP |
DHCP |
依赖于服务器来分配IP地址 |
是 |
是 |
是 |
消息封装在IP和UDP中,所以它们可以转发到远端服务器 |
否 |
是 |
是 |
客户端可发现自己的掩码、网关、DNS和下载服务器 |
否 |
是 |
是 |
由IP地址池动态分配地址,而不需要知道客户端的MAC地址 |
否 |
否 |
是 |
允许IP地址的临时租用 |
否 |
否 |
是 |
包含注册客户端主机的FQDN(用DNS)的扩展功能 |
否 |
否 |
是 |
CCIE学习(17)——ARP、代理ARP、反向ARP、BOOTP和DHCP
原创
©著作权归作者所有:来自51CTO博客作者riser的原创作品,请联系作者获取转载授权,否则将追究法律责任
●ARP、代理ARP、反向ARP、BOOTP和DHCP的共同点:让主机能够学习信息以成功地发送和接收IP包。ARP和代理ARP定义了一台主机学习其他主机MAC地址的方法,而RARP、BOOTP和DHCP则定义了主机如何发现其IP地址及其他相关信息的方法。
●ARP和代理ARP
ARP的基本工作流程:发出ARP请求,请求目标IP地址的MAC地址,然后通过查询,获得ARP响应,该响应包括了所请求的MAC地址。
代理ARP使用类似于ARP的消息,不过它所请求的实际不是在局部子网中的MAC地址。因为ARP请求只能在局部子网中广播,所以只有通过路由器才能找到目标主机,这时路由器相当于是一个ARP的代理,可以发送代理ARP响应(包含的是路由器端口的MAC地址)给请求主机。
●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的比较
提问和评论都可以,用心的回复会被更多人看到
评论
发布评论
相关文章