IPv4下的DHCP协议

 

1、DHCP概述

    IPv4是32位IP地址,拥有大约43亿IP地址,平均全球每人还分不到一个,可以说是稀缺资源,所以如果所有用户上网都使用静态IP的话,可能面临IP资源短缺,并且也造成了极大的浪费,毕竟大多用户并没有时刻连在网络上。此时需要一个动态分配IP的机制,于是DHCP应运而生。这有点儿像我们上公共厕所,茅坑相当于IP,人相当于主机,坑就那么几个,大家如果不拉屎也非要占个位子,肯定好多人就在厕所门外憋死了。所以公共厕所的机制就是有人来了,有空位你就上,没空位就排队等着。DHCP就是实现了这样一种机制,有主机上网才会给它分配一个IP地址(这里指的是全局IP,并非局域网IP),该主机下线以后它用的IP就被回收,又可以分配给其他要上网的主机使用,这就最大限度地利用了有限的IP资源。

    DHCP 是 Dynamic Host Configuration Protocol(动态主机分配协议)缩写,在DHCP协议下,不仅客户端主机的IP地址由服务器分配得到,TCP/IP设置也是由服务器发送。可以认为DHCP是BOOTP(Bootstrap Protocol)的增强版,因为DHCP是从BOOTP协议的基础上发展而来的。BOOTP主要应用在无盘工作站上,但使用BOOTP协议的主机IP地址是静态的,缺乏动态性。BOOTP协议这里这里还涉及到一个先有鸡还是先有蛋的问题,有兴趣的可以研究一下RFCS 951和1084。比较起 BOOTP ,DHCP 透过 "租约" 的概念,有效且动态的分配客户端的 TCP/IP 设定,而且,作为兼容考虑,DHCP 也完全照顾了 BOOTP Client 的需求,并且支持BOOTP协议的relay可以转发DHCP报文。

 

2、DHCP协议下客户端与服务器端的沟通过程

(1)首先寻找 Server。当 DHCP 客户端第一次登录网络的时候﹐客户端发现本机上没有任何 IP 数据设定﹐它会向网络发出一个 DHCP DISCOVER 封包。因为客户端还不知道自己属于哪一个网络﹐所以封包的来源地址会为 0.0.0.0﹐而目的地址则为 255.255.255.255﹐然后再附上 DHCP discover 的信息﹐向网络进行广播。这一步的封包中还包含客户端的MAC信息,XID编号等。如果把客户端主机比作一个人,服务器比作公司,这一步就好比是投简历,只不过这个人是在网上满无目的地群发简历,在网上叫嚷:我要工作,谁给我个OFFER!

(2)提供 IP 租用地址。当 DHCP 服务器监听到客户端发出的 DHCP discover 广播后﹐它会从那些还没有租出的地址范围内﹐选择靠前面的未被使用 的IP地址 ,连同其它 TCP/IP 设定,响应给客户端一个 DHCP OFFER 封包,不过服务器要先使用ICMP报文来确定

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值