print_huntgroups.pl 1.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354
  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::logconfig;
  20. use eyelib::database;
  21. use eyelib::common;
  22. my %huntgroups=(
  23. '2'=>'eltex',
  24. '3'=>'huawei',
  25. '4'=>'zyxel',
  26. '5'=>'raisecom',
  27. '6'=>'snr',
  28. '7'=>'dlink',
  29. '8'=>'aliedtelesys',
  30. '9'=>'mikrotik',
  31. '10'=>'netgear',
  32. '11'=>'ubnt',
  33. '15'=>'hp',
  34. '16'=>'cisco',
  35. '17'=>'maipu',
  36. );
  37. my @device_list = get_records_sql($dbh,"SELECT * FROM devices WHERE device_type<=2 ORDER BY device_name" );
  38. foreach my $device (sort @device_list) {
  39. my @auth_list = get_records_sql($dbh,"SELECT * FROM user_auth WHERE deleted=0 AND user_id=?",$device->{user_id});
  40. print "#$device->{device_name}\n";
  41. foreach my $auth (sort @auth_list) {
  42. if (exists $huntgroups{$device->{vendor_id}}) {
  43. print "$huntgroups{$device->{vendor_id}} NAS-IP-Address == $auth->{ip}\n";
  44. }
  45. }
  46. }
  47. $dbh->disconnect;
  48. exit 0;