Android的DHCP功能包含两个独立的部分:dhcpcd和netcfg。

1)dhcpcd位于external\dhcpcd目录下,在系统中以service的方式存在,负责通过dhcp协议为Android系统获取IP地址。
上层应用通过对dhcpcd service的操作来实现DHCP功能。其调用流程大体如下:
runDhcp(java) -- android_net_utils_runDhcp(JNI) --- android_net_utils_runDhcpCommon(C++)-- dhcp_do_request(C)

在init.rc或init.{boardtype}.rc中定义了dhcpcd对应的service。

2)netcfg位于system/core/netcfg目录下,提供了系统命令行的网络配置功能。其支持的功能定义在如下结构体中:
CMDS[] = {
    { "dhcp",   1, do_dhcp },
    { "up",     1, ifc_up },
    { "down",   1, ifc_down },
    { "flhosts",  1, ifc_remove_host_routes },
    { "deldefault", 1, ifc_remove_default_route },
    { "hwaddr", 2, set_hwaddr },
    { 0, 0, 0 },

其中,dhcp相关功能的实现代码位于system\core\libnetutils目录下。

更多相关文章

  1. Android中自定义对话框(Dialog)
  2. windows系统Android模拟器安装apk
  3. Android用户apk如何获得系统(system)权限
  4. Android自定义属性 及 TypedArray的使用方法
  5. Android 学生管理系统 之 SQLite数据库操作
  6. Android 系统稳定性之ANR
  7. Android自定义TabLayout后ViewPager与TabLayout互相控制切换
  8. Android 自定义字体方案

随机推荐

  1. MySQL的Flush-List和脏页的落盘机制
  2. Sysbench对Mysql进行基准测试过程解析
  3. 解决myBatis中删除条件的拼接问题
  4. Mac下mysql 8.0.22 找回密码的方法
  5. mysql 8.0.22 winx64安装配置图文教程
  6. mysql 8.0.22.0 下载安装配置方法图文教
  7. CenOS6.7下mysql 8.0.22 安装配置方法图
  8. 推荐几款MySQL相关工具
  9. Windows10下mysql 8.0.22 安装配置方法图
  10. 浅析MySQL的lru链表