Linux 路由器:客户端带宽

Linux 路由器:客户端带宽

我正在尝试构建一个带有本地 RADIUS 服务器的 Linux 路由器(强制门户)进行身份验证。

我想记录网络上每个客户端使用的带宽。我想将给定时间点的带宽与 MAC 地址关联起来。我的问题是,如何获取网络上当前客户端的带宽?我知道我需要使用 IP 地址来获取此信息,然后查看我的 ARP 表以确定 MAC。

我知道 RADIUS 计费可以做到这一点,但目前我不想使用这种方法。

理想情况下,我会使用这些信息编写一个小型 C 守护程序,将这些数据保存到 mysql 数据库中以供以后分析。

提前致谢!

伊森

答案1

只要 Internet 连接和客户端连接是不同的接口,您就可以在路由级别捕获所有内容。您需要两件东西:NetFlow 导出器通过观察路由过程来生成数据,并NetFlow 收集器收集导出的数据并将其放置在数据库中。

如果收集器仅向您提供 IP 地址,您将需要通过 MAC 地址获取 IP 地址分配,可能来自 RADIUS 会计记录。

相关内容