参考にしたページは 独学で目指すネットワーク入門と SNMPによるネットワークモニタリング。
ルータから情報を取ってきてうんぬんも、個人で使うようないわゆるブロードバンド ルータはSNMPに対応していないものがほとんどで、対応しているのは ちゃんとした(?)CISCOのルータやYAMAHAのRT10xだけらしい。 (参考)
SNMPやMRTGの設定をきちんとするとネットワークの使用状況だけでなく、 他にもいろいろな統計がとれるようだが、取りあえず動かしてみる。
設定が必要なのはsnmpd.confとmrtg.cfg。
まずはsnmpdの設定。snmpd.confは/etc/snmp/snmpd.conf。
変更したのは以下の通り。
com2sec readonly default public com2sec readwrite default private を com2sec mynetwork 192.168.10.0/24 public com2sec local 127.0.0.1 private に
group MyROSystem v1 paranoid group MyROSystem v2c paranoid group MyROSystem usm paranoid をすべてコメントアウト
group MyROGroup v1 readonly group MyROGroup v2c readonly group MyROGroup usm readonly group MyRWGroup v1 readwrite group MyRWGroup v2c readwrite group MyRWGroup usm readwrite を group MyROGroup v1 mynetwork group MyROGroup v2c mynetwork group MyROGroup usm mynetwork group MyRWGroup v1 local group MyRWGroup v2c local group MyRWGroup usm local に
syslocation Unknown (configure /etc/snmp/snmp.local.conf) syscontact Rootようは参考にしたページをまねてsec.nameをreadonlyからmynetworkに、 readwriteをlocalに変更し、com2secのsourceを自分のネットワークの環境 にあわせて変更。(configure /etc/snmp/snmp.local.conf) を syslocation Debian GNU/Linux (Clare) syscontact Kazuhiko Shioji
ここまでで問題がなければrootで起動する。
# /etc/init.d/snmp start
snmpwalkを使って
$ snmpwalk 192.168.10.30 public .とし、答えが返ってきたらOK。(192.168.10.30はLinuxのNICのIPアドレス)
$ cfgmaker --global 'WorkDir: /var/www/MRTG' \ --global 'Options[_]: bits,growright' \ --output /var/www/MRTG/mrtg.cfg public@192.168.10.30とする。
エラーなくmrtg.cfgができたら、/etc/cron.d/mrtgを作る。
内容は
*/5 * * * * root /usr/bin/mrtg /var/www/MRTG/mrtg.cfg \ --logging /var/log/mrtg.logこれで、5分ごとに/var/www/MRTG/に以下のファイルが作られ更新される。
192.168.10.30_2.html 192.168.10.30_2.log 192.168.10.30_2-day.png 192.168.10.30_2-week.png 192.168.10.30_2-month.png 192.168.10.30_2-year.pngあとは192.168.10.30_2.htmlをWeb browserで呼び出せば完了。