RADIUS

From TBwiki
Revision as of 15:13, 4 July 2012 by Luc Morissette (Talk | contribs)
Jump to: navigation, search

Remote Authentication Dial In User Service, more popularly known as RADIUS, is used by telecom service providers for the purpose of authenticating, authorizing, and accounting for the use of services by subscribers. A RADIUS server is an application server that provides this functionality. It can take as input as well as output Call detail record (CDR) data.


Contents

TelcoBridges and RADIUS

Starting with release v2.3 of Toolpack, explicit support for the accounting function of RADIUS is now offered. Previously, Toolpack stored Call detail record (CDR) data in a local database. Starting with Toolpack v2.3, CDR data is stored on a dedicated, external server running an implementation of the RADIUS standard. Configuration of the location of the RADIUS server is performed through the Toolpack web portal. For this initial release, Toolpack only supports the Accounting functionality of RADIUS; it does not support the Authorization or Authentication options. That type of functionality can be performed outside of RADIUS using Toolpack.

Starting with release v2.6 of Toolpack, multiple RADIUS servers can now be configured for backup purposes.

Prerequisites

In order to enable RADIUS functionality in Toolpack, you must have a RADIUS server already up and running. It is highly recommended that the RADIUS server software being running on a separate machine from the one running the Toolpack software. Before configuring Toolpack, you will need the IP address of the RADIUS server(s). You will need to specify a ‘secret key’ which will authenticate the Toolpack server so that it can send CDR data to the RADIUS server and the RADIUS server will accept it.

Configuration

Assuming that you have already set up and configured a RADIUS server, you also need to configure Toolpack.

Toolpack to Radius CDR attributes remapping

From RFC 2865 and RFC 2866 (Accounting) :

AVP Id Radius IETF param name Type Toolpack param Description
1
User-Name string
- For now this value is hardcoded to "100"
4
NAS-IP-Address IP address
- IP address of the TMedia generating the CDR record
30
Called-Sation-Id string
Called Number Called party number
31
Calling-Station-Id string
Calling Number Calling party number
32
NAS-Identifier string
Application Name Application name of the CDR provider
40
Acct-Status-Type integer
- Start or Stop
44
Acct-Session-Id integer
Leg Id Call Leg Identifier

AVP: 26 VendorID: 9 (Cisco)

VSA Id Radius IETF param name Type Toolpack param Description
2
Cisco-NAS-Port string
NAP name Network Access Point name for the call leg
24
h323-conf-id string
Unique Id Unique call identifier for the two initial legs (incoming and outgoing) - 128 bits integer formated as xxxxxxxx xxxxxxxx xxxxxxxx xxxxxxxx
25
h323-setup-time string
Start Time Represent the call leg setup time - Coordinated Universal Time (UTC)
26
h323-call-origin string
Originator Name "answer" for an outgoing leg - "originate" for an incoming leg
27
h323-call-type string
Protocol Type If protocol is SIP the value is "VOIP", otherwise it is "Telephony"
28
h323-connect-time string
Connected Time Represent the call leg answer time (connect time) - Coordinated Universal Time (UTC)
29
h323-disconnect-time string
EndTime Represent the call leg disconnect time - Coordinated Universal Time (UTC)
30
h323-disconnect-cause string
Termination Reason Q.931 disconnect (1 to 160) cause, TB Toolpack system cause (200 to 300) and SIP cause (400 to 600)
35
h323-incoming-conf-id string
Unique Id Contains the original h323-conf-id in case of call transfer for subsequent outgoing legs - 128 bits integer formated as xxxxxxxx xxxxxxxx xxxxxxxx xxxxxxxx
115 release-source string
Termination Source "localLeg" if this leg terminate the call or "connectedLeg" if its the connected leg - We use a Cisco string field with our own value definition

AVP: 26 VendorID: 21776 (TelcoBridges)

VSA Id Radius IETF param name Type Toolpack param Description
9
Telcob-ChargeIndicator String
ChargeIndicator Represent the charge indicator value
10
Telcob-Protocol String
Protocol Protocol used for this LegID. Ex. SIP, ISDN, etc.
11
Telcob-Codec String
Codec Codec used for this LegID
12
Telcob-RemoteIP IP address
RemoteIP RemoteIP used for the media. This is only for VOIP.
13
Telcob-RemotePort Integer
RemotePort RTP Port of the remote peer. This is only for VOIP.
14
Telcob-TrunkName String
TrunkName Name of the trunk (ex. "LS004400E1_0_00").

This attribute is only for non-VOIP.

15
Telcob-TimeslotNumber Integer
TimeslotNumber This is the Timeslot Number.

This attribute is only for non-VOIP.

16
Telcob-MediaInfo String
MediaInfo String that represents the MediaInfo (ex. "PCMU@10.3.10.124:20054" for SIP and "LS_T1_BITS_00:1" for ISDN)
17
Telcob-StartTime String
StartTime String that represents the StartTime of the call.
18
Telcob-ConnectedTime String
ConnectedTime String that represents the time when the call was connected
19
Telcob-EndTime String
EndTime String that represents when the call was completed.
20
Telcob-TerminationCause Integer
TerminationCause Integer that represents the Termination Cause
21
Telcob-Other-Leg-Id Integer
Other-Leg-Id Integer that represents the other LegID bridged for this call
22
Telcob-TerminationCauseString String
TerminationCauseString String that represents the TerminationCause, but in a String format.
23
Telcob-TerminationSource String
TerminationSource String that represents the Termination Source
24
Telcob-LocalSipIP* String
LocalSipIP IP Address that represents the Local IP used for SIP.
25
Telcob-LocalSipPort* Integer
LocalSipPort Integer that represents the Local port used for SIP.
26
Telcob-LocalMediaIP IPAddr
LocalMediaIP IP Address that represents the Local IP used for the media.
27
Telcob-LocalMediaPort String
LocalMediaPort Integer that represents the Local port used for the media.
28
Telcob-LocalMediaInfo String
LocalMediaInfo String that represents the Local Media Info.(ex. "PCMU@10.3.10.124:20054")

Only for VOIP calls.

29
Telcob-RemoteMediaInfo String
RemoteMediaInfo String that represents the Remote Media Info.(ex. "PCMU@10.3.10.124:20054")

This is the same as Telcob-MediaInfo. Only for VOIP calls.

* = Not currently implemented.

References

Personal tools