故障现象
用户反映WiFi时好时坏,经常不能使用。
故障排查
现场连接用户WiFi,查看IP地址、网关正常,但所有app、游戏和网页无法访问网络。检查用户CM正常在线,但CM下联另外一台无线路由器,询问用户后得知用户其他房间内还有其他无线路由器,检查线路后发现用户路由器采用级联方式连接,CM旁的无线路由器LAN口下联房间内的无线路由器。但是检查的过程中,我们房间内的无线路由的进线是插在LAN口上。将进线插在WAN口后,重新连接这台路由器WiFi并重新设置路由器LAN地址后网络恢复正常。
故障分析
从网络结构和DHCP协议工作原理讲起。
1、网络结构
当前用户家庭常见路由器级联的网络结构如图1所示,第一种方案是路由器通过WAN口级联,上、下级网络之间通过路由器NAT方式通信;第二种方案是路由器通过LAN口级联,下级路由器WAN口置空,上、下级网络组成一个二层局域网,下级路由器只起到交换机作用。
图1:家庭网络结构
2、DHCP协议是一个局域网的网络协议,主要有两个用途:①用于内部网或网络服务供应商自动分配IP地址;②给用户用于内部网管理员作为对所有计算机作中央管理的手段。
DHCP协议一般有四个过程:①客户端发起DHCP Discover报文(广播)→②服务器响应DHCP Offer报文→③客户端发起DHCP Request报文(广播)→④服务器响应DHCP ACK报文,其中客户端发起的Discover和Request均是广播报文,此时网络若有中的2台DHCP服务器均能进行响应,客户端最先收到的服务器Offer响应便会优先选择与该服务器完成后续协议报文(详见图2)。
图2:DHCP协议工作原理
目前家用无线路由器都带有DHCP功能且默认是打开的。用户将路由器级联时将下级路由器的进线插在LAN口,此时上级路由器和下级路由器就形成了一个二层局域网,而局域网内2台无线路由器的DHCP服务都可进行地址分配,这里我们假设第一级路由器的LAN地址是:192.168.0.1/24,第二级路由器的LAN地址是:192.168.1.1/24。用户终端(PC、手机、iPad……等)连接到局域网时正常会发起DHCP请求(用户终端若设置了静态地址则不会发起DHCP请求),向网络中DHCP服务器申请IP地址。若用户先获取到第一级路由器的DHCP服务响应,便会使用该路由器分配的IP地址(192.168.0.x)进行网络通信,此时由于用户终端与第一级路由器属于同一网段,可正常进行NAT转发,用户上网正常;若先获取到第二级路由器的DHCP服务响应,便会使用该路由器分配的IP地址(192.168.1.x)进行网络通信,此时用户终端与第一级路由器分属不同网络段,无法正常与第一级路由器进行通信,用户无法上网。
这种情况一般有两种方法解决:1、下级路由器进线接入WAN口,确保上、下级路由器LAN地址不能冲突(LAN地址冲突会导致下级路由器报文转发失败);2、所有下级路由器DHCP功能关闭,这样局域网内只有1个DHCP服务器。两种方法各有优劣:第一种方案中,第一、二级路由器分属不同局域网,下级网络可通过该级路由器NAT访问上级网络,但上级网络无法直接访问下级网络内的设备,若要访问下级网络时需修改下级路由器的端口映射,网络资源访问较复杂。第二种方案中,第一、二级路由器属同一局域网,网络资源访问简单,但如果下级路由器恢复出厂设置后需要重新禁用DHCP功能。
总结
现用户家庭局域网环境比较复杂,但一般用户又不具备计算机网络知识,简单认为加个路由器就可以了。这样容易带来各种各样的家庭局域网故障,故需要我们维护人员具备一定的网络知识和细心的排查,对网络故障进行判断并解决。