Attribute Data Types
Basic RADIUS attribute types are defined in RFC 2865 (http://tools.ietf.org/html/rfc2865).
The table below (Basic RADIUS Attribute Types) illustrates the basic RADIUS attribute types and their formats, as defined in RFC 2865.
Attribute Type | Format |
---|---|
integer |
an unsigned 32-bit integer |
ipaddr |
an IPv4 address |
date |
a Unix timestamp in seconds since January 1, 1970 GMT |
string |
a variable-length string field |
New RADIUS attribute types have been defined since the original
implementation and standardization. The string
type was originally
used for both binary and printable text strings; the standards now
distinguish them as string
and text
, respectively. Since FreeRADIUS
was written before those updates were made, it uses octets
to describe
binary data and string
to describe printable text strings. There is no
conflict with the specifications, however, as the dictionary format and
type names are not standardized. Similarly, RFC 2865 calls the "IPv54
Address" type as address
, but all common RADIUS implementations use
ipaddr
instead.
A vendor-specific type abinary
was originally defined by Ascend,
extended by Juniper, and is rarely supported by other NAS vendors. Its
is represented as a binary-packed data structure, but it is presented to
the administrator as a textual string. Its format is complicated enough
that it is described separately below. For additional details, please
consult the NAS documentation.
The ifid
, ipv6addr
, ipv6prefix
data types are defined in RFC
3162 and refer to IPv6 Interface ID, address, and prefix..
Finally, version 2 of FreeRADIUS extends the type space by adding
byte
and short
types, which are single-byte and two-byte integers,
with respective values 0 to 255 and 0 to 65535. These types are rarely
used in practice, but they are convenient to have for the few VSAs
that require them.
The table below ([T3]) lists attribute types and their formats.
Type | Format | Notes |
---|---|---|
|
unsigned 32-bit integer |
|
|
IPv4 address |
|
|
Unix timestamp in seconds since January 1, 1970 GMT |
|
|
Variable-length string field |
Used by FreeRADIUS for printable text strings |
|
Variable-length string field |
Used by FreeRADIUS for binary data |
|
IPv6 interface ID |
|
|
IPv6 address |
|
|
IPv6 prefix |
|
|
Single-byte integer |
Added in FreeRADIUS v2.0. |
Values between 0 - 255 |
||
|
Two-byte integer |
Added in FreeRADIUS v2.0 |
Values between 0 - 65535 |
||
Added in FreeRADIUS v3.0 |
||
integer64, 8-byte integer |