《移动互联网技术04-DHCP技术.pptx》由会员分享,可在线阅读,更多相关《移动互联网技术04-DHCP技术.pptx(29页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、DHCPDHCP协议协议协议协议学习目标学习目标学习目标学习目标l了了解解DHCP协协议议产产生生的的原原因因和和解解决决的问题的问题l理解理解DHCP协议的工作原理协议的工作原理l理解理解DHCP相关安全相关安全特性特性学习完本课程,您应该能够:学习完本课程,您应该能够:DHCPDHCP协议协议协议协议DHCP协议产生原因协议产生原因DHCP协议介绍协议介绍DHCP协议实现原理协议实现原理DHCP安全特性安全特性介绍介绍DHCPDHCP协议产生的原因协议产生的原因协议产生的原因协议产生的原因每个人都要我亲每个人都要我亲自去分配自去分配IPIP地址,地址,太烦了太烦了。小张,我小张,我需要固定
2、需要固定的的IP地址地址唉,我的地址唉,我的地址怎么又和别人怎么又和别人冲突了?冲突了?怎么办怎么办?使用使用DHCP协议就协议就OK了了DHCPDHCP协议协议协议协议DHCP协议产生原因协议产生原因DHCP协议介绍协议介绍DHCP协议实现原理协议实现原理DHCP安全特性介绍安全特性介绍DHCP配置及实验配置及实验DHCPDHCP协议介绍协议介绍协议介绍协议介绍lDHCP(Dynamic Host Configuration Protocol)协议是在Bootstrap Protocol(BOOTP)的基础上提出的,其作用是在TCP/IP网络中向Internet主机提供配置信息。其实现遵从R
3、FC2131、RFC2132。lDHCP采用Client/Server模式,由客户端向服务器提出配置申请(包括分配的IP地址、子网掩码、缺省网关等参数),服务器根据策略返回相应配置信息。DHCP报文采用UDP进行封装识别采用知名端口号:CLIENT使用68,SERVER使用67。DHCPDHCP协议特点协议特点协议特点协议特点l整个配置过程自动实现,Client端无需配置;l所有配置信息由DHCP Server统一管理,Server不仅能够为Client分配IP地址,还能够为Client指定其他信息;l通过IP地址租期管理,提高IP地址的使用效率;l采用广播方式实现报文交互,报文一般不能跨网段
4、,如果需要跨网段,需要使用DHCP RELAY技术实现。DHCPDHCP协议协议协议协议DHCP协议产生原因协议产生原因DHCP协议介绍协议介绍DHCP协议实现原理协议实现原理DHCP安全特性介绍安全特性介绍DHCP配置及实验配置及实验DHCPDHCP协议系统组成协议系统组成协议系统组成协议系统组成lDHCP Client:DHCP Client通过DHCP协议来获得网络配置参数 通常是一台主机或网络设备lDHCP Server:DHCP Server提供网络设置参数给DHCP Client通常是一台服务器或网络设备lDHCP Relay:在DHCP客户机和服务器之间跨网段转发DHCP消息通常
5、是网络设备(交换机或路由器)DHCPDHCP地址分配种类地址分配种类地址分配种类地址分配种类lAutomatic Allocation:为连接到网络的某些主机分配IP地址,该地址将长期由该主机使用。lDynamic Allocation:DHCP Server为Client指定一个IP地址,同时为此地址规定了一个租用期限,如果租用时间到期,Client必须重新申请地址,这是Client申请地址最常用的方法。lManual Allocation:网络管理员为某些少数特定的Host绑定固定IP地址,且地址不会过期。DHCPDHCP协议分配地址的优先级协议分配地址的优先级协议分配地址的优先级协议分配
6、地址的优先级lDHCP Server数据库中与该Client的MAC地址静态绑定的IP地址。l该Client曾经使用过的地址。当Client端再次申请地址时,Client发送DHCP_Discover报文,其地址选项中会包含上次使用的IP地址,除非此IP地址被分配出去或此地址进行了其他不可用操作(例如:此IP地址被Forbidden等),否则Client端将再次使用此地址。l顺序查找DHCP地址池中可供分配的IP地址,最先找到的可用IP地址,优先级高。l如果未找到可用的IP地址,则依次查询超过租期、发生冲突的IP地址,如果找到则进行分配,否则报告错误。DHCPDHCP的报文组成的报文组成的报文
7、组成的报文组成hops(1)hlen(1)options(variable)file(128)sname(64)chaddr(16)giaddr(4)siaddr(4)yiaddr(4)ciaddr(4)flags(2)secs(2)xid(4)htype(1)op(1)DHCPDHCP报文中各个部分的含义报文中各个部分的含义报文中各个部分的含义报文中各个部分的含义八位中最左边的一位置位代表广播,反之代表单播。flags由Client填充,从Client开始获得地址或地址续借后所使用了的秒数。secsTransaction ID,由Client选择的一个随机数,被Server和Client用来
8、在它们之间交流messages和responses。由客户设置并由服务器返回的32 bit整数。客户用它对请求和应答进行匹配。xidClient设置为0,也能被一个代理服务器设置hopshardware address length,6字节。hlenhardware address type,1表示10 Mb/s的以太网,这和ARP请求或应答中同名字段表示的含义相同。htypemessage op code/message type“1“代表BOOTREQUEST”2“代表 BOOTREPLYop含义含义字段字段DHCPDHCP报文中各个部分的含义报文中各个部分的含义报文中各个部分的含义报文中
9、各个部分的含义可选参数域,定义的选项列表。DHCP报文“options”域的头四个八位字节的十进制值分别为99、130、83、99,“options”域的剩余项包括一列tagged参数。RFC2132中介绍了全部的option的定义。optionsBoot file name,是一个空值终止串。DHCPDISCOVER中是“generic”名字或空字符;DHCPOFFER提供有效的目录路径全名。file“服务器主机名”字段是一个空值终止串,由服务器填写。snameClient hardware addresschaddrRelay代理的IP地址。giaddrbootstrap中,下一个Serv
10、er的IP地址。siaddryour(Client)IP addressyiaddrClient IP address,只有Client已经获得IP地址,并且能响应ARP requests时,才能被填充。ciaddrDHCPDHCP协议的协议的协议的协议的8 8种报文种报文种报文种报文lDHCP DISCOVER,此报文是Client开始DHCP过程的第一个报文;lDHCP OFFER,此报文是Server对DHCP DISCOVER报文的响应;lDHCP REQUEST,此报文是Client开始DHCP过程中对Server DHCP OFFER报文的回应,或者是Client续延IP地址租期时
11、发出的报文。如果DHCP REQUEST报文中包含“server identifier”选项,那么这个报文是来响应DHCP OFFER的,否则,这个报文是用来请求检验和扩展已存在的租约的;lDHCP DECLINE,当Client发现Server分配给它的IP地址无法使用,如IP地址冲突时,将发出此报文,通知Server禁止使用该IP地址;lDHCP ACK,Server对Client的DHCP REQUEST报文的确认响应报文,Client收到此报文后,才真正获得了IP地址和相关的配置信息;lDHCP NAK,Server对Client的DHCP REQUEST报文的拒绝响应报文,Clien
12、t收到此报文后,一般会重新开始新的DHCP过程;l DHCP RELEASE,Client主动释放Server分配给它的IP地址的报文,当Server收到此报文后,就可以回收这个IP地址,能够分配给其他的Client;l DHCP INFORM,Client已经获得了IP地址,发送此报文,只是为了从Server处获取其他的一些网络配置信息,如网关地址、DNS地址等。DHCPDHCP协议的协议的协议的协议的8 8种报文(续)种报文(续)种报文(续)种报文(续)DHCPDHCP的通信过程的通信过程的通信过程的通信过程DHCP DISCOVERDHCP OFFERDHCP REQUESTDHCP A
13、CK/NAKDHCP DECLINEDHCP CLIENTDHCP SERVERIP网DHCPDHCP续订租约续订租约续订租约续订租约DHCP REQUEST(UNICAST)DHCP CLIENTDHCP SERVERDHCP ACK(UNICAST)T1:使用时间达到租期的50%DHCP REQUEST(BROADCAST)DHCP ACK(UNICAST)TT2:使用时间达到租期的87.5%IP网DHCP RELAYDHCP RELAY的通信过程的通信过程的通信过程的通信过程lRelay在收到Client发来的DHCP请求报文后,将收到该报文的接口地址填入报文,然后转发,这样DHCP服务
14、器根据收到的报文中的接口地址就可以确定需要分配哪个子网的IP地址。lDHCP Relay在收到服务器的回应报文后,根据报文中的FLAG标记位是否置位来选择单播或广播的方式向DHCP Client发送报文。DHCP RELAY DHCP RELAY 的通信过程的通信过程的通信过程的通信过程DHCP DISCOVERDHCP DISCOVERDHCP OFFERDHCP OFFERDHCP REQUESTDHCP REQUESTDHCP ACK/NAKDHCP ACK/NAKDHCP DECLINEUnicast Or BroadcastUnicast Or BroadcastClient和和Re
15、lay间的所有报文,从初始状态获取间的所有报文,从初始状态获取IP地址时,地址时,DISCOVER和和REQUEST都是广播都是广播的,的,OFFER和和ACK根据请求报文中的广播标志位来决定广播还是单播,如果请求标注位为广根据请求报文中的广播标志位来决定广播还是单播,如果请求标注位为广播,则播,则OFFER和和ACK就是广播的,否则就是单播的。就是广播的,否则就是单播的。DHCP CLIENTDHCP SERVER子网1子网2DHCP RELAYDHCP RELAY续订租约续订租约续订租约续订租约CLIENTDHCP SERVERDHCP ACK(UNICAST)DHCP REQUEST(B
16、ROADCAST)DHCP REQUEST(UNICAST)DHCP REQUEST(UNICAST)DHCP ACK(UNICAST)DHCP ACK(UNICAST)TT1:使用时间达到租期的50%T2:使用时间达到租期的87.5%子网1子网2l如果DHCP报文中的“giaddr”字段非空,那么服务器就会采用单播的方式把返回报文发送给“giaddr”字段所代表的IP地址。l如果“giaddr”字段为空并且“ciaddr”非空,那么服务器也会采用单播的方式把DHCPOFFER和DHCPACK报文发送给“ciaddr”字段所代表的IP地址。l如果“giaddr”和“ciaddr”字段都为空,并
17、且flag域中的广播位置位,那么服务器返回DHCPOFFER和DHCPACK报文的时候就采用广播方式。l如果广播位没有置位,那么服务器就把这些报文单播给“yiaddr”代表的IP地址。l如果在某些情况下不能使用单播,那么服务器就采用广播方式。另外,当giaddr字段为空的时候,服务器返回DHCPNAK报文采用的都是广播方式。DHCPDHCP报文的广播与单播报文的广播与单播报文的广播与单播报文的广播与单播DHCPDHCP协议协议协议协议DHCP协议产生原因协议产生原因DHCP协议介绍协议介绍DHCP协议实现原理协议实现原理DHCP安全特性安全特性介绍介绍DHCPDHCP的安全特性的安全特性的安全
18、特性的安全特性lDHCP RELAY地址合法性检查地址合法性检查lDHCP SNOOPINGlDHCP OPTION 82DHCP RELAYDHCP RELAY地址合法性检查地址合法性检查地址合法性检查地址合法性检查l为了防止不经过IP申请的非法用户上网。DHCP Relay安全特性维护了一张IP和MAC的对应表。在用户通过DHCP Relay申请IP地址时,会增加记录表项。l当在网络设备一个接口上使用了DHCP Relay安全特性后,ARP模块就会根据DHCP Relay安全特性提供的这张表对IP地址和MAC地址匹配的合法性检查,如果IP和MAC对应的关系在表中找不到匹配项时,就丢弃ARP
19、报文。l注意:如果作DHCP Relay的设备不是网关时,则报文的转发不受影响。DHCP RELAYDHCP RELAY地址合法性检查地址合法性检查地址合法性检查地址合法性检查00EF-AABB-CF0800EF-AABB-CF08DHCP SNOOPINGDHCP SNOOPINGl支持DHCP SNOOPING功能的设备可以对DHCP客户端与服务器端交互的DHCP协议报文进行监听。l设备可以对自身的端口属性进行配置,将连接合法DHCP服务器的端口设为信任端口,其余端口设为非信任端口。l信任端口可以正常转发DHCP OFFER及DHCP ACK报文,而非信任端口将拒绝这些报文。从而确保子网中的客户端仅能从合法DHCP服务器获得正确的DHCP配置信息,避免了非法DHCP服务器的恶意攻击。DHCP SNOOPINGDHCP SNOOPINGLegal DHCP serverDHCP ClientIllegal DHCP serverLegal DHCP INFOIllegal DHCP INFOLegal DHCP INFO总结总结总结总结lDHCP协议产生原因和解决的问题协议产生原因和解决的问题lDHCP协议的基本工作协议的基本工作原理原理