RDR::Collector

Collect RDRv1 packets
Download

RDR::Collector Ranking & Summary

Advertisement

  • Rating:
  • License:
  • Perl Artistic License
  • Price:
  • FREE
  • Publisher Name:
  • Andrew S. Kennedy
  • Publisher web site:
  • http://search.cpan.org/~shamrock/

RDR::Collector Tags


RDR::Collector Description

Collect RDRv1 packets RDR::Collector is a Perl module designed to capture and process raw RDR packets from a Cisco SCE series device.The configuration for the SCE device is very simple and consists of one line of configuration per priority.An example configuration is shown below RDR-formatter forwarding-mode multicast RDR-formatter destination 192.168.1.1 port 33110 category number 1 priority 70 RDR-formatter destination 192.168.1.1 port 33120 category number 2 priority 70 RDR-formatter destination 192.168.1.1 port 33130 category number 3 priority 70 RDR-formatter destination 192.168.1.1 port 33140 category number 4 priority 70The RDR collector is not designed to accept multiple connections so each priority needs to be sent to a different port. You then need to set up a receiver on 4 different ports (run the example script 4 times) so you can collect the RDRs. In the example above the collecting host is on IP 192.168.1.1. Alternatively if you have multiple SCE devices then you need to configure each one to send to different ports.An example on how to use this module is shown below. It is relatively simple and sets up a listening port bound to the IP and Port specified. #!/usr/bin/perl use strict; use RDR::Collector; use IO::File; my $rdr_client = new RDR::Collector( ); # Setup the local RDR listener my $status = $rdr_client->connect(); # If we could not listen tell us why. if ( !$status ) { print "Status was '".$rdr_client->return_status()."' "; print "Error was '".$rdr_client->return_error()."' "; exit(0); } # Now just wait for RDR data. $rdr_client->check_data_available(); exit(0); # This routine is called from DataHandler when the module # instance is initialised. # 4 parameters are returned, internal ref, remote IP, remote Port and # the raw data sub display_data { my ( $glob ) = shift; my ( $remote_ip ) = shift; my ( $remote_port ) = shift; my ( $data ) = shift; my $attribute_line; my $data_line; my @keys = keys %{$data}; foreach my $key_name ( @keys ) { $attribute_line.="$key_name,"; $data_line.=${$data}{$key_name}.","; } print "#$attribute_line "; print "$data_line "; }This is the most basic way to access the data. There are multiple scripts in the examples directory which will allow you to collect and process the RDR data. Requirements: · Perl


RDR::Collector Related Software