DHCP和(DHCP中继)
Posted SpaceX7_s
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了DHCP和(DHCP中继)相关的知识,希望对你有一定的参考价值。
什么是DHCP
是一种能为网络中的主机提供TCP/IP配置的应用层协议,DHCP基于c/s模式,客户端能够自动从服务器获取IP以及其他参数,从而降低手动配置的出错率
作用:
● 无需手动为客户端配置IP以及其他参数,简化客户端网络配置,降低维护成本
● 所有IP地址以及其他相关参数由DHCP服务器统一管理,统一分配
● 通过IP地址租期管理,提高IP地址的使用率
● 通过DCHP中继,可以实现不同子网中的客户端与DHCP服务器的协议报文交互
DHCP提供了三种地址分配方式
- 手动分配,DHCP服务器给主机分配一个永久的ip地址
- 动态分配 , DHCP服务器给主机动态分配一个IP地址,这个ip地址有使用时间限制 一般是24小时
- 手工配置, 管理员定义某个主机的IP地址,DHCP服务器将管理第义的IP地址分配给该主机
UDP:封装,服务器=67,客户端=68
1.DHCP Discover数据包
(1)Client端使用IP地址0.0.0.0发送了一个广播包,可以看到此时的目的IP为255.255.255.255。Client想通过这个数据包发现可以给它提供服务的DHCP服务器
(2)DHCP属于应用层协议,它在传输层使用UDP协议,目的端口是67
2.DHCP Offer包
当DHCP服务器收到一条DHCP Discover数据包时,用一个DHCP Offerr包给予客户端响应,此时任然采用广播的方式
(1)DHCP服务器仍然使用广播地址作为目的地址,因为此时请求分配IP的Client并没有自己ip,而可能有多个Client在使用0.0.0.0这个IP作为源IP向DHCP服务器发出IP分配请求,DHCP也不能使用0.0.0.0这个IP作为目的IP地址,于是依然采用广播的方式,告诉正在请求的Client们,这是一台可以使用的DHCP服务器。
(2)DHCP服务器提供了一个可用的IP,在数据包的Your (client) IP Address字段可以看到DHCP服务器提供的可用IP。
3.DHCP Request包
当Client收到了DHCP Offer包以后(如果有多个可用的DHCP服务器,那么可能会收到多个DHCP Offer包),确认有可以和它交互的DHCP服务器存在,于是Client发送Request数据包,请求分配IP。 此时的源IP和目的IP依然是0.0.0.0和255.255.255.255。
4.DHCP ACK包
服务器用DHCP ACK包对DHCP请求进行响应。
在数据包中包含以下信息,表示将这些资源信息分配给Client.
Your(client) IP address:分配给Client的可用IP。
后面有许多项option信息,前两项是DHCP服务器发送的消息类型(ACK)和服务器的身份标识,后面几项是:
Subnet Mask:Client端分配到的IP的子网掩码;
Router:路由器
Domain Name Server:DNS,域名服务器
Domain Name:域名
IP Address Lease Time:IP租用期。
DHCP的协议报文(工作原理)
![在这里插入图片描述](https://img-blog.csdnimg.cn/38aac333afdb4decaf943f0b76f3d9ed.png
当同一个广播域中有两个服务器时,主机最先接收到哪个DHCP的 offer就使用谁的ip
默认的租期是24小时,如果电脑一直连网那么就需要更新租期当租期达到50%的时候,向服务器发送更新租期的request,如果没有响应87.5%的时候就采用广播的形式发送Request更新租约,因为如果当前广播域内有两台服务器,第一台出错可以尝试向第二台服务器请求更新租约
DHCP中继技术
由于在IP地址动态获取的过程中,客户端采用广播方式发送请求报文,而广播报文不能跨越网段传送,因此DHCP只适用于DHCP客户端和服务器处于同一个网段内的情况。当多个网段都需要进行动态IP地址分配时,就需要在所有网段上都设置一个DHCP服务器,这显然是不易管理和维护的。
DHCP中继可以使客户端通过它与其他网段的DHCP服务器通信,最终获取IP地址,解决了DHCP客户端不能跨网段向服务器动态获取IP地址的问题。这样,在多个不同网络上的DHCP客户端可以使用同一个DHCP服务器,即节省了成本,又便于进行集中管理和维护。路由器或三层交换机都可以充当DHCP中继设备。
配置中继需要在离客户端最近的三层交换机中的每个vlan里配置,中继的ip是目标服务器的ip
以上是关于DHCP和(DHCP中继)的主要内容,如果未能解决你的问题,请参考以下文章