如何使用 MRTG 监控动态网络接口?(*nix)

如何使用 MRTG 监控动态网络接口?(*nix)

每次我重新启动 OpenVPN 隧道时,它都会增加接口的数量并破坏该接口的 MRTG 图。

IF-MIB::ifName.76 = STRING: tun_w

重启后:

IF-MIB::ifName.77 = STRING: tun_w

有什么办法可以解决它吗?

答案1

编写一个脚本,在接口重新启动时重新生成 MRTG 配置。此外,调整 MRTG 配置以根据 IP 地址定位接口。具体来说,如果您使用 来cfgmaker构建配置,则传递该--ifref=ip选项,假设您的 IP 是一致的。如果您的 IP 不一致,则检查手册页中的其他 ifref 选项,看看是否有任何选项适用于您的设置。

如果 conf 文件是手动编辑的怎么办?

在您手动创建的主配置文件中使用 include 指令来包含另一个配置文件。类似于Include: vpn-interface.cfg。然后使用在 VPN 启动/重新启动时发生的脚本来更新该配置片段。

由于您正在使用 OpenVPN ,您可能会使用 OpenVPN 选项--up-restart、、和选项链接到更新该 VPN 配置文件的脚本。--up--ipchange--down

编写脚本,在界面

答案2

当你创建 MRTG cfg 文件时,不要通过数字来识别接口。相反,应该通过 ifName 或类似名称来识别。

例如,这通过 ifName 来识别设备,

Target[tun_w]: #tun_w:public@router

如果 ifName 不唯一,则尝试 ifDescr(使用反划线来转义描述中的任何空格或冒号):

Target[tun_w]: \tun_w:public@router

或者,使用 ifType (以 % 为前缀) 或以太网地址 (以 ! 为前缀)

其中之一应该允许您唯一地标识接口,尽管其 ifIndex 经常变化。

相关内容