会自动分配IP地址的路由协议——DHCP
会⾃动分配IP地址的路由协议——DHCP
⼀、为什么使⽤DHCP?
我们都知道PC要想上⽹,那就需要在PC上配置IP地址。我们可以⼿动配置,但是如果我们要配置上百台,上千台,那样⼯作效率在这个⾼速发展的时代显得有点低了,那么我们就需要通过协议进⾏⾃动获取,也就是这篇博⽂说的DHCP协议。
⼆、什么是DHCP?
中⽂名字叫动态主机配置协议,是⼀种局域⽹的⽹络协议,指的是由服务器控制⼀段IP地址范围,客户机登录服务器时就可以⾃动获得服务器分配的IP地址和⼦⽹掩码。以上是百度的解释。通俗来说,就是通过这个协议我们可以从⼀段IP地址中⾃动获取IP地址以及⼦⽹掩码。
作⽤:⾃动分配IP地址新新魔塔2攻略
模型:基于C/S模型运⾏
封装:UDP封装
端⼝:
a、客户端是68号端⼝
b、服务端是67号端⼝
三、成为DHCP服务器的条件
想要成为DHCP服务器的设备,需要满⾜以下两个条件:
a、该设备必须拥有所要下放地址⼴播域内的直接接⼝或⽹卡
假如⼀场演讲,演说家要想表达⾃⼰的观点,那就得靠嘴说出来嘛,不可能⽤意识发射出去吧,不知道以后,反正现在是不能的了,⽽且还得在这个会场⾥演说才对咯,不可能说⼀个演说家去演唱会演说,开玩笑呢?
b、该设备接⼝或设备⽹卡必须已经拥有合法IP地址
就⽐如说⼀场演讲,肯定需要⼀个确实存在的演说家嘛,如果是空的,那还听个啥⼦?所以肯定要有确实存在且合法的IP地址,要是不存在的话,PC怎么知道是谁在放送IP地址,不合法的话,在局域⽹或者因特⽹中肯定是不可能被访问到的咯!
四、DHCP的报⽂包
a、DHCP发现包:discover(0x01)
作⽤:客户端查询有没有DHCP服务器
发送⽅:客户端(0.0.0.0,客户端的MAC地址)
接收⽅:服务端(255.255.255.255,FFFF-FFFF-FFFF-FFFF)
发送⽅式:通过⼴播⽅式
账号注册2.DHCP提供包:offer(0x02)
作⽤:服务端提供IP地址并且判断该IP地址有没有其他设备使⽤
发送⽅:服务端(服务的IP地址,服务端的MAC地址)
接收⽅:客户端(255.255.255.255,FFFF-FFFF-FFFF-FFFF)
发送⽅式:通过单播\⼴播⽅式
3.DHCP请求包:request(0x03)
作⽤:对offer报⽂确认,获取先进的IP地址,然后拒绝其他DHCP服务器IP地址分配
发送⽅:客户端(0.0.0.0,客户端的MAC地址)
接收⽅:服务端(255.255.255.255,FFFF-FFFF-FFFF-FFFF)
发送⽅式:通过⼴播⽅式
4.DHCP禁⽌包:decline(0x04)
作⽤:通知服务端禁⽌使⽤该IP地址
发送⽅:客户端(0.0.0.0,客户端的MAC地址)
接收⽅:服务端(服务的IP地址,服务端的MAC地址)
发送⽅式:通过单播\⼴播⽅式
5.DHCP确认包:ack(0x05)
作⽤:确认服务器的IP使⽤
发送⽅:服务端(服务的IP地址,服务端的MAC地址)
接收⽅:客户端(255.255.255.255,客户端的MAC地址)
发送⽅式:通过单播\⼴播⽅式
6.DHCP不确定包:NAK(0x06)
作⽤:服务端发送拒绝request响应报⽂,客户端重新开始新的DHCP获取
发送⽅:服务端(服务的IP地址,服务端的MAC地址)
接收⽅:客户端(255.255.255.255,客户端的MAC地址)
发送⽅式:通过⼴播⽅式
7.DHCP释放包:release(0x07)
作⽤:客户端发送想要主动释放客户端分配的IP地址
发送⽅:客户端(客户的IP地址,客户端的MAC地址)
接收⽅:服务端(服务的IP地址,服务端的MAC地址)
发送⽅式:通过单播⽅式
8.DHCP通知包:inform(0x08)
作⽤:为了从服务器处获取其他的⼀些⽹络配置信息
发送⽅:客户端(客户的IP地址,客户端的MAC地址)
接收⽅:服务端(服务的IP地址,服务端的MAC地址)
发送⽅式:通过单播⽅式
注意:上⾯的包,有些可能不⼀定对这是根据⾃⼰理解书写的,但是基本意思是差不多的
五、DHCP的⼯作原理
a、客户端通过⼴播的⽅式发出Discover报⽂,查询有没有DHCP服务器。
b、当域内的所有服务器都接收到客户端发送的Discover报⽂后,会及时响应并向客户端发送⼀个Offer报⽂, 在⾃⼰已分配的IP地址
中记录下来。
c、客户端只能接收第⼀个发送过来的Offer报⽂,其他的都将弃掉,同时以⼴播⽅式发送Request报⽂且报⽂中存在服务器的IP地址和
需要的IP地址。
d、服务器收到Request报⽂后,判断是否与⾃⼰发送的IP地址相同,相同的话,将给客户端发送ACK报⽂并加⼊IP地址使⽤租借信
息,否则清除相应IP地址分配记录。
e、当客户端接收到ACK报⽂后,检查分配的IP地址是否能够使⽤。如果可以使⽤,那么就根据IP地址使⽤租期⾃动启动续延过程,如
果不能使⽤,客户端将向服务端发出Decline报⽂,通知服务端这个IP地址不能使⽤,然后客户端继续a步骤重新开始申请过程。
f、客户端成功获取IP地址后,随时可以通过发送Release报⽂释放⾃⼰的IP地址,此时服务端江会收回相应的IP地址并重新分配。
六、DHCP的续租问题
当设备使⽤租期超过50%时,客户端会以单播形式向服务器发送Request报⽂来续租IP地址,如果客户端收到ACK报⽂,则按相应时间延长IP地址租期,如果没有收到ACK报⽂,则客户端继续使⽤这个IP
地址到租期为87.5%,在使⽤租期超过87.5%时,客户端会以⼴播形式向服务端发送Request报⽂来续租IP地址。如果客户端成功收到ACK报⽂,则按相应时间延长IP地址租期,如果没有收到ACK报⽂,则客户端继续使⽤这个IP地址,直到IP地址使⽤租期到期时,客户端才会向客户端发送Release报⽂来释放这个IP地址,并开始新的IP地址申请过程。
七、Cisco的配置
要想在Cisco路由器上配置DHCP服务,那么得有⼀个IP地址池,⽹关,DNS地址,举个例⼦说吧!假设有⼀个养鱼的⽼板(⽹关),他需要在⼀个⼀块地⽅养鱼,那么他需要有块鱼塘地(IP地址池),这些鱼要想买出去,就得通知市场(DNS),说:哦,我这⾥要买鱼。这样就可以在市场上买鱼了!
注意:⾸先DHCP得有出接⼝⽹关IP地址
DHCP 服务器端配置
创建并进⼊DHCP 池:(config)#ip dhcp pool+名字
定义下放地址范围:(dhcp-config)#network+IP段+⼦⽹掩码
定义默认⽹关:(dhcp-config)#default-router+⽹关IP
定义DNS地址:(dhcp-config)#dns-server+服务器IP+服务器IP(地区不同⽹关不同)
定义租约时间:(dhcp-config)#lease+天数(默认⼀天)+时+分钟
排除地址范围:(config)#ip dhcp excluded-address+IP地址
排除单个地址:(config)#ip dhcp excluded-address+IP地址
铁线莲的养殖方法和注意事项排除⼀段地址:(config)#ip dhcp excluded-address+起始地址+结束地址
⼋、DHCP攻击
a、修改MAC地址耗尽DHCP服务器IP池
独一无二的幽默网名1、原理
这种攻击的原理就是PC向DHCP服务器租借必须要到租借期限满为⽌,才能收回IP地址,所以我们可以通过修改MAC地址向DHCP服务器请求获取IP,当IP地址池耗尽的时候DHCP的IP地址池也就没有能⼒将IP发送给其他⽤户。
就⽐如说⼀个DHCP服务器可以租借254个IP地址,租借期限为10天,那么攻击者可以通过修改254次
⾃⼰主机的MAC地址去向DHCP服务器请求获取IP地址,由于这些DHCP的租借问题,这些IP地址必须要到租借期满后才能收回,所以导致DHCP服务器的IP池耗尽。
2、危害
a、⽤户获取不了IP地址
b、如果还有其他服务器⽤这个IP地址段,那么其他服务器就不能给这个局域⽹提供服务
b、通过硬件或软件伪装DHCP服务器
无法获取ip地址1、原理
原理就是使⽤了PC在选择DHCP服务器请求IP的时候,只使⽤第⼀个DHCP发来的提供包,那么我们就通过这个原理去新建⼀个DHCP服务器进⾏伪装,使得其他⽤户获取到的是⼀个攻击者提供的假的IP地址。
2、危害
a、想想如果IP地址分配者是攻击者,那么流量就会通过攻击者发送,这时候我们就可以监控到⽤户输出的流量,可以结合反弹bash进⾏攻击(这是个⼈猜想)
b、可以使得⽤户上不了⽹cf怎么进不去

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。