Nepedia
Back to Discover
Advanced Reader
💻

Radius

technology Maturity 5-7 Next article →

Remote Authentication Dial-In User Service, or RADIUS, is a networking protocol used to manage network access. It provides a centralized way to handle three essential tasks known as AAA. These tasks are authentication, authorization, and accounting. Authentication verifies the identity of a user or a machine. Authorization determines what specific resources that user is allowed to access. Accounting tracks the usage and duration of the network session. By centralizing these functions, RADIUS allows administrators to manage many users from one single location.

Drawing RADIUS 1812
Drawing RADIUS 1812

The mechanism of RADIUS relies on a client/server model. The client is usually a Network Access Server, or NAS, which controls entry to the network. The server is typically a background process running on UNIX or Microsoft Windows. When a user attempts to connect, they provide credentials like a username and password. These credentials might arrive via a Point-to-Point Protocol (PPP) or an HTTPS web form. The NAS then creates an Access-Request packet. This packet contains the user's credentials and other details, such as their IP address or phone number. To protect the password, RADIUS uses a method based on the RSA Message Digest Algorithm MD5.

RADIUS packet format
RADIUS packet format

Once the RADIUS server receives the Access-Request, it performs the authentication step. It checks the provided information against a database. This could be a local flat file or an external source like LDAP, Kerberos, or Active Directory. After checking the identity, the server sends one of three responses back to the NAS. An Access-Reject unconditionally denies access, perhaps because the account is inactive. An Access-Challenge asks the user for more information, such as a PIN or a security token. Finally, an Access-Accept grants access.

Drawing RADIUS 1812
Drawing RADIUS 1812

After authentication, the server moves to the authorization stage. Even if a user is identified, they may not have permission for every service. For example, a user might be allowed on a wireless network but blocked from a VPN. The RADIUS server sends authorization attributes to the NAS to set the terms of the connection. These attributes can include a specific IP address to assign to the user. They can also define the maximum time a user can stay connected. Other attributes might include VLAN parameters or Quality of Service (QoS) settings.

RADIUS AVP layout
RADIUS AVP layout

The final stage is accounting, which is described in RFC 2866. This process begins when the NAS sends an Accounting-Start packet to the server. This packet contains a unique session identifier and the user's network address. While the user is online, the NAS may send Interim-Update packets. These updates provide information on current data usage and session duration. When the session ends, the NAS sends an Accounting-Stop packet. This includes the final amount of data transferred and the reason for the disconnect. This data is vital for billing users and monitoring network statistics.

Drawing RADIUS 1813
Drawing RADIUS 1813

RADIUS also enables a feature called roaming through the use of realms. A realm is a piece of text, often using postfix notation like "user@realm," that identifies a user's home server. This allows users to move between different Internet Service Providers (ISPs) using their own credentials. When a RADIUS server sees a realm, it can act as a proxy. It looks up the realm in a table and forwards the request to the correct home server. This can involve proxy chaining, where requests move through a series of servers. While this helps networks scale, it requires high levels of trust between the different administrative entities.

Drawing Roaming RADIUS
Drawing Roaming RADIUS

Understanding the technical structure of RADIUS packets is important for network security. RADIUS packets are transported over UDP or TCP. They contain specific fields like the Code, Identifier, and Length. The Authenticator field is 16 bytes long and is used to encrypt passwords and authenticate replies. Data is carried in Attribute Value Pairs, or AVPs. These AVPs include essential information like the User-Name and Service-Type. However, security is a major concern. Because the MD5 hash used in RADIUS is considered insecure, some partners use secure tunnels to protect credentials during roaming. The Blast-RADIUS attack can also break the protocol if it is run on unencrypted transport like UDP.

RADIUS packet format
RADIUS packet format
689 words

Where will your curiosity go next?

Keep exploring at your chosen reading level.

🖼️ Images & Media (5)
File:Drawing RADIUS 1812.svg
Drawing RADIUS 1812.svg
File:Drawing RADIUS 1813.svg
Drawing RADIUS 1813.svg
File:Drawing Roaming RADIUS.png
Drawing Roaming RADIUS.png
File:RADIUS packet format.svg
RADIUS packet format.svg
File:RADIUS AVP layout.svg
RADIUS AVP layout.svg
More to explore

What is Nepedia?

A free, ad-free encyclopedia for children. Every article is written at five reading levels, so the same page works for a five-year-old and a fifteen-year-old — use the level switcher above to see this one change. No account needed to read.