查看: 1012|回复: 16

[DD-WRT] ddwrt自动踢弱信号终端

[复制链接]

主题

好友

640

积分

中尉

签到天数: 47 天

[LV.5]常住居民I

发表于 2016-9-25 23:34 |显示全部楼层
TG-NET
Anywlan微信公众号
我家里三层小楼房,每层装了一个刷DD的路由关dhcp作ap用,看了dato水桶原理的帖子后,发现我正需要这个自动踢弱信号的功能。
本人什么都不懂,对这些命令啊脚本啊更是一窍不通。。
于是我把脚本复制到“管理”的“指令”里,保存为启动指令后重启路由,
先连上一楼的信号然后跑上三楼,手机显示只有一点信号了,连网页都打不开了它还死连着一楼的信号。好像没什么作用
我又试点运行命令,不行。又保存自定义指令,也是不行。
来回折腾了几个小时,都是不行。爬楼梯都快爬断气了。

在接下的几天里,基本上不眠不休折腾了几天。期间学习了大量的linux命令。终于有了一点眉目,已经能显示弱信号的mac和信号强度,但还是不踢掉
差点就放弃了,想想又不甘心。又再潜心学习了几天,才发现原来是新版DD的iwpriv命令不能正常工作。,抱着试试看的心态刷了个10年的版本。居然能踢掉了。
最后把脚本存为自定义指令,再在cron里设定每分钟运行一次脚本,等于一分钟踢一次弱信号。终于可以正常使用了。高兴之情,无以言表。。。。。。。。。。。(个中曲折离奇,就不一一细说了。。说多都 是泪啊。。。。。多次试验后证实11年6月前的DD版本可用,之后的就不行了)


但这方法有个问题,AP的可用内存会越来越少,三天内必死,必需重新上电才行,虽然可以设定每天定时重启,但心里始终不舒服


又一个多月的学习研究(都 是泪啊!!!)
用以下脚本 ,终于可以完美稳定运行,(每分钟踢一次改进为每秒踢一次。基本接近无缝漫游的效果。内存不再越来越少)


一,管理-命令。把以下脚本存为自定义指令
  1. #!/bin/sh
  2. #for i in `arp -a | cut -d ' ' -f4`;
  3. for i in `wl_atheros $(nvram get ath0_ifname) assoclist | cut -d" " -f2`;
  4. do
  5. ALL_count=$(wl_atheros rssi $i | cut  -d"-" -f2)
  6. if [ $ALL_count -gt 80 ] ;then
  7. mac=$i
  8. iwpriv ath0 kickmac $i
  9. fi
  10. done
复制代码
二,把以下脚本存为开机指令
  1. #!/bin/sh
  2. set j=2
  3. while true
  4. do
  5. /tmp/custom.sh
  6. sleep 1
  7. done
复制代码


其实我上面乱七八糟打了这么多字,真正用意是想问一下论坛里的大侠。高人,有谁知道12年后的ddwrt有什么命令可以实现 iwpriv ath0 kickmac 的效果,如能指点一二,小弟将感激不尽,终生铭记。。。

评分

2

查看全部评分

主题

好友

17

积分

新兵上阵

该用户从未签到

发表于 2016-10-15 23:33 |显示全部楼层
南人 发表于 2016-10-1 21:59
请问兄台,山寨UBNT网桥(7241+9287)刷12年后的DD,改成什么程序了。我现在发现11年的用这个脚本内存还 ...

因为我没用过,所以具体情况我也不了解。就我来说,我的是用hostapd来发射的wifi,所以使用
  1. hostapd_cli deauthenticate MAC地址
复制代码
就可以让客户端下线。
你要看具体是什么模式你可以用iwconfig看。
至于脚本内存越占越多,那是因为你是用单循环来搞的,而且虽然sleep了1秒,但是平均占用率可不低。建议使用cron来实现定时任务,周期降到5s(不得不说Linux上软件质量还是有待提高)。
至于wifi切换那是客户端的问题了,自动切换应该是wifi芯片快进入休眠模式的时候,它会扫描下再切换,为的是不打断你当前任务、节能。
回复

使用道具 举报

主题

好友

3534

积分

少校

签到天数: 440 天

[LV.9]以坛为家II

发表于 2016-9-25 23:56 手机上Anywlan 随时随地无线:http://m.Anywlan.com |显示全部楼层
感谢楼主分享经验!我收藏了
回复

使用道具 举报

主题

好友

2157

积分

少校

签到天数: 135 天

[LV.7]常住居民III

发表于 2016-9-26 01:48 |显示全部楼层
支持折腾。。。。
回复

使用道具 举报

主题

好友

1299

积分

上尉

该用户从未签到

发表于 2016-9-26 04:14 |显示全部楼层
mark 有需要时使用
回复

使用道具 举报

主题

好友

2248

积分

少校

签到天数: 537 天

[LV.9]以坛为家II

发表于 2016-9-26 08:23 |显示全部楼层
帮顶,谢谢楼主,这宝贵的实战经验……。
回复

使用道具 举报

主题

好友

978

积分

中尉

签到天数: 1 天

[LV.1]初来乍到

发表于 2016-9-26 08:45 手机上Anywlan 随时随地无线:http://m.Anywlan.com |显示全部楼层
踢自己吗?何不在终端设置?
回复

使用道具 举报

主题

好友

4619

积分

少校

签到天数: 479 天

[LV.9]以坛为家II

发表于 2016-9-26 09:38 |显示全部楼层
这个还是很实用的,谢谢楼主的分享,谢谢,顶上!
回复

使用道具 举报

主题

好友

3106

积分

少校

签到天数: 320 天

[LV.8]以坛为家I

发表于 2016-9-26 10:01 |显示全部楼层
本帖最后由 zhaocz 于 2016-9-26 10:04 编辑

其实我们都没有进到楼主这一步,只能是向楼主学习了!https://forum.openwrt.org/viewtopic.php?id=48893
openwrt 论坛上也只说到这个。
回复

使用道具 举报

主题

好友

4292

积分

少校

签到天数: 287 天

[LV.8]以坛为家I

发表于 2016-9-26 10:09 手机上Anywlan 随时随地无线:http://m.Anywlan.com |显示全部楼层
我也说一句,记得某些路由器支持弱信号踢出,ub也支持的吧。
回复

使用道具 举报

主题

好友

452

积分

少尉

签到天数: 6 天

[LV.2]偶尔看看I

发表于 2016-9-26 11:19 |显示全部楼层
Anywlan因您更精彩!
回复

使用道具 举报

主题

好友

640

积分

中尉

签到天数: 47 天

[LV.5]常住居民I

发表于 2016-9-26 20:24 |显示全部楼层
jixianwu 发表于 2016-9-26 08:45
踢自己吗?何不在终端设置?

我也想在终端设置。。
这个以前研究过一段时间了,家里大大小小各种手机平板居然都找不到设置的地方(可能是咱穷人用低端货的原因吧,呵呵)
倒是一个朋友的OPPO R1C,各个同名称同密码的AP连过一次之后,不管当前连接的AP信号多好,只要另一个信号比当前强20db,1--20秒内就自动切换到强信号的AP上。其他水果鸭梨的机型咱没有就没试过了。
回复

使用道具 举报

主题

好友

1575

积分

上尉

签到天数: 71 天

[LV.6]常住居民II

发表于 2016-9-26 20:54 |显示全部楼层
这个nb。。。需要。。上个星期还找资料呢。。我自己就是个小白。。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 我要加入

本版积分规则

Archiver| 手机版| 中国无线门户 ( 粤ICP备11076993 )  |网站地图    小黑屋 | 免责声明

GMT+8, 2016-12-9 06:08

Powered by Discuz! X3.2

© 2003-2013 广州威思信息科技有限公司

返回顶部 返回列表