openwrt下的流量统计软件bandwidthd-pgsql的使用体验

由于我对 tomato 路由器固件情有独钟,非常喜欢它的流量统计功能,非常全面和漂亮。但是由于它对路由器的支持范围很有限,我的新路由器已经不在其支持之列,而旧的路由器性能又跟不上,所以我不得不离开。然后在网上找了很久,都没有找到合适的替代品。直到近来发现了 bandwidthd,才重新找回了 tomato 的影子:可以详细记录每一个内网 IP 的流量信息。现介绍给大家!

bandwidthd有3个版本,bandwidthd、bandwidthd-sqlite、bandwidthd-pgsql。bandwidthd 安装使用最简单,很容易上手,建议你用这个,基本功能也够用了。后面两个是支持数据库的版本,较为复杂,当确实有需要时再考虑吧。我这里就介绍一下 bandwidthd-pgsql、bandwidthd 吧。而 bandwidthd-sqlite 是将数据库保存在本设备之上,一般的机器也不满足那个条件(对内存和闪存要求高),所以我也没有尝试了。bandwidthd 可以将数据(不是数据库,是以逗号间隔的数据)保存在本设备的根下(或外置USB设备上),但我觉得比较伤U盘或路由器闪存(每 2.5 分钟左右保存一次数据),所以不建议使用。因此,用 bandwidthd,默认的情况下,是不保存数据的,一切存在内存里,当我们重启设备,或者断电以后,以前的记录就都丢失了,新的记录从零开始。一般来说,这样其实也没有什么;相反,它的流量网页全部静态化,打开速度很快,而使用数据库时的速度却很慢。

好了,现在我们先介绍一下 openwrt 下 bandwidthd-pgsql(bandwidthd)的安装,以及不带数据库的使用。

一、openwrt 下  bandwidthd-pgsql 的安装及使用

以 openwrt-19.07.8 为例介绍其使用方法。先看看其页面(总数据表、总流量图、单个IP的流量图):



1. 软件的安装
进入“系统--软件包”,点击“更新列表”,然后在“筛选器”里输入“band”,选择“bandwidthd-pgsql”(或 bandwidthd),安装即可

2. 修改配置
以 ssh 的方式进入路由器(我是用了winscp和putty),修改 /etc/config/bandwidthd(没有介绍的暂时不管)

config bandwidthd
	option dev		br-lan
	option subnets		"192.168.1.0/24"
	option skip_intervals	0
	option graph_cutoff	1024
	option promiscuous	true
	option output_cdf	false
	option recover_cdf	false
	option filter		ip
	option graph		true
	option meta_refresh	150

进一步解释(其余有待进一步探索):
用 ifconfig 命令查看自己的主网卡,修改上面的第二、三行,其余可以不修改。
option dev:如果填写 any 表示监控所有。针对使用 wifi 的连接,流量是双倍
option subnets:监控网段,按实填写
option graph_cutoff 1024:达到1M流量才生成页面
option promiscuous true:网卡工作模式采用混杂模式
output_cdf: 设置为 true,表示将数据以逗号间隔的方式保存在路由器的根下
recover_cdf: 设置为 true,表示启动时读取上面的保存值,成套使用
option meta_refresh 150:每隔150秒自动刷新你查看流量的网页页面,我设置的0,表示不刷新

修改完成以后,启动它

/etc/init.d/bandwidthd start

等 2.5 分钟,在浏览器的地址栏输入 “路由器的ip地址/bandwidthd” 就可以看到流量了(就是上面的样子)。

到这里,一般看看每一个IP的流量,真的足够了(像我的机器要是不折腾,一年停电也就 2-3 次以内,足够我们看了;而且半年以前的流量,也许主机与IP都不对应了,真的有价值吗?值得怀疑)。不用数据库保存几年数据的就到此为止吧。


100%(4)

0%(0)
1 2 3下一页

发表评论

*