Nagios Plugin to check interface traffic over snmp (Linux/Windows)
You need to install php-snmp
If you find a bug or have a request, write me.
/usr/bin/php ./check_network.php -H 192.168.2.211 -V
Array
(
[iso.3.6.1.2.1.31.1.1.1.1.1] => STRING: "lo"
[iso.3.6.1.2.1.31.1.1.1.1.2] => STRING: "enp0s3"
[iso.3.6.1.2.1.31.1.1.1.1.3] => STRING: "enp0s8"
[iso.3.6.1.2.1.31.1.1.1.1.4] => STRING: "enp0s8.111"
)
/usr/bin/php ./check_network.php -H 192.168.2.211 -n 2 -w 80 -c 90
OK - enp0s3 (1000 Mbit/s) - In: 0.09% (113.211 KB/s ) - Out: 0.02% (28.625 KB/s) | IN=0.088%;80.000;90.000;0;100.000 OUT=0.022%;80.000;90.000;0;100.000
/usr/bin/php ./check_network.php -H 192.168.2.211 -i enp0s3 -w 80 -c 90
OK - enp0s3 (1000 Mbit/s) - In: 0.09% (113.211 KB/s ) - Out: 0.02% (28.625 KB/s) | IN=0.088%;80.000;90.000;0;100.000 OUT=0.022%;80.000;90.000;0;100.000
/usr/bin/php ./check_network.php -H 192.168.2.210 -n 3 -o MB -w 80 -c 90
OK - enp0s31f6 (1000 Mbit/s) - In: 0.039 MB/s - Out: 3.964 MB/s| IN=0.039;100.000;112.500;0;125.000 OUT=3.964;100.000;112.500;0;125.000
/usr/bin/php ./check_network.php -H 192.168.2.210 -n 3 -o MB -w 80 -c 90
WARNING - enp0s31f6 (1000 Mbit/s) - In: 0.736 MB/s - Out: 106.998 MB/s| IN=0.736;100.000;112.500;0;125.000 OUT=106.998;100.000;112.500;0;125.000
/usr/bin/php ./check_network.php -H 192.168.2.210 -n 3 -o Kb -w 80 -c 90
OK - enp0s31f6 (1000 Mbit/s) - In: 3726.530 Kbit/s - Out: 544517.553 Kbit/s| IN=3726.530Kbit;800000.000;900000.000;0;1000000.000 OUT=544517.553Kbit;800000.000;900000.000;0;1000000.00
/usr/bin/php ./check_network.php -H 192.168.2.11 -n 7 -s 15 -l LAN
OK - LAN (1000 Mbit/s) - In: 0.00% (2.450 KB/s ) - Out: 0.00% (1.172 KB/s) | IN=0.002%;;;0;100.000 OUT=0.001%;;;0;100.000
Usage: |
/usr/bin/php check_network.php -H [HOST] -P [snmp_version] -n [node] -i [interface_name] ( -l [label] -s [seconds (default=5, max=60)] -o [output/perfdata] -w [Warning] -c [Critical] -d (debug) -V (debug interfaces) -I (debug input interfaces) -O (debug output interfaces) -S (debug interfaces status))
|
snmp_version 2 | -C [community string] (default -C public) |
3 | -u [user] -p [password] -a [auth. prot. (MD5/SHA] ( -x [priv. proto. (DES/AES)] -X [priv. password]) |
-n node | network node or |
-i interface | network interface name |
-s seconds | check period (default=5, max=60) |
-o output/perfdata |
%=percent and KByte/MByte (default) |
-l label |
Version 1.20220406
correct status, if the value is alphanumeric
Thank's to Ludmil over mail
Version 1.20220328
correct debug mode
Version 1.20220222
add interface -i
Version 1.20211206
help added version and contact
Version 1.20210429
changed -m to -o (equal to the other scripts
check_mem.php, check_disk.php)
Version 1.20210304
add seconds -s (check period of interface)
add label -l
add Debug Input/Output (-I/-O)
Version 1.2021301
default output "MB" missed
Version 1.2021018
corrected typo error
Version 1.20210217
add -m output/perfdata
Version 1.20210215
First Release