什么是DHCP?
DHCP,即Dynamic Host Configuration Protocol,动态主机配置协议,是一种局域网的网络协议,属于OSI模型中的第七层,即最高层--应用层,它使用UDP协议工作,其
主要作用是集中的管理、分配IP地址,使网络环境中的主机动态的获得IP地址、Gateway地址、DNS服务器地址等信息,并能够提升地址的使用率。
DHCP协议采用客户端/服务器模型(也就是常见的C/S模型),主机地址的动态分配任务由网络主机驱动。当DHCP服务器接收到来自网络主机申请地址的信息时,才会向网络主机发送相关的地址配置等信息,以实现网络主机地址信息的动态配置。
DHCP支持三种类型的地址分配:
1. 自动分配方式:DHCP给主机指定一个永久的IP地址,一旦DHCP客户端第一次成功的从DHCP伺服器端租用到IP位址之后﹐就永远使用这个位址2. 动态分配方式:DHCP给主机指定一个有"时间限制(租约)"的IP地址,到时间(租约到期)或主机明确表示放弃这个地址(主机主动断开连接)时,这个地址可以被其他的主机使用,当然,客户端可以比其它主机更优先的延续(renew)租约,或是租用其它的IP位址3. 手工分配方式:主机的IP地址是由网络管理员指定的,它可以按照MAC地址来固定的分配IP位址﹐DHCP只是把指定的IP地址告诉主机,相当于将某个MAC和IP进行了静态绑定。
三种地址分配方式中,只有动态分配可以重复使用客户端不再需要的地址。
生活中哪里会用到DHCP?
最常见的莫过于路由器了,每一个设置过路由器的人都会进入到下面一个熟悉的界面:
源自作者电脑根据设置向导配置完成后基本就没有问题了,但如果你想要路由器可以让多个无线设备都能联网,那么必须进入下一个环节:进入DHCP服务器启用DHCP服务器。启用之后路由器重启之后就可以让无线设备联网了。
图片源自作者电脑此时,为了查看DHCP服务的效果,可以按下“win+R”快捷键进入一下状态:
图片源自作者电脑输入cmd并确定,进入下面界面:
图片源自作者电脑输入ipconfig /all并回车得到如下界面:
图片源自作者电脑 图片源自作者电脑你会发现IPv4地址是192.168.1.100,而这就归功于上边提到的启用了DHCP功能。
现在来区分一下DHCP和DNS
DHCP是动态IP地址分配;DNS是域名解析,把本地连接里面的DNS弄错了 就不能浏览网页了。
以局域网为例,做DNS是为了访问内网网站时方便而做的。因为DNS是起到域名解析作用的,可以把域名解析为IP地址,这样,我们在访问网站时不需要输入难记的IP地址,只要输入网站地址,就可以访问。局域网用DHCP服务器,是为了让局域网的机器从网内DHCP服务器指定的IP范围内自动获取IP地址,所获得的ip都是私网ip。而我们自己用的自动获取方式,和局域网一样,只不过是IP和DNS地址是从公网的DHCP服务器上获取的动态公网IP。
使用DHCP时必须在网络上有一台DHCP服务器,而其他机器执行DHCP客户端。当DHCP客户端程序发出一个信息,要求一个动态的IP地址时,DHCP服务器会根据目前已经配置的地址,提供一个可供使用的IP地址和子网掩码给客户端。
DHCP使服务器能够动态地为网络中的其他服务器提供IP地址,通过使用DHCP,就可以不再给Intranet网中除DHCP、DNS和WINS服务器外的任何服务器设置和维护静态IP地址,从而大大简化配置客户机的TCP/IP的工作,尤其是当某些TCP/IP参数改变时,如网络的大规模重建而引起的IP地址和子网掩码的更改。
如果想对DHCP协议有更深的了解,可以学习DHCP数据报文的格式及内容,最好是可以借助Wireshark之类的软件实践一下。
网友评论