局域网成员无法正常上网的顽疾---DHCP服务器"泛滥"

一 DHCP简介网络的普及与网络技术的成熟 , 现在的人越离不开网络 , 个人的手机 , 电脑 , 智能家居设备等都需要网络 , 我们的这些用网的设备无论是在在访问Internet网 , 还是局域网内部通信都离开不了IP地址的支持 , IP地址就是这些硬件在网络上互相交互信息时用来区分彼此的"名字" , 无论你是使用IPv6还是IPv4 , 都需要给你的网络设备分配一个对应的地址 。
IP地址在计算机的世界里是一段有规律的0和1(二进制数) , IPv4地址32位的0和1 , IPv6地址128位的0和1 , 我们人无论是去记忆还是手写这些二进制的0和1都是非常困难的 , 可是没有IP地址你的电脑即使连接了网线 , 也向运营商办理了宽带 , 上网的基础环境也准备好了 , 也就是无法访问网络的 。而大叔非网络专业相关的人员不要说去记忆或者配置这些IP地址了 , 可能对于IP地址的组合与识别都做不到 。
既为了简化IP地址的使用 , 又为了把网络管理人员从IP地址配置的重复工作中解放出来 , 网络技术里加入了DHCP-- Dynamic Host Configuration Protocol动态主机配置协议 。DHCP服务可以为网络中的接入终端(电脑 , 手机等普通的用户设备)自动下发一个正确且不重复的IP地址;同时为了使得用户可以正常访问网络 , DHCP服务还会为终端设备下发管理员指定正确的GW-网关地址(提供跨网段访问)和DNS(提供IP地址与域名的解析)服务器地址 。
 

局域网成员无法正常上网的顽疾---DHCP服务器"泛滥"

文章插图
 
 
局域网成员无法正常上网的顽疾---DHCP服务器"泛滥"

文章插图
 
 
如图DHCPserver为接入的终端PC-1到PC-3提供IP地址 , 掩码 , 网关 , DNS等上网必须信息 。
 
DHCP服务的正确使用可以为接入终端上网带来极大的便利 , 可是如果如果因为错误配置及部署导致网络中存在多个DHCP服务器就会带来严重问题 。因为网络管理员指定的DHCP服务器里配置和网段和网关地址是当前网络设备(主要是网关路由器)所认识的 , 这样获得IP地址的终端设备是可以找到正确的网关 , 通过正确的网关设备访问公网 。
 
局域网成员无法正常上网的顽疾---DHCP服务器"泛滥"

文章插图
 
 
局域网成员无法正常上网的顽疾---DHCP服务器"泛滥"

文章插图
 
 
从上面的拓扑与测试环境就可以看到获得192.168.1.0网段IP地址的PC-1是可以访问外网的 , 因为这个网段的IP地址我们的网关GW是可以识别的 , 网关路由器上并不存在172.168.1.0网段的路由 , 所以无法处理此网段成员的数据 。而且网络中存在于网关设备不匹配的DHCP服务器 , 会影响网络的多个终端设备的正常访问 。DHCP功能又是网络设备最基本的功能之一 , 所以很多家用的路由器想TP-Link , 小米 , 华为家用路由器都可以当作一台DHCP服务器 , 而这些家用路由器配置简单 , 很多人都即插即用 , 一般用在接口扩展或者无线扩展 , 但很多人并不清楚这些路由器默认运行这DHCP功能 , 有着缺省的DHCP参数 , 再不关闭DHCP功能就接入到网络中 , 就会为正常的网络运作埋藏隐患或者造成无法上网的故障 。
 
二 DHCP Snooping简介终端设备向DHCP服务器请求地址时发送的是DHCP的广播消息 , 这样在网络中的(一个广播域且不涉及DHCP中继的情况)所有设备都会收到此请求信息 , 如果网络中存在多个多个DHCP服务器或者具有DHCP功能的设备都会对这个请求消息做出响应 , 我们的终端设备是无法分辨哪个是合法的DHCP服务器 , 哪个是非法的 , 也无法分辨哪个DHCP服务器的回应的网段是可用的 , 下发的网关地址是安全的 , 如果把终端设备请求地址比做人组房子 , 那我们房客一般是无法分辨出哪些中介(DHCP服务器)是合法的哪些是黑心的?
如果终端设备收到多个DHCP服务器的的回应 , 终端设备会按照"先到先得"的原则来使用第一个到达终端设备的DHCP数据包中的IP地址 。在如今稍微有点规模的网络中网络规划中会设定单独的DHCP服务器 , 而且距离用户的接入层相较来说有点远 , 而用户私自接入的DHCP服务器的数据包往往在接入层 , 直接面向终端 , 这样只要接入端有一台私自接入DHCP服务器 , 就会影响到终端的接入端成员 , 造成成片区域的用户因为获得错误的IP地址及网关地址而无法正常访问网络 。


推荐阅读