print_huntgroups.pl 1.1 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253
  1. #!/usr/bin/perl
  2. #
  3. # Copyright (C) Roman Dmitriev, rnd@rajven.ru
  4. #
  5. use utf8;
  6. use warnings;
  7. use Encode;
  8. use open qw(:std :encoding(UTF-8));
  9. no warnings 'utf8';
  10. use FindBin '$Bin';
  11. use lib "/opt/Eye/scripts";
  12. use strict;
  13. use DBI;
  14. use Data::Dumper;
  15. use Socket;
  16. use eyelib::config;
  17. use eyelib::main;
  18. use eyelib::net_utils;
  19. use eyelib::database;
  20. use eyelib::common;
  21. my %huntgroups=(
  22. '2'=>'eltex',
  23. '3'=>'huawei',
  24. '4'=>'zyxel',
  25. '5'=>'raisecom',
  26. '6'=>'snr',
  27. '7'=>'dlink',
  28. '8'=>'aliedtelesys',
  29. '9'=>'mikrotik',
  30. '10'=>'netgear',
  31. '11'=>'ubnt',
  32. '15'=>'hp',
  33. '16'=>'cisco',
  34. '17'=>'maipu',
  35. );
  36. my @device_list = get_records_sql($dbh,"SELECT * FROM devices WHERE device_type<=2 ORDER BY device_name" );
  37. foreach my $device (sort @device_list) {
  38. my @auth_list = get_records_sql($dbh,"SELECT * FROM user_auth WHERE deleted=0 AND user_id=?",$device->{user_id});
  39. print "#$device->{device_name}\n";
  40. foreach my $auth (sort @auth_list) {
  41. if (exists $huntgroups{$device->{vendor_id}}) {
  42. print "$huntgroups{$device->{vendor_id}} NAS-IP-Address == $auth->{ip}\n";
  43. }
  44. }
  45. }
  46. $dbh->disconnect;
  47. exit 0;