【问题描述】:某高校无线网络发射两个信号,一个为TEACHER,另一个为STUDENT,节前部署试运行阶段一切正常,节后学生返校开学,就开始有部分学生反映连接STUDENT信号不能上网,具体表现为,无线信号能连接上,但是无线终端(包括手机和笔记本)获取不到地址,直接分配169.254.175.149;而连接TEACHER信号的则一切正常。
【问题排查】:
1、综合这几天故障申报的时间观察来看, 没有固定的时间段,基本上全天都会有几率出现故障现象;
2、排查TEACHER和STUDENT这两个信号的策略设置等,基本上一样;
3、刚开始怀疑DHCP地址池不够,但是对于STUDENT,我们分配了 4段22位的地址池,可用地址约4088,也就是可以同时4088台设备在线,但是在故障重现的时候,总的在线设备才1915,正常情况下地址池不会消耗完。
4、在故障发生时,进行抓包观察,并在正常情况下也进行抓包观察对比。
【正常情况】:
1、PC机先发一个广播包,问分配地址的那个人在哪?(DHCP Discover 发现DHCP服务器在哪);
2、DHCP收到PC机的广播包之后,就会回应一个,说我在这里,我家的地址是XXXX。(DHCP offer 报文里会包含DHCP服务器的IP地址);
3、PC机收到DHCP offer 报文之后,就会向这个报文里提供的DHCP服务器IP发送一个请求包,说“我是刚报到的学生,请给我办张学生证,分配一个学号给我吧。” (DHCP Request ,请求服务器分配一个IP地址);
4、DHCP服务器接收到Request后,就会给这个“学生”分配一个“学号”,会发个信息跟他说“这是你的学号和有效期限,你自己把学号填入你得学生证里吧”。(DHCP ACK 里会有分配的IP地址信息、DNS信息、租期信息等);
5、PC机收到分配的学号和租期后,就会自动将这些信息与所使用的网卡进行绑定,就可以开始正常通信了。
图一 IP请求过程
图2 DHCP Discover 包
图3 DHCP offer
图4 DHCP Request
图5 DHCP ACK
而我们在问题重现的时候,抓包看到这个过程并不正常,故判断是DHCP服务器的问题,为了进一步确认,我们还调出地址分配的记录查看。
上接
【问题排查】
5、查看地址分配记录,通过排序查看发现规律:每段地址都是从10.X.X.3开始,并以10.X.X.254结束,并没有继续往下分配IP地址 ,相当于DHCP服务器只给STUDENT这个信号的用户分配了4段24位的地址,比原来设想分配的少了75%的地址。故判断是出现该故障原因是地址池满导致;
6、再次检查DHCP服务器设置,发现在某个策略设置上,起始地址设为10.X.X.3,以10.X.X.254结束,相当于虽然地址池是分配4段22位的地址池,但是策略上却限制为4段24位的地址;将这个策略的结束地址修改为正确的结束地址后,故障现象消失。
-------------------------------------------------------------------------------------------
PS:
1、在实施阶段,每一步的设置都得仔细检查;
2、某些问题只有在用户量大的时候才能发现,即使前期测试得再仔细,测试的用户基数上不去,某些问题也是不会暴露出来,项目实施完成后,最好有一个月的上线测试时间(公测),这也是为什么很多大型游戏、网站在正常投入使用之前都会进行一次“公测”,没问题再全面上线的原因。
本人是IT小白,若有错误,欢迎指出!
咱们一起共同学习进步!
本文出自 “西伯利亚狼026” 博客,请务必保留此出处http://1429223.blog.51cto.com/1419223/1629902
原文地址:http://1429223.blog.51cto.com/1419223/1629902