在wifi中,每个station连接ap后,ap都会给station分配一个ip

地址,如果station关闭后,ap是否会一直保留这个ip地址给该
station不?答案是否定的,每个ap都有一个ip地址租约时间的配置
项,就是 station在向ap申请ip地址后,只有一个有限的时间使用该
ip地址,如果时间到后station没有再次向ap获取 ip地址,该
station就会被ap踢出去,这样做目的是为了让ap在有限的ip地址数
目下,为更多不同的station 提供连接。避免一个station一直占用一
个ip地址不放,浪费ip地址资源。
下面是android上运行的例子,一个ap的ip地址租约时间设置为
7200秒,当一个station申请一个ip地址后,该station在7200秒内
ip地址,该station就会被ap踢出。当申请ip地址时间经过大约一半
的租约时间后(约3600秒),dhcp client会再触发一次ip地址申
请,这样station就 可以继续使用ip地址了,如果申请ip地址失败,
station也会断开与ap的连
接。
相关log如下:
重新申请ip地址:

    E/native  (  403): do suspend falseE/WifiStateMachine(  403): scanCount==0 - abortingI/dhcpcd  ( 7767): sending signal 14 to pid 1616I/dhcpcd  ( 1616): received SIGALRM, renewingI/dhcpcd  ( 1616): wlan0: renewing lease of 192.168.1.101I/dhcpcd  ( 1616): wlan0: acknowledged 192.168.1.101 from 192.168.1.1 `8-13 I/dhcpcd  ( 1616): wlan0: leased 192.168.1.101 for 7200 seconds

申请ip地址的dhcp过程如下:

1、 机子向ap发送一个dhcp discover包,请求分配ip地址;
2、 当Ap准备分配192.168.1.100的地址给机子时,发送一个广播包,询问是否有那个机子占用了该ip地址;
3、 没有机子占用192.168.1.100地址后,发送dhcp offer包,把192.168.1.100地址分配给机子;
4、 机子接着发送一个dhcp request包,请求确认分配的192.168.1.100地址;
5、 Ap发送一个dhcp ack包,确认机子分配的192.168.1.100地址;

在dhcp offer和dhcp ack包中,都有一个“IP Address Lease Time”字段,保存着ip地址的租约时间,这样dhcp client就知道了ip地址租约的超时时间,在快到达超时时间,再发起一次ip地址续约。正常情况下,机子发送一个dhcp request包,ap回应一个dhcp ack包就可以了。

wifi ip地址租约处理相关推荐

  1. 获取手机WiFi Ip地址

    如何获取手机WiFi的ip地址,我就直接贴代码吧: public class MainActivity extends AppCompatActivity {private TextView tv;@ ...

  2. Android获取手机WiFi IP地址,MAC地址和网关地址程序实例

    现在博主在上大三,正在学习一些计算机网络的一些概念,知道了局域网ip和网关ip不同的概念,当时还纳了闷了2的32次方好像不咋够用啊,原来是这个样子. 由于之前学过一段时间的Android,同时又在上A ...

  3. android开发工具类之获得WIFI IP地址或者手机网络IP

    有的时候我们需要获得WIFI的IP地址获得手机网络的IP地址,这是一个工具类,专门解决这个问题,这里需要两个权限: <uses-permission android:name="and ...

  4. 办公室最经常用到的WIFI ip地址设置(window10)

    1. 打开网络和Internet配置.点击电脑图标,鼠标右键,出现这个标志 2. 点击更改适配器选项. 3. 点击以太网 4.点击属性 5.用鼠标双击Internet协议版本(TCP/Ipv4),一定 ...

  5. uni-app Android端获取设备已连接的WiFi IP地址

    1.manifest.json 在APP权限配置或源码中,添加需要的权限: android.permission.ACCESS_WIFI_STATE android.permission.INTERN ...

  6. python 获取本机wifi IP地址

    import os,re import webbrowserclass WeNetWork_open_browser():def execCmd(self, cmd): # 返回CMD命令输出的内容r ...

  7. Android:获取wifi IP地址

    需要先获取当前App的Application, 然后调用getSystemService()传入指定的参数; WifiManager wm = (WifiManager) MyApplication. ...

  8. 根据网络状态获取Ip地址

    权限: <uses-permission android:name="android.permission.ACCESS_WIFI_STATE" /> <uses ...

  9. 深入剖析DHCP服务IP地址自动分配原理

    以下内容摘自笔者最新出版的<深入理解计算机网络>一书,目前该书已在当当网和京东网上可以正式预订了: 当当网链接:http://product.dangdang.com/main/produ ...

最新文章

  1. Sql中的递归问题-思考与建议
  2. java运输_JAVA-基础-方法
  3. Spark消费kafka任务卡死:Marking the coordinator xxx:9092 (id: 2147483647 rack: null) dead for group xxx
  4. Git-删除文件后找回-比较文件差异
  5. Linux操作系统下激活网卡命令
  6. java: Iterator的使用
  7. 『计算机视觉』Mask-RCNN_推断网络终篇:使用detect方法进行推断
  8. opencv python教程简书_OpenCV-Python教程:28.模板匹配
  9. [推荐]WebService开发知识介绍
  10. 没数据也能玩转BERT!无监督语义匹配实战
  11. [WPF] 嵌入资源到DLL,并解决PNG图片问题
  12. ~~遗传算法最最最最简单的实例~~
  13. 论文重复率太高咋办?Python来帮你解决
  14. linux 版的 wps 缺少字体的解决办法
  15. Java中get和set的作用、用法
  16. Windows Defender保护历史记录清空方法
  17. c语言操作符的自我总结hhhhhhhhh
  18. 基于STM32的高精度温度测控系统-原理图设计
  19. /system32/ntoskrnl.exe丢失无法启动
  20. MATLAB08:符号运算

热门文章

  1. 创蓝253云通讯paas平台PHP短信接口demo分享
  2. Distributed System: DFS系列 -- NFS, AFS HDFS(GFS)
  3. C语言 | 数组升序排列(冒泡排序法)
  4. Mass Assignment 防止Hacked
  5. 亚马逊经济:从仓库到庞大的零售帝国
  6. Kinect开发(如何连接电脑)
  7. 什么是可视化?数据可视化有什么作用和价值
  8. 单片机理论篇(未完成)
  9. ESP8266 接入阿里物联网平台实现远程控制LED
  10. windows编译 zlib