关于ip带宽控制规则配置的应用

个性定制+智能家居
行业巨头亏损上亿
面对挑战我们回归根本
顶固:什么是智能产品?安防之声
邦奇:打造定制化产品
大数据应用初成气候安防贴士
交易播报:&&&&&&&&&&&&
DVR、NVR、云存储现状和发展
???
1F 监控设备
红外摄像机使用注意事项
远程监控或成可能
沪出租车监控全覆盖
综合布线智能化发展
?(07/15)?(07/14)?(07/11)?(07/11)?(07/07)?(07/07)?(07/07)
5K版显示器
2F 防盗/门禁
家用门禁或成黑马
机场乘机“可刷脸”
停车场道闸控制器使用
¥888.8811
防盗报警市场保持增长
报警系统护航家庭防盗
?(07/15)?(07/15)?(07/14)?(07/12)?(07/05)?(07/05)?(07/01)
楼宇对讲设计原则和依据标准
楼宇对讲问题及维修
楼宇对讲产品三因素
智能家居市场策略
智能家居盛典圆满落幕
智能家电的儿童市场
[行业协会]
[行业媒体] |
[大众媒体] |政府金融企业运营商教育
国家工商总局
国土资源部
河北沧州一中
华东师范大学
中国人民大学
07-13-1607-10-1606-30-1606-21-1606-08-16
02-08-1602-02-1612-29-1505-02-1604-18-16
关注我们:使用 Python 持续解除路由器IP带宽控制 - JerryZone
在这个站点登录
保存我的登录记录
打赏支付方式:
喵,给Po主家猫买罐猫粮吧(~ ̄▽ ̄)~
捐赠JerryZone
微信:JCoding
展开分类目录
在路由器中,有个选项是IP带宽控制,这一项用于ADSL宽带上网的用户用于控制网速。由于ADSL上网的机制问题,ADSL宽带的上传带宽会相对小于下载带宽,尤其是在局域网内存在P2P协议软件时会因为其大量占用上传带宽而导致网络速度卡顿。同时,这样一个功能也可以用于对于局域网内设备的网络限速。在这里,我将介绍一种方法,用于保持禁用IP带宽控制。
首先来看下路由器。我实验用的路由器是TP-Link的TL-WR886N。这款路由器的管理员没有对用户名进行要求,只是有一个用于登录的密码。
通过分析这个页面的代码,发现他的登录机制非常简单:
function PCSubWin(){
if(CheckPswLength() == true ){ //判断了一个字符长度和格式
var password = $(&pcPassword&). //读取数据
var auth = &Basic &+Base64Encoding(&admin:&+password); //生成cookie内容
document.cookie = &Authorization=&+escape(auth)+&;path=/&; //设定cookie
location.reload(); //刷新页面进入后台
这段代码非常明显是先将密码加上前缀”admin: “,随后进行Base64算法加密,最后在密码的前面加上”Authorization=Basic “存入Cookie,随后刷新页面即可登录成功。看到这里,或许读者已经知道如何登录路由器页面了。只要在登录的时候将这一过程还原,存入Cookie,再带Cookie访问主页即可。这里我们使用Python脚本。
先说下Python脚本中的网络编程。
网上有两种,一种是使用Httplib模块,另一种是使用urllib2模块。经过了解,这两种方式在简单的GET、POST请求上功能类似,但是在更加高级的功能上,后者更加灵活,但是会稍稍复杂些。这里我只介绍Httplib模块的使用。
HTTPClient=None
HTTPClient = httplib.HTTPConnection('domain',port,timeout=30) #创建对象
HTTPClient.request(&GET/POST&,&URL&,header=headers) #请求地址
HTTPResponse=HTTPClient.getresponse(); #获得相应
print HTTPResponse.read(); #读取原文
except Exception,e:
print e #抓取异常
if HTTPClient:
HTTPClient.close() #记得关闭连接
到这里,我们就可以开始登陆路由器部分的编写。
import httplib
import urllib
HTTPClient = None
DeninPram = urllib.urlencode({
&QoSCtrl&:0,
&userWanType&:0,
&down_bandWidth&:102400,
&up_bandWidth&:102400,
&Save&:&%B1%A3%20%B4%E6&
Header = {
&Host&:&192.168.1.1&,
&User-Agent&:&Mozilla/5.0 (Windows NT 10.0; WOW64; rv:42.0) Gecko/ Firefox/42.0&,
&Accept&:&text/html,application/xhtml+xml,application/q=0.9,*/*;q=0.8&,
&Accept-Language&:&zh-CN,q=0.8,en-US;q=0.5,q=0.3&,
&Referer&:&http://192.168.1.1/userRpm/QoSCfgRpm.htm&,
&Cookie&:&Authorization=Basic%20这里可以直接从Firefox中拷出来,省事; ChgPwdSubTag=&,
&Connection&:&keep-alive&
HTTPClient = httplib.HTTPConnection('192.168.1.1',80,timeout=30)
HTTPClient.request(&GET&,&/&,headers=Header)
HTTPResponse=HTTPClient.getresponse();
print HTTPResponse.read();
except Exception,e:
if HTTPClient:
HTTPClient.close()
如果我们看到的输出内容是登陆页面的HTML代码(例如下图),那么说明我们登陆路由器后台失败。
如果我们看到的输出内容是后台主页的主题框架的HTML代码(例如下图),说明我们的头部设定是正确的。
那么我们可以进行下一步。我们点到IP带宽控制这一模块。发现这里有一个总开关。如果我们使用代码持续发送关闭这一开关的请求,即可禁用IP带宽控制。
首先我们先分析下关闭请求。直接打开FF的网络监控,随后关闭开关,然后点击保存,看到如下一个请求:
看到GET了一个地址,参数有5个,其中最重要的是一个QoSCtrl参数,0为关闭限制,1为开启限制,其余的四个参数的意义如下,需要的读者可以参考:
QoSCtrl:是否打开限制
0:关闭限制
1:打开限制
userWanType:用户WAN类型
0:ADSL线路
1:其他线路
down_banWidth:下载带宽 单位Kbps,注意单位是千位/秒
up_banWidth:上传带宽 单位Kbps,注意单位是千位/秒
Save:貌似只是一个按钮而已,无视他,直接赋值&保存&
那么我们就可以构建一个GET请求,直接带着上面的Cookie向路由器请求,即可让路由器关闭IP带宽控制。后来我发现并不需要具体的请求登录等等过程,直接向这个网址进行GET请求即可到达到关闭带宽控制的目的。最后在所有代码的最外层加上一个死循环,持续请求即可。以下是最终的代码:
import httplib #引入Httplib
import urllib #urllib用于UrlEncode算法转换地址
import time #time用于延时模块
HTTPClient = None
while True:
#准备异常获取
#禁用请求的参数
DeninPram = urllib.urlencode({
&QoSCtrl&:0,
&userWanType&:0,
&down_bandWidth&:102400,
&up_bandWidth&:102400,
&Save&:&%B1%A3%20%B4%E6&
#构建头部,直接从FireFox中拷出来
Header = {
&Host&:&192.168.1.1&,
&User-Agent&:&Mozilla/5.0 (Windows NT 10.0; WOW64; rv:42.0) Gecko/ Firefox/42.0&,
&Accept&:&text/html,application/xhtml+xml,application/q=0.9,*/*;q=0.8&,
&Accept-Language&:&zh-CN,q=0.8,en-US;q=0.5,q=0.3&,
&Referer&:&http://192.168.1.1/userRpm/QoSCfgRpm.htm&,
&Cookie&:&Authorization=Basic%20这里是加密的密码%3D%3D; ChgPwdSubTag=&,
&Connection&:&keep-alive&
HTTPClient = httplib.HTTPConnection('192.168.1.1',80,timeout=30)
HTTPClient.request(&GET&,&/userRpm/QoSCfgRpm.htm?&+DeninPram,headers=Header)
HTTPResponse=HTTPClient.getresponse();
#如果请求成功,那么就1分钟后进行下一次请求
if HTTPResponse.status==200:
time.sleep(60)
except Exception,e:
#最后记得关闭连接
if HTTPClient:
HTTPClient.close()
当然,只是在自己的电脑上使用并不能够满足需求,我就把它在我的树莓派上持续24小时后台运行了。
&手机扫描左边的二维码,立刻将文章收入手机!
&微信扫描左边二维码,点击右上角即可分享到朋友圈!
码字很辛苦,转载请注明来自[]的您所在的位置: &
宽带路由器中关于IP带宽控制功能的详解
宽带路由器中关于IP带宽控制功能的详解
随着宽带路由器的快速发展,其技术也更加的先进,很多功能上的优化对于用户的使用来讲,也更加的方面快捷。IP带宽控制功能能够使路由配置更加的简单灵活。
宽带路由器中IP带宽控制功能是很重要的,它的主要作用就是合理的进行带宽分配,更加灵活的进行。宽带路由器的使用让我们节省了宽带费用,但由于是共享环境,同一条线路下面,某人正在高速的从互联网下载电影,而他的邻居连网页也无法打开。
这种带宽分配的不公平给许多人带来了困扰。如何合理、公平的利用带宽?TP-LINK部分SOHO宽带路由器升级了&IP带宽控制功能&,提供多种带宽分配方案,灵活配置,对于多户共享宽带的环境非常实用。下面我们就来简单介绍一下IP带宽控制功能的配置使用。
1.升级后登录宽带路由器管理界面后,可以在左边看到IP带宽控制菜单,在这里您可以针对不同用户的IP地址设置不同的模式和带宽大小。
2.首先是勾选上面的开启IP带宽控制,下面才可以具体进行设置。在选择宽带线路类型及填写带宽大小时,请根据实际申请的带宽业务进行选择和填写,如不清楚,请咨询您的带宽提供商(如电信、网通等)。如:您申请的是电信2M ADSL,需要选择线路类型&ADSL&,带宽大小填入2000即可。
3.配置指导:
保障最小带宽(推荐方案):受该条规则限制的IP地址(或IP地址段)的带宽总和至少可以达到此值,最大不受限制。此模式最大限度的充分利用带宽资源。带宽大小的设置一般=总带宽 / 电脑台数。假设2M ADSL线路上有四台PC,那么每台电脑可获得的带宽是K。该模式可以让电脑在线路繁忙时最少可以获取500K带宽,体现了公平原则;在线路空闲时可以充分利用带宽,体现了合理原则。
限制最大带宽(配置简单的方案):受该条规则限制的IP地址(或IP地址段)的带宽总和最多只能达到此值。此模式可以很好、快速地限制内网个别用户BT、迅雷等下载占用大量的带宽,正所谓&一键封喉&,可以马上控制他的下载速度。如发现李四在开启BT下载,影响了别人使用。您就可以设置这样一条目:192.168.1.11限制最大带宽为500Kbps,设置后李四的机子在带宽充足情况下都不能超过设置的500Kbps,如(图3)设置;
498)this.width=498;' onmousewheel = 'javascript:return big(this)' src="/files/uploadimg/9590.jpg" alt="" />
1、上面的每一个条目设置的是一个IP地址,一般不要设置成IP地址段。
2、宽带路由器升级了IP带宽控制功能后,如果以后还有升级,请先关闭IP带宽控制功能后再升级。
&【责任编辑: TEL:(010)】
关于&&的更多文章
路由器是工作在OSI参考模型第三层――网络层的数据包转发设备。
日,'云领课堂、智慧创新――2016 锐捷网络云课堂云网络交流研讨会'在福州福建会堂成功举行。
讲师: 10人学习过讲师: 37人学习过讲师: 16人学习过
当下,软件与应用也已成为CIO部署、发展其基础架构时
金秋九月,是收获的季节,同样也是IT厂商展示技术成果
华三云实验室是什么? 这是一款华三研发工程师专业开
本书是按照全国计算机技术与软件专业技术资格(水平)考试《网络管理员考试大纲》的要求,参照《网络管理员教程》及近年来考试试
51CTO旗下网站}

我要回帖

更多关于 ip带宽控制规则配置 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信