En discutant avec un de mes bons amis il m'a fait part de son utilisation de bandwidthd (merci D!). Après quelques essais infructueux j'ai finalement réussi à faire en sorte d'obtenir un état de l'utilisation de la bande passante pour l'ensemble des périphériques sur tous mes réseaux! Le résultat est disponible en temps réel à l'adresse de notre routeur tel que http://192.168.80.1/bandwidthd/

En simple, on installe bandwidthd:

root@OpenWrt|LEDE:~# opkg install bandwidthd

Puisque j'utilise un adressage IP différent que celui par défaut je dois changer la plage sous-réseau à surveiller:

uci set bandwidthd.@bandwidthd[0].subnets='192.168.80.0/24'
uci commit

Puis activer par défaut bandwidthd à l'initialisation du routeur et démarrer le démon:

root@OpenWrt|LEDE:~# /etc/init.d/bandwidthd enable
root@OpenWrt|LEDE:~# /etc/init.d/bandwidthd start

Par défaut bandwidthd fait l'analyse des paquets uniquement sur l'interface br-lan. La liste des périphériques disponibles est disponible via:

root@OpenWrt|LEDE:~# bandwidthd -l
Description: (null)
Name: "eth0"

Description: (null)
Name: "br-lan"

Description: (null)
Name: "br-bell"

Description: (null)
Name: "br-guest"

Description: (null)
Name: "br-media"

Description: (null)
Name: "pppoe-wan"

Description: (null)
Name: "wlan0"

...

Description: Pseudo-device that captures on all interfaces
Name: "any"

Description: (null)
Name: "lo"

Si l'on veut surveiller l'ensemble de nos réseaux alors il faut changer l'interface par défaut par "any" puis ajouter chacun de nos sous-réseaux:

uci set bandwidthd.@bandwidthd[0].dev='any'
uci add_list bandwidthd.@bandwidthd[0].subnets='172.19.80.1/24'
uci add_list bandwidthd.@bandwidthd[0].subnets='10.10.80.1/24'
uci add_list bandwidthd.@bandwidthd[0].subnets='192.168.2.1/24'
uci commit

Puis redémarrer le démon bandwidthd:

root@OpenWrt|LEDE:~# /etc/init.d/bandwidthd restart

Voici l'état de la configuration finale:

root@OpenWrt|LEDE:~# uci show bandwidthd
bandwidthd.@bandwidthd[0]=bandwidthd
bandwidthd.@bandwidthd[0].skip_intervals='0'
bandwidthd.@bandwidthd[0].graph_cutoff='1024'
bandwidthd.@bandwidthd[0].promiscuous='true'
bandwidthd.@bandwidthd[0].output_cdf='false'
bandwidthd.@bandwidthd[0].recover_cdf='false'
bandwidthd.@bandwidthd[0].filter='ip'
bandwidthd.@bandwidthd[0].graph='true'
bandwidthd.@bandwidthd[0].meta_refresh='150'
bandwidthd.@bandwidthd[0].dev='any'
bandwidthd.@bandwidthd[0].subnets='192.168.80.1/24' '172.19.80.1/24' '10.10.80.1/24' '192.168.2.1/24'

À noter que j'ai intégré l'installation de bandwidthd aux autres documentation existantes.