GSP
Quick Navigator

Search Site

Unix VPS
A - Starter
B - Basic
C - Preferred
D - Commercial
MPS - Dedicated
Previous VPSs
* Sign Up! *

Support
Contact Us
Online Help
Handbooks
Domain Status
Man Pages

FAQ
Virtual Servers
Pricing
Billing
Technical

Network
Facilities
Connectivity
Topology Map

Miscellaneous
Server Agreement
Year 2038
Credits
 

USA Flag

 

 

Man Pages
RAD-BULK(1) User Contributed Perl Documentation RAD-BULK(1)

rad-bulk - A command line Radius bulk-testing client

    rad-bulk --secret secret --server server --dictionary dictfile ...
    [--timeout n] [--authport port] [--acctport port] [--help]
    [--children n] [--count n] [--random] [--verbose] packet-file ...

rad-bulk reads in one or more packet files containing the specification of the packets to send, and then proceed to flood the target server with a total of "count" requests, coming from up to "children" number of children.

Statistics are then printed, depicting the number of packets sent and some general timing statistics that allow for the measurement of the server's performance.

The packets are either Access-Request or Accounting-Request. The actual attributes are encoded in one or more packet files, allowing for some control in the specific work-load to be imposed in the target server.

--children n
How many children to "fork()" in order to send requests in parallel to the Radius server. This parameter can be used to increase the number of concurrent requests being sent to the server, to test in hight load scenarios.

Defaults to 1 child, which is useful to verify the test input parameters.

--count n
How many packets to process. Defaults to the amount of packets loaded via the packet file.
--timeout t
How much a child must wait for an answer before failing, in seconds. Defaults to 3 seconds.
--server server
Surprisingly, the server address to which to send the RADIUS packets.
--acctport port and --authport port
The accounting and authorization ports, used for Accounting-Request and Access-Request respectively. Defaults to 1812 and 1813, which are the standard ports for these purposes.
--secret secret
The RADIUS shared secret used for packet authentication.
--prompt [attribute]
Prompt the user and add a password-encoded RADIUS attribute to the request. By default, this works in the RADIUS attribute 2.
--dictionary dictfile...
Specifies one or more dictionary files to use for crafting the Radius packets and for decoding the eventual responses. Multiple files can be specified, causing the dictionaries to be loaded in order.
--help
Shows this documentation, then exits.
--random
Send a random sample of packets from the input packet files. By default, the requested count of packets is sent in order, from the packet file.
--verbose
Send a "." to STDOUT each time a packet is sent, and a "\b" each time an answer is received. Additionally, output character codes for each error found.

Also, provide feedback about test progress.

Packets are specified with a keyword ("Authentication" or "Accounting") and a number of input lines, with each one specifying an attribute. Blank lines delimit packets. Lines whose first non-blank character is "#" are ignored as comments.

Radius attributes are as follows:

  [vendor.]attribute=value

Where vendor and attribute are the labels specified in the dictionary.

This is an example of a valid packet specification:

    # A simple auth packet
    Authentication
    User-Name=lem
    User-Password=Sikrit
    NAS-IP-Address=127.0.0.1
    Service-Type=PPP
    
    # A simple accounting packet. Note that
    # Acct-Session-Id will be provided automatically
    Accounting
    User-Name=lem
    NAS-IP-Address=127.0.0.1

Packet encoding is done as expected, depending on the type of packet being processed. Required attributes such as the Id and Authenticator are automatically provided.

Packet response authentication is checked for correctness. Invalid packets are logged and reported.

This code and all accompanying software comes with NO WARRANTY. You use it at your own risk.

This code and all accompanying software can be used freely under the terms of the GNU General Public License version 2.

Luis E. Muñoz <luismunoz@cpan.org>

perl(1), Getopt::Long(3), Net::Radius::Packet(3), Net::Radius::Dictionary(3).

Hey! The above document had some coding errors, which are explained below:
Around line 549:
Non-ASCII character seen before =encoding in 'Muñoz'. Assuming UTF-8
2009-10-24 perl v5.32.1

Search for    or go to Top of page |  Section 1 |  Main Index

Powered by GSP Visit the GSP FreeBSD Man Page Interface.
Output converted with ManDoc.