DHCP
DHCP
DHCP概述
DHCP(Dynamic Host Configuration Protocol,动态主机配置协议)是一个局域网的网络协议,使用UDP协议工作
1.给内部网络或网络服务供应商自动分配IP地址
2.给用户或者内部网络管理员作为对所有计算机作中央管理的手段
优点
减少管理员的工作量
避免输入错误的可能
避免IP地址冲突
当更改地址段时,不需要重新配置每个用户的IP地址
提高了IP地址的利用率
方便客户端的配置
应用
DHCP的典型应用模式如下:
在网络中架设一台专用的DHCP服务器,负责集中分配各种网络地址参数(主要包括IP地址、子网掩码、广播地址、默认网关地址、DNS服务器地址)
其他主机作为DHCP客户机,将网卡配置为自动获取地址,即可与DHCP服务器进行通信,完成自动配置过程
DHCP协议采用UDP作为传输协议,主机发送请求消息到DHCP服务器的67号端口,DHCP服务器回应应答消息给客户端的68号端口
DHCP有三种机制分配IP地址
1) 自动分配方式(Automatic Allocation),DHCP服务器为主机指定一个永久性的IP地址,一旦DHCP客户端第一次成功从DHCP服务器端租用到IP地址后,就可以永久性的使用该地址。
2) 动态分配方式(Dynamic Allocation),DHCP服务器给主机指定一个具有时间限制的IP地址,时间到期或主机明确表示放弃该地址时,该地址可以被其他主机使用。
3) 手工分配方式(Manual Allocation),客户端的IP地址是由网络管理员指定的,DHCP服务器只是将指定的IP地址告诉客户端主机。
三种地址分配方式中,只有动态分配可以重复使用客户端不再需要的地址。
工作流程
第一步:客户端在网络中搜索服务器
客户端通过广播发送DHCP Discover报文寻找服务器端
第二步:服务器向客户端响应服务
服务器端通过单播发送DHCP Offer
报文向客户端提供IP地址等网络信息,从IP地址池中挑选一个尚未分配的IP分配给客户端
第三步:客户端向服务器发出服务请求
如果有多台DHCP服务器向该客户端发来DHCP-offer报文,客户端只接受第一个收到的DHCP-offer报文并提取IP地址,然后客户端通过广播发送DHCP Request报文告知服务器端本地选择使用该IP地址。
第四步:服务器向客户端提供服务
服务器通过单播发送DHCP Ack报文告知客户端IP地址是合法可用的,并在选项字段中增加IP地址的使用租期信息
五:重新登陆
DHCP客户机每次重新登陆网络时,不需要再发送DHCP Discover信息,而是直接发送包含前一次所分配的IP地址的DHCP Requset请求消息
六:更新租约
当DHCP服务器向客户机出租的IP地址租期达到一半时,就需要更新租约,客户机直接向服务器发送DHCP Request包,要求更新现有的地址租约
地址续租问题
在使用租期超过50%时刻处,DHCP Client会以单播形式向DHCP Server发送DHCPRequest报文来续租IP地址。如果DHCP Client成功收到DHCP Server发送的DHCP ACK报文,则按相应时间延长IP地址租期;如果没有收到DHCP Server发送的DHCP ACK报文,则DHCP Client继续使用这个IP地址。
在使用租期超过87.5%时刻处,DHCP Client会以广播形式向DHCP Server发送DHCPRequest报文来续租IP地址。如果DHCP Client成功收到DHCP Server发送的DHCP ACK报文,则按相应时间延长IP地址租期;如果没有收到DHCP Server发送的DHCP ACK报文,则DHCP Client继续使用这个IP地址,直到IP地址使用租期到期时,DHCP Client才会向DHCP Server发送DHCP Release报文来释放这个IP地址,并开始新的IP地址申请过程。
DHCP协议报文类型
1.DHCP discover,此报文是客户机开始DHCP过程的第一个报文。
2.DHCP offer,此报文是服务器对DHCP discover报文的响应。
3.DHCP request,此报文是客户机对DHCP offer报文的响应,或者是客户机续约IP地址时发出的报文。
4.DHCP ack,服务器对客户机request报文的确认响应,客户机收到此报文后才真正的获取了IP地址和相关的配置。
5.DHCP decline,当客户机获取到IP地址后会发生一条arp请求到网络中,若收到了arp应答则表明此地址不可用,此时客户机会发送一条dhcp decline消息到服务器表明拒绝此IP地址。
6.DHCP nak,服务器对客户机DHCP request报文的拒绝响应报文,客户收到此报文后,一般会重新开始新的DHCP过程。
7.DHCP release,客户机主动释放服务器给分配的IP地址的报文,当服务器收到此报文后就可以收回这个IP地址,这个IP地址就可以再分配给其他的客户机。
DHCP中继
工作原理
当DHCP客户端启动并进行DHCP初始化时,它在本地网络广播配置请求报文。
如果本地网络存在DHCP服务器,则可以直接进行DHCP配置,不需要DHCP中继。
如果本地网络没有DHCP服务器,则与本网络相连的且带DHCP中继功能的网络设备收到该广播报文后,进行适当的处理并转发给指定的在其它网络上的DHCP服务器。
DHCP服务器根据客户端提供的信息进行相应的配置,并通过DHCP中继将配置信息发送给客户端,完成对客户端的动态配置。
DHCP配置命令
接口模式
接口地址池可动态分配IP地址,范围就是接口的IP地址所在的网段,且只在此接口下生效,当DHCP服务器收到DHCP客户端的请求报文后,DHCP服务器将会使用该接口的地址网段给客户端分配地址。
[R1]dhcp enable 系统模式开启DHCP功能
[R1]interface GigabitEthernet0/0/0 进入下行接口
[R1-GigabitEthernet0/0/0]dhcp select interface
基于接口配置DHCP
[R1-GigabitEthernet0/0/0]dhcp server lease day 7
配置基于接口的DHCP servser租期(默认租期为1天)
[R1-GigabitEthernet0/0/0]dhcp server excluded-ip-address 192.168.10.200 192.168.10.210
配置接口地址池中不参与自动分配的IP范围为192.168.10.200到192.168.10.210
[R1-GigabitEthernet0/0/0]dhcp server dns-list 8.8.8.8
给用户端自动分配DNS服务器地址
全局模式
在全局方式下,设置多个全局地址池,并存在定义的地址池网段与端口IP是同一网段的对应关系,即多个不同网段的地址池对应各自的端口,最终实现不同网段客户端自动获取相应地址。
[R1]dhcp enable 系统模式开启DHCP功能
[R1]ip pool 1 创建地址池名字
[R1-ip-pool-1]gateway-list 192.168.20.1
创建DHCP客户端的出口网关地址
[R1-ip-pool-1]network 192.168.20.0 mask 255.255.255.0
配置DHCP可分配地址网段,掩码也可用24表示
[R1-ip-pool-1]dns-list 114.114.114.114
配置DHCP分配DNS地址
[R1-ip-pool-1]excluded-ip-address 192.168.20.250 12.168.20.254
配置保留地址
[R1-ip-pool-1]static-bind ip-address 192.168.20.9 mac-address 5489-98c6-0cee
绑定IP
[R1-ip-pool-1]lease day 10 租期10天
[R1]int g0/0/0 进入下行接口
[R1-GigabitEthernet0/0/0]dhcp select global
配置DHCP为global全局模式,interface即接口模式
[Huawei]display ip pool 查看IP地址池信息
中继服务器
[R1]dhcp enable
[R1]interface GigabitEthernet 0/0/1 与客户端相连的接口
[R1-GigabitEthernet0/0/1]ip add 192.168.1.1 24
[R1-GigabitEthernet0/0/1]dhcp select relay 开启DHCP中继功能
[R1-GigabitEthernet0/0/1]dhcp relay server-ip 12.0.0.1
指向DHCP服务器的地址12.0.0.1请求DHCP服务
[R1]ip route-static 0.0.0.0 0.0.0.0 12.0.0.1
如果DHCP中继服务器与DHCP服务器跨网段则要配置静态或动态路由