遇到过这样一个问题,手机作为热点,用笔记本去连接 始终处于分配IP阶段,而其它大多数机器又是可以的。

最后调查发现是authoritative缺失,导致客户端长时间等待dhcp分配ip超时。

authoritative;

指定当一个客户端试图获得一个不是该DHCP服务器分配的IP信息,DHCP将发送一个拒绝消息,而不会等待请求超时。当请求被拒绝,客户端会重新向当前DHCP发送IP请求获得新地址。

当网络中有其他的DHCP服务器时,加上此参数可以忽略其他DHCP服务器。

可把此参数加在dhcp.conf配置文件的第一行。

android手机热点代码层修改:

diff --git a/TetherController.cpp b/TetherController.cpp

index 743742c..32a0b43 100644
--- a/TetherController.cpp
+++ b/TetherController.cpp
@@ -96,6 +96,8 @@ bool TetherController::getIpFwdEnabled() {
return (enabled == '1' ? true : false);
}
+#define TETHER_START_CONST_ARG 8
+
int TetherController::startTethering(int num_addrs, struct in_addr* addrs) {
if (mDaemonPid != 0) {
ALOGE("Tethering already started");
@@ -134,19 +136,20 @@ int TetherController::startTethering(int num_addrs, struct in_addr* addrs) {
close(pipefd[0]);
}
- int num_processed_args = 7 + (num_addrs/2) + 1; // 1 null for termination
+ int num_processed_args = TETHER_START_CONST_ARG + (num_addrs/2) + 1;
char **args = (char **)malloc(sizeof(char *) * num_processed_args);
args[num_processed_args - 1] = NULL;
args[0] = (char *)"/system/bin/dnsmasq";
args[1] = (char *)"--keep-in-foreground";
args[2] = (char *)"--no-resolv";
args[3] = (char *)"--no-poll";
+ args[4] = (char *)"--dhcp-authoritative";
// TODO: pipe through metered status from ConnService
- args[4] = (char *)"--dhcp-option-force=43,ANDROID_METERED";
- args[5] = (char *)"--pid-file";
- args[6] = (char *)"";
+ args[5] = (char *)"--dhcp-option-force=43,ANDROID_METERED";
+ args[6] = (char *)"--pid-file";
+ args[7] = (char *)"";
- int nextArg = 7;
+ int nextArg = TETHER_START_CONST_ARG;
for (int addrIndex=0; addrIndex < num_addrs;) {
char *start = strdup(inet_ntoa(addrs[addrIndex++]));
char *end = strdup(inet_ntoa(addrs[addrIndex++]));

dhcp authoritative参数作用相关推荐

  1. dhcp中继(dhcp中继的作用)

    DHCP中继的作用是什么 DHCPRelay(DHCPR)DHCP中继(也叫做DHCP中继代理)是一个小程序,其可以实现在不同子网和物理网段之间处理和转发dhcp信息的功能.如果DHCP客户机与DHC ...

  2. [react] react中setState的第二个参数作用是什么呢?

    [react] react中setState的第二个参数作用是什么呢? 第二个参数是一个callback函数,用于setState设置state的属性值成功之后的回调,此时调用this.state.p ...

  3. matlab中的measure,关于matlab中awgn函数中参数作用的测试

    matlab中加性白噪声awgn函数主要格式是awgn(sig,SNR,sigpower) 对于sigpower参数进行了一下测试,其表示的作用应该是作为SNR参考0db的信号功率 以这段代码对参数作 ...

  4. DHCP中继实操 :配置命令及DHCP中继的作用

    这里DHCP中继的配置命令及DHCP中继的作用写目录标题 一:DHCP中继的作用 二 :DHCP中继的实验配置命令 三:检验成果 一:DHCP中继的作用 **DHCP中继(也叫做DHCP中继代理bai ...

  5. 通过位置跟踪模型演示PID三个参数作用

    摘自:https://mp.weixin.qq.com/s/D_F3-K7oEqPB7bLLAc9sNA 通过位置跟踪模型演示PID三个参数作用 原创 卓晴 TsinghuaJoking 今天 在自动 ...

  6. DHCP Snooping的作用

    1.dhcp-snooping的主要作用就是隔绝非法的dhcp server,通过配置非信任端口. 2.与交换机DAI的配合,防止ARP病毒的传播. 3.建立和维护一张dhcp-snooping的绑定 ...

  7. 通过位置跟踪模型显示PID三个参数作用

    在自动控制中,PID(Proportion-Integrationi-Differentiation:比例-积分-微分)控制算法在近一个多世纪以来在空城控制领域中占据了主导地位.它是由苏联工程师Min ...

  8. mysql之 binlog维护详细解析(开启、binlog相关参数作用、mysqlbinlog解读、binlog删除)...

    binary log 作用:主要实现三个重要的功能:用于复制,用于恢复,用于审计. binary log 相关参数: log_bin 设置此参数表示启用binlog功能,并指定路径名称 log_bin ...

  9. python命令行参数作用_Python命令行参数解析模块argparse

    前言 更多内容,请访问我的 个人博客. 以前 optparse 比较火,但是在python2.7版本后,官方不再维护这个模块,转而大力支持 argparse . argparse 模块可以让人轻松编写 ...

  10. split()方法,limit参数作用

    String.split()方法是有参数的,limit参数的作用有如下几种情况. limit = 0 对结尾处的字符不进行分割 String.split(String regex)默认的limit参数 ...

最新文章

  1. 织梦cms系统如何code 财付通接口
  2. PHP酒店管理demo案例(数组遍历)
  3. 剑指offer之51-55题解
  4. 前端学习(3180):ant-design介绍3
  5. 【IDEA 2016】intellij idea tomcat jsp 热部署
  6. jQuery的Deferred
  7. EMNLP 2017 北京论文报告会笔记
  8. 迅雷对非会员进行下载限速的解决方案
  9. 硬盘分区之MBR讲解
  10. 【接口测试用例设计思路】
  11. 手机变蓝牙音响_微信官方收款音箱提示器收款码播报器S1 支付提示音响 无需wifi蓝牙 自带移动网络 手机不在店里也能播报...
  12. SGX Enable
  13. 使用gsds绘制基因结构图_使用 GSDS 绘制基因结构图
  14. 第5章第17节:案例:使两张幻灯片中的图片进行平滑切换 [PowerPoint精美幻灯片实战教程]
  15. 常用127个ASK码对照表
  16. Python递归学习6 涂格子问题
  17. Android 怎么实现支持所有View的通用的下拉刷新控件
  18. webpack配置缓存
  19. 转生活中的各种食品安全问题
  20. 为什么需要每年重新签发SSL证书?

热门文章

  1. 怎么利用计算机求一元三次方程,一元三次方程怎么快速把解求出来?
  2. Kotlin入门(27)文件读写操作
  3. html5给文字添加拼音,word怎么为文字添加拼音
  4. String.indexOf 用法
  5. Fail: Failover,Failfast,Failback,Failsafe
  6. 【Collect】免费图片库网站推荐(国外高清可商用)
  7. 分享:微信淘宝客自动查券找券返利机器人实现的原理和思路
  8. 陀螺仪-加速计-磁力计
  9. 相关系数计算机计算方法,计算相关系数的公式(相关系数的计算方法)
  10. python计算定积分_python 求定积分和不定积分示例