0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看威廉希尔官方网站 视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

怎样绘制家庭路由器指标图

454398 来源:网络整理 作者:网络整理 2019-12-06 17:14 次阅读

威廉希尔官方网站 世界不是很棒吗?所有这些出色的服务和免费软件随处可见。我想分享我对Grafana和InfluxDB的初次经验,目的是制作路由器统计数据的持久,美观,灵活的图形。

问题:我的路由器指标旨在可以在Web-UI的各处找到。有些测量提供了最近几分钟的实时图形,有些则没有。重新启动后,所有统计信息都会重置。我想回到过去,查看吞吐量,温度等。

解决方案:InfluxDB用于持久存储,而Grafana用于可视化。

怎样绘制家庭路由器指标图

InfluxDB 是一个所谓的时间序列数据库(TSDB),专门用于存储数据历史记录,即标记值时间。

Grafana 是一个免费的自包含网站的InfluxDB(和其他TSDB)基于图形的工具。

这两种软件都很容易上手,但功能强大。顺便说一句,我与eiter项目无关。这个项目只是为了让您前进。一旦开始,您可能会发现自己在绘制各种事物。这非常适合物联网应用。例如我将与Openhab一起用于家庭自动化传感器指标(温度,湿度等)的相同设置。

在评论中请使用火焰和赞扬。并且让我知道是否有任何问题无法解决,所以我可以修复它!

步骤1:先决条件

路由器

要开始使用此项目,您需要具有以下功能的基于Linux的路由器:

命令行登录root访问(telnet或ssh)

Cron支持

内部JFFS或USB存储设备上的本地文件存储。这是用于存储脚本的。

上述功能通常没有库存固件,因此您可能必须使用DDWRT,Tomato或类似产品。就我而言,我使用ASUSWRT Merlin。华硕非常有意识地开放其库存固件,而Merlin版本则增加了最少但至关重要的功能。我为此项目使用了 ASUS RT-N66U 。

服务器

第二个前提条件是x86-基于Linux的服务器。它不必超级强大。在本项目中,我使用了带有Ubuntu Server 13.04 LTS和4GB RAM的HP微型服务器。从理论上讲,您可以在不同的处理器体系结构(例如ARM)上运行它,但是您将无法使用预构建的软件包。该服务器不必专门用于InfluxDB。

PC

您需要一台装有终端软件(例如Putty或MobaXterm)的PC或Mac。我更喜欢后者。)

一些知识

此Instructable适用于对命令行Linux有基本了解的人,

步骤2:准备路由器

这对ASUS RT-有效N66U ,我即如果您使用的是其他路由器,则不能按照字母上的说明进行操作。

免责声明! 请勿在路由器上加载自定义固件,除非您知道自己的路由器在做或至少接受一点点的风险,就是将路由器弄乱,直至无法返回(砖状)。我已经在路由器上加载了许多自定义固件,但从未遇到任何问题,但我知道可能会发生问题。但是,使用Merlin for Asus,由于它基于库存固件,因此风险较低。

在PC上,下载MerlinWRT

提取下载的zip 。 .trx文件包含固件。

浏览到路由器管理界面(通常可在http://192.168.1.1找到)

转到:管理-》固件升级。选择下载的.trx文件并上传。

路由器重启后,您将进入Merlin。重新登录。

转到:管理-》系统。启用所有JFFS-stuff。按应用。

重新启动路由器。

验证:

使用终端软件,登录到路由器使用与Web管理员相同的用户名和密码。

验证/jffs是否存在并且包含“ configs”和“ scripts”目录(请参见屏幕截图)。

现在路由器已准备好自定义脚本!

步骤3:准备服务器

如先决条件中所述,您需要一个小型x86于InfluxDB和Grafana的基于(英特尔AMD)的Linux服务器。以下说明可在Ubuntu上使用。请查看Grafana和InfluxDB文档以获取其他发行版的安装指南。

InfluxDB 0.8不是最新版本,但在撰写本文时提供了与应用程序的最佳兼容性。安装方法如下:

在服务器上的命令行登录

如果在64位操作系统上:

$ wget https://s3.amazonaws.com/influxdb/influxdb_0.8.8_amd64.deb

$ sudo dpkg -i influxdb_0.8.8_amd64.deb

如果在32位操作系统上:

$ wget https://s3.amazonaws.com/influxdb/influxdb_0.8.8_i686.deb

$ sudo dpkg -i influxdb_0.8.8_i686.deb

启动守护程序:

$ sudo/etc/init.d/influxdb start

重新启动:

$ sudo update-rc.d influxdb默认值

Grafana 2.1.1安装:

将Grafana安装为此处描述:http://docs.grafana.org/installation/debian/

验证:

通过以下方法验证influxdb浏览到influxdb管理员gui:http://yourserver:8083。以用户root和密码root登录

通过浏览到http://yourserver:3000/login验证grafana。以用户管理员身份登录,密码为admin

步骤4:InfluxDB准备

登录到influxdb http://yourserver:8083/

上的admin(root/root),使用默认设置创建指标数据库(mydb)。查看截图。您可以使用其他名称,但稍后将在说明中更改对mydb的引用。

步骤5:确定指标

现在是决定您要测量什么以及如何测量的好时机。我决定了以下内容(我将提供脚本示例)。对于路由器统计信息,我开始研究 wl 命令,并且我将继续这样做。它是巨大的。它似乎是路由器功能的主要命令行界面。实际上,我认为您可以做在Web UI中可以做的所有事情,甚至更多。我认为这是Broadcom专有的命令,因此如果您使用其他芯片组,则可能必须寻找替代方法。

CPU 使用。我的路由器上没有安装 vmstat 命令(我更喜欢使用),但 top 命令却安装了。可以从以下命令输出中提取CPU使用率:

$ top -bn1 |头-3

内存使用。也可以从 top 命令中提取可用内存和已用内存。请参阅CPU。

温度。每个wifi芯片都有温度读数,这些温度读数深深隐藏在wl命令中。但是,必须转换结果(请参见脚本)。例如:

$ wl -i eth1 phy_tempsense

Ping 。我决定对我的外部访问进行基准测试,以测量对两个已建立网站的ping访问。例如:

$ ping -c1 -W1 http://www.google.com

吞吐量。我认为没有计算就无法提供吞吐量。但是,可以在多个位置找到计数器。/proc/net/dev是一个很好的计数器源。示例:

$ cat/proc/net/dev | tail +3

无线客户端。通过wl命令每个接口/芯片(2.4GHz和5.0GHz)连接的无线设备数:

$ wl -i eth1 assoclist

我对其他测量有想法,但我认为这是一个很好的开始。要记住的一点是,小型家用路由器并不是功能强大的处理设备。太多,太频繁或太复杂的测量都会对路由器性能产生不利影响。

如果您提出了一个致命指标,请分享(评论)!

步骤6:路由器脚本

附加的zip归档文件包含:

router_assoclist.sh -报告已连接无线客户端数量的示例脚本

router_cpu.sh -CPU利用率脚本

router_mem.sh -内存利用率脚本

router_net.sh -网络统计信息脚本。使用流量计数器。

router_ping_ext.sh -用于一个或多个目标的ping往返

router_temp.sh -摄氏2.4GHz和5GHz芯片上的温度。如果您更喜欢华氏温度,请在此处进行数学计算。

routerstats.sh -触发其他脚本的主脚本

todb.sh -该脚本需要三个参数:系列名称,列和数据点。字符串数据会自动加引号,数据会被格式化并发送到目标数据库。

这是安装示例脚本的方式:

登录到路由器命令行

在持久性(jffs)文件系统上创建目录:

#mkdir/jffs/scripts/routerstats

提取zip存档并将文件移动到路由器上的新目录。有几种传输文件的方法,例如G。您可以在管理GUI中使用USB记忆棒或激活SSH(还可以激活SCP文件传输)。如果决定使用SSH/SCP,请使用Filezilla,modaXterm或类似工具将文件传输到路由器。

如果您不知道 vi 编辑器的工作方式,现在是查找它的好时机。它是路由器上唯一的文件编辑器。编辑 todb.sh中的设置: vi/jffs/scripts/routerstats/todb.sh。编辑以下几行以符合您的设置。您可能只需要更改dbhost行:

dbname =“ mydb”

dbhost =“ srv4:8086 ”

user =“ root”

passwd =“ root”

如果您不想学习vi,请先编辑文件,然后再将其移动到路由器。

使脚本每30秒运行一次。以下代码在 services-start 脚本中添加了两行,该脚本在启动时插入了两个cron调度程序条目。在常规的Linux发行版中,cron条目是持久的,您只需运行一次 cru -命令并使用它即可。 Cron仅以分钟间隔执行,因此要获得30s间隔就需要第二行。第二行与第一行同时触发,但在执行任何有用操作之前要等待30秒。

#echo‘cru a routerstats“ * * * * */jffs/scripts/routerstats/routerstats.sh”’》》/jffs/scripts/services-start

# echo‘cru a“ routerstats + 30”“ * * * * *(sleep 30;/jffs/scripts/routerstats/routerstats.sh)”’》 》/jffs/scripts/services-start

验证:

登录到InfluxDB管理员GUI(http://yourserver:8083)

单击mydb旁边的“浏览数据”

输入“列表系列”作为查询(请参见屏幕截图)

步骤7:Grafana可视化

Grafana可视化很有趣。我将为您提供一个示例仪表板,但我鼓励您试用并对其进行调整。可以在Grafana主页上找到优秀视频教程的链接。

创建数据源:

登录到grafana(http://yourserver:3000)

创建数据源mydb(请参见屏幕快照

导入示例仪表板:

下载附件的仪表板文件。该文件包含json的定义整个仪表板。如果需要,请检查出来。它是人类可读的并且可以编辑的。例如,如果您创建的数据源使用除 mydb 之外的任何其他名称,则可以在该文件中进行搜索替换或稍后在GUI中更改数据源。

导入仪表板(请参见屏幕截图)

现在,您应该拥有一个仪表板,它将逐渐填充数据!

责任编辑:wv

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 路由器
    +关注

    关注

    22

    文章

    3732

    浏览量

    113849
收藏 人收藏

    评论

    相关推荐

    5G/4G工业路由器和普通路由器的区别

    在现代网络设备中,路由器是不可或缺的组成部分。无论是在家庭网络中,还是在企业或工业环境中,路由器都发挥着至关重要的角色。然而,市场上的路由器种类繁多,尤其是“工业
    的头像 发表于 12-26 14:23 302次阅读
    5G/4G工业<b class='flag-5'>路由器</b>和普通<b class='flag-5'>路由器</b>的区别

    工业路由器与家用路由器的区别

    本文将从多个角度,对工业路由器与家用路由器进行详细比较,帮助您更好地理解二者的区别。
    的头像 发表于 10-18 17:51 392次阅读

    路由器怎样无线桥接另一个路由器

    在现代家庭和办公室中,无线网络已成为连接设备和访问互联网的基本需求。然而,随着房屋结构的复杂性和设备的增多,单个无线路由器可能无法提供足够的覆盖范围。为了解决这个问题,无线桥接威廉希尔官方网站 应运而生。 无线桥
    的头像 发表于 10-18 09:21 842次阅读

    路由器的IP地址究竟是什么

    路由器已成为家庭网络不可或缺的一部分。尽管我们每日依赖它上网,但我们对路由器仍然是既熟悉又陌生的。我们只知道通过它能上网,却不知道它是怎样使我们连接上互联网的。今天我们将深入探讨一下
    的头像 发表于 08-30 14:38 640次阅读

    家庭路由器如何选?实用技巧让你不再踩坑!

    家庭路由器选购需考虑需求、预算、性能指标、硬件配置、软件功能、认证与测试及售后服务。明确需求,选择适合的型号和品牌,确保网络稳定、高速。遵循这些技巧,避免踩坑,享受网络便利。
    的头像 发表于 04-29 11:38 675次阅读

    工业专用路由器与普通路由器的差异分析

    上来看,普通路由器通常采用美观大方的设计,以塑料材质为主,适合家庭或办公室等室内环境使用。而工业专用路由器则更注重实用性和耐用性,往往采用金属外壳,坚固耐用,能够承
    的头像 发表于 04-27 00:00 897次阅读
    工业专用<b class='flag-5'>路由器</b>与普通<b class='flag-5'>路由器</b>的差异分析

    家用路由器如何选择?

    家用路由器已成为家庭网络的重要组成部分。选择一款合适的家用路由器对于家庭网络的安全、稳定性和性能至关重要。本文将介绍如何选择一款适合您家庭
    的头像 发表于 04-15 17:49 1467次阅读

    如何挑选适合自己的家用路由器

    挑选家用路由器要考虑种类、性能、需求、硬件配置、品牌与售后服务等因素。普通路由器适合一般家庭,高端路由器适合有特殊需求的家庭或企业。需关注传
    的头像 发表于 04-12 14:17 1192次阅读

    家用路由器:简化网络设置和管理,保护家庭网络安全

    家用路由器以其简化网络设置和管理、保护家庭网络安全等优势,成为了家庭网络中不可或缺的重要设备。威廉希尔官方网站 的不断进步和用户需求的不断升级,家用路由器必将继续发挥其优势,为
    的头像 发表于 03-16 11:23 582次阅读

    路由器桥接路由器怎样桥接 路由器桥接好还是中继好

    路由器桥接和中继是常用的网络扩展方式,用于扩大网络覆盖范围,提供更好的网络连接。这两种方式在不同的场景下有着各自的优势,下面将详细介绍如何桥接路由器,以及桥接和中继的优缺点。 一、什么是路由器桥接
    的头像 发表于 02-20 14:26 5560次阅读

    为什么要桥接无线路由器?如何通过网线将两个路由器进行桥接?

    为什么要桥接无线路由器?如何通过网线将两个路由器进行桥接?两台路由器有线桥接的两种方法  为什么要桥接无线路由器? 无线路由器是目前
    的头像 发表于 02-04 14:07 2843次阅读

    mesh路由器组网优缺点有哪些?mesh路由器和普通路由器有什么区别?

    mesh路由器组网优缺点有哪些?mesh路由器和普通路由器有什么区别? Mesh路由器组网优缺点: 优点: 1. 更广阔的覆盖范围:Mesh路由器
    的头像 发表于 02-04 14:07 1w次阅读

    千兆路由器和百兆路由器的区别 万兆路由器有什么好处?

    千兆路由器和百兆路由器的主要区别在于它们的传输速率和端口速率。千兆路由器的传输速率可以达到1000Mbps,而百兆路由器的传输速率仅为100Mbps。
    的头像 发表于 01-29 11:24 2196次阅读

    打造稳定快速的家庭网络,选购高性能4G路由器

    选择高性能4G路由器,关注品牌、网络覆盖能力、信号强度、速度和性能、安全性和易用性等因素。只有综合考虑,才能购买到适合家庭使用的高性能4G路由器,稳定快速地为家庭网络助力。
    的头像 发表于 01-23 17:07 401次阅读

    路由器是干什么用的 路由器怎样桥接另一个路由器

    路由器是一个网络设备,用于将数据包从一个网络传输到另一个网络。它通过控制数据包的路径来实现互联网上多个网络之间的通信。路由器家庭、办公室和企业网络中被广泛使用,以便用户能够访问 Internet
    的头像 发表于 01-19 17:12 1478次阅读