DHCP服务是如何实现的 dhcp服务器的工作过程

DHCP服务器今天我们来学习一下计算机网络共一个重要的协议—DHCP协议 。学一个东西之前我们要知道这玩意是什么?有什么用?怎么用?它是一个动态主机配置的协议 , 它可以为你的计算机分配一个可用的IP地址 , 让你可以正常上网 。当然如果只有几台计算机其实是不能
DHCP服务器
今天我们来学习一下计算机网络共一个重要的协议—DHCP协议 。学一个东西之前我们要知道这玩意是什么?有什么用?怎么用?

DHCP服务是如何实现的 dhcp服务器的工作过程

文章插图
它是一个动态主机配置的协议 , 它可以为你的计算机分配一个可用的IP地址 , 让你可以正常上网 。当然如果只有几台计算机其实是不能体现它的优越 , 完全可以有管理员手动给每一个计算机配IP地址就完事了 , 那你想一下如果有一个大型企业 , 几百台 , 几千台甚至的时候人为配置还现实么?所以之后就显示出我们DHCP的重要性了 , 他自动为入网设备分配可以使用的ip地址 , 而且还不会出现ip冲突的现象 。
【DHCP服务是如何实现的 dhcp服务器的工作过程】DHCP 原理
DHCP服务是如何实现的 dhcp服务器的工作过程

文章插图
我们来看一下上面的原理图 , 首先你作为一个主机A你要在某个网络内上网 , 首先要获得一个ip地址 , 在你连通网络之前你的电脑会向网络里面发送一个DHCP 的请求 , 发送的形式是广播 , 寻找网络内的DHCP服务器 , 然后在DHCP服务器接收到请求报文后会给你的主机发送一个DHCP提供报文 , 在里面就包括分配给你的ip地址信息 , 然后你的主机获得分配到的IP地址后会在广播发送请求配置确认 , 通俗一点来说就是再大喊一遍“这个ip我要用了 , 我在确认一下有没有人在使用” , 那如果网络里面没有知己在用 , 那DHCP服务器就会发一个确认报文给你大概意思就是“给你用就的啦瞎嚷嚷什么呢” 。
那这里就有两个问题了:
1、如果网络里面有多个DHCP 服务器那谁给主机A分配IP地址?那如果都分配了主机A用谁的?
其实主机用谁的都是一样的 , 都是给主机A分配的IP地址嘛 , 但是他采取的是谁先给他分配那它就用谁的 。
2、如果收到了分配的IP地址网络里面还有主机在用会怎么样?
那就会到我们刚刚说的 , 在主机A大喊“这个IP地址我要用的时候”还在有主机用的话 , 那主机也会给主机A说“啥玩意 , 这个ip地址我还在用呢你不可以用!”那这时候怎么办?这时候DHCP就会给A发一个DHCP NAK 就是拒绝A的请求 , 然后A就只能在重头来一遍 。重新申请 , 然后DHCP服务器再重新给他分配 。
DHCP租期更新
这里我们就要和手动分配IP地址区分开来 , 手动分配的你A主机是可以一直使用的 , 但是由DHCP服务器给你分配那就不一样了 , 那不是真的给你的 , 那是租给你的 , 你用完了或者到期了你不续租那是要收回的 , 就好比你租一个房子 , 房子不是你的 , 而且租期到了你不续租的话你就会被房东赶出来流露街头 。
那回到原来的话题啊 , 我们主机A是怎么续租的呢?首先我们来看一下原理图
DHCP服务是如何实现的 dhcp服务器的工作过程

文章插图
当你租期到50%的时候主机A就会给DHCP 服务器发送一个续租的请求 , 然后DHCP服务器会给他回一个确认的报文 , 那这样就完成了续约 , 你有可以继续使用了 。
DHCP 重新绑定
DHCP服务是如何实现的 dhcp服务器的工作过程

文章插图
重新绑定是什么意思呢?刚刚我们不是在上面说了当租期到50%的时候就已经开始续租了 , 这时候你发送的是(单播)你只告诉DHCP服务器一个呀;那会出现一种情况 , 就是你找DHCP服务器续租的时候 , 他没给你回应 , 那你就继续使用 , 那等到租期已经到了87.5%的时候你就慌了呀 , 那这时候怎么办?你就得大喊一声(广播)再发送一次请求IP地址的报文了 , 那如果现在DHCP服务器听到了那它就给你续租 , 那玩意要是还听不见呢?那你不要望你你刚刚是广播喊出去的呀 , 那网络里面的其他DHCP服务器听到呀 , 那它就会给你分配 。那要是整个网络只有一台DHCP服务器怎么办?算你倒霉呗还能怎么办,你就只能继续喊了 。实在听不到你只有落到断网的下场了 。

推荐阅读