Flexinets.Radius.Core
4.0.0-prerelease.31
dotnet add package Flexinets.Radius.Core --version 4.0.0-prerelease.31
NuGet\Install-Package Flexinets.Radius.Core -Version 4.0.0-prerelease.31
<PackageReference Include="Flexinets.Radius.Core" Version="4.0.0-prerelease.31" />
paket add Flexinets.Radius.Core --version 4.0.0-prerelease.31
#r "nuget: Flexinets.Radius.Core, 4.0.0-prerelease.31"
// Install Flexinets.Radius.Core as a Cake Addin #addin nuget:?package=Flexinets.Radius.Core&version=4.0.0-prerelease.31&prerelease // Install Flexinets.Radius.Core as a Cake Tool #tool nuget:?package=Flexinets.Radius.Core&version=4.0.0-prerelease.31&prerelease
Radius packet parser and assembler library for .Net.
Includes Core functionality for parsing and assembling Radius packets using a dictionary
Conditionally compliant with RFCs
https://tools.ietf.org/html/rfc2865
https://tools.ietf.org/html/rfc2866
https://tools.ietf.org/html/rfc5997
Projects
Flexinets.Radius.Core
Radius protocol bits and pieces. Published to NuGet here: https://www.nuget.org/packages/Flexinets.Radius.Core/
Flexinets.Radius.Core.Tests
Tests...
Flexinets.Radius.TestClient
Contains a minimal client which can be used to send test packets
Flexinets.Radius.TestServer
Contains a minimal server for responding with a static username and password with basic attributes
BlastRadius support
To support communication with Radius servers or clients enforcing Blast Radius checks, a Message-Authenticator must be added to sent packets and validated when received.
// Sending a packet
var requestPacket = new RadiusPacket(PacketCode.AccessRequest, 0, "xyzzy5461");
requestPacket.AddMessageAuthenticator(); // Add message authenticator for blast radius
requestPacket.AddAttribute("User-Name", "nemo");
requestPacket.AddAttribute("User-Password", "arctangent");
When receiving response packets, the request packet Authenticator must be passed to IRadiusPacketParse.Parse in order to calculate the correct Message-Authenticator in the response When receiving request packets, the Message-Authenticator is required and validated by default for all Access* packets in version 3.0.0 and greater.
In version 2.0.1 Blast radius checks can be enabled by setting skipBlastRadiusChecks to False when creating a RadiusPacketParser.
/// Set skipBlastRadiusChecks when creating packet parser
var radiusPacketParser new RadiusPacketParser(
loggerFactory.CreateLogger<RadiusPacketParser>(),
RadiusDictionary.Parse(DefaultDictionary.RadiusDictionary),
skipBlastRadiusChecks: false) // Default 'false' in version >= 3.0.0 and 'true' in 2.0.1
/// ...
// Receiving a packet
var parsedPacket = radiusPacketParser.Parse(
reponsePacketBytes,
requestPacket.SharedSecret,
requestPacket.Authenticator); // <- corresponding request Authenticator
Product | Versions Compatible and additional computed target framework versions. |
---|---|
.NET | net5.0 was computed. net5.0-windows was computed. net6.0 was computed. net6.0-android was computed. net6.0-ios was computed. net6.0-maccatalyst was computed. net6.0-macos was computed. net6.0-tvos was computed. net6.0-windows was computed. net7.0 was computed. net7.0-android was computed. net7.0-ios was computed. net7.0-maccatalyst was computed. net7.0-macos was computed. net7.0-tvos was computed. net7.0-windows was computed. net8.0 was computed. net8.0-android was computed. net8.0-browser was computed. net8.0-ios was computed. net8.0-maccatalyst was computed. net8.0-macos was computed. net8.0-tvos was computed. net8.0-windows was computed. |
.NET Core | netcoreapp3.0 was computed. netcoreapp3.1 was computed. |
.NET Standard | netstandard2.1 is compatible. |
MonoAndroid | monoandroid was computed. |
MonoMac | monomac was computed. |
MonoTouch | monotouch was computed. |
Tizen | tizen60 was computed. |
Xamarin.iOS | xamarinios was computed. |
Xamarin.Mac | xamarinmac was computed. |
Xamarin.TVOS | xamarintvos was computed. |
Xamarin.WatchOS | xamarinwatchos was computed. |
-
.NETStandard 2.1
- Microsoft.Extensions.Logging.Abstractions (>= 8.0.2)
NuGet packages (4)
Showing the top 4 NuGet packages that depend on Flexinets.Radius.Core:
Package | Downloads |
---|---|
Flexinets.Radius.RadiusClient
Radius client. Send packets to radius servers. Packets can be sent asynchronously and are mapped to response using remote endpoint and identifier |
|
Flexinets.Radius.RadiusServer
Radius server library. Implement IRadiusPacketHandler and handle packets. For an example server implementation hosted in a windows service, see: https://github.com/vforteli/RadiusServerService/tree/Base |
|
Flexinets.Radius.RadSecClient
RadSec client. Send radius requests over RadSec (Radius/TLS) PKI based client authentication and clients mapped to packet handlers using SHA1 hash of certificate |
|
Flexinets.Radius.RadSecServer
RadSec server. Library for hosting a Radsec server (Radius/TLS). Can be run in a Windows Service |
GitHub repositories
This package is not used by any popular GitHub repositories.
Version | Downloads | Last updated |
---|---|---|
4.0.0-prerelease.31 | 52 | 12/1/2024 |
3.0.1 | 199 | 11/24/2024 |
2.0.1 | 133 | 11/25/2024 |
2.0.1-prerelease.24 | 40 | 11/25/2024 |
2.0.1-prerelease.23 | 45 | 11/25/2024 |
2.0.0 | 103,734 | 2/17/2019 |
1.4.2 | 3,499 | 7/24/2018 |
1.4.1 | 6,250 | 6/11/2018 |
1.4.0 | 8,480 | 5/18/2018 |
1.3.0.4 | 1,426 | 5/7/2018 |
1.3.0.3 | 1,395 | 5/7/2018 |
1.3.0 | 2,918 | 8/27/2017 |
1.0.10 | 2,072 | 8/13/2017 |
1.0.8 | 2,850 | 8/7/2017 |
1.0.6 | 1,542 | 8/7/2017 |
1.0.5 | 2,216 | 8/6/2017 |
1.0.4 | 2,854 | 8/4/2017 |
1.0.3 | 2,166 | 8/4/2017 |
Message authenticator handling for blastradius