我最近注意到我的安卓手机(droid dna,虽然我之前用的 thunderbolt 也做了同样的事)正在快速向我的 dhcp 服务器(debian squeeze 上的 isc-dhcp-server)请求 dhcp 信息。我最初只是以为是 thunderbolt 在做这件事,虽然我最近注意到 droid dna 也在做同样的事情。这两部手机是网络上唯一这样做的东西(据我所知只有安卓手机),其他手机从未这样做过。现在的设置包括处理路由、dhcp 等的服务器,然后连接到 24 端口交换机(tplink,非托管),然后转到任何以太网连接和 2 个 linksys e4200 无线路由器(桥接/ap 模式)。每次手机连接到网络时都会发生这种情况。这种情况也发生在另一个网络上,该网络有 dchp3-server、dell powerconnect 8 端口非管理型交换机和接入点模式的 tplink 1043nd 无线路由器。以下是日志活动本身的屏幕截图:
我的 isc-dhcp-server 配置文件包含以下内容:
option domain-name "kingston.org";
subnet 192.168.1.0 netmask 255.255.255.0 {
max-lease-time 909200;
default-lease-time 604800;
#authoritative;
option routers 192.168.1.1;
option broadcast-address 192.168.1.210;
option domain-name-servers 192.168.1.1;
option subnet-mask 255.255.255.0;
range 192.168.1.2 192.168.1.200;
}
host duxbury {
hardware ethernet 00:24:8c:ea:f0:7d;
fixed-address 192.168.1.111;
}
host lancaster {
hardware ethernet 00:21:5e:56:aa:a4;
fixed-address 192.168.1.160;
}
说了这么多,有人能给我提点建议吗,我可以做些什么来解决这个问题或预防它?老实说,我现在不知道该怎么办,这很烦人,谢谢你的帮助!
编辑:
这里还有我启动 dhcp 服务器时显示的行(有一段时间没有设置“租用时间”,网络平均有 12-15 个设备处于活动状态):
Mar 30 17:04:00 Kingston dhcpd: Wrote 0 deleted host decls to leases file.
Mar 30 17:04:00 Kingston dhcpd: Wrote 0 new dynamic host decls to leases file.
Mar 30 17:04:00 Kingston dhcpd: Wrote 88 leases to leases file.
此外,这是 brctl show 的输出(我有一张使用 hostapd 设置的 wifi 卡,但由于覆盖范围不够,目前尚未启用,两个 e4200 设置在房屋的两侧)。另外,其他网络设置(使用 dhcp3-server 等的网络设置)不使用桥接
bridge name bridge id STP enabled interfaces
br0 8000.000d9d571396 no eth1
wlan0
答案1
我可以确认 Nexus 7 和 isc-dhcp-server 也存在同样的问题。我能够规避为设备的 MAC 地址保留地址可以在一定程度上解决这个问题。但是,当有访客连接到网络而他们没有保留地址时,这种方法就无济于事了。
通过 iptables 日志记录请求/响应流程,我可以看到服务器正在响应,但 Android 设备由于某种原因(我知道不是很准确)不喜欢该响应。当您无法长时间保持连接时,这会造成非常令人沮丧的用户体验。
值得一提的是,我还发现许多用户已经在 Android 端报告了此问题,但据我所知,似乎没有得到任何解决。