问题描述:
参照微软netui的例子代码,我写了个WIFI管理器。连接路由成功后,用DCHP的方式动态获取IP,经常获取不到IP。后来通过抓包软件抓取LOG,发现我自己写的软件会反复的发DHCP discover或者DHCP request命令,不符合DHCP规范。而微软自带的WIFI管理器就没有这种问题。
问题分析:
1,DHCP discover命令重复发
我看了下DHCP白皮书,discover命令只是在发现分配的IP已被占用才会重发。但是在我的WIFI管理程序中,分配的IP是可用的,还是会重复。请问discover命令有对应的API吗?是不是应用程序还需要实现管理DHCP client?
2,DHCP request命令重复发
我就不太知道如何分析了
总结,微软的管理器没问题,应该是我写的WIFI管理器在DHCP这块有问题,请大虾们帮忙分析分析,是不是应用程序还需要来管理DHCP client?
------解决方案--------------------
哪里重发的,可以控制不呢?