2. FreeRADIUS implementation

2. FreeRADIUS implementation

1. Install FreeRADIUS with database driver

Add the package "freeradius-mysql" as a dependency to nmsprime-provbase
adapt install scripts
like starting & enabling,
create database & users

populating schema's

2. Add TR-69 ConfigFile Device Type

Validation Rule: If device type = TR-69 config file parameters must be in JSON (also for validation)

NOTE:

  1. A new definition for string replacement syntax seems to be required for JSON TR-69 since it uses {}-brackets.

  2. For example in DOCSIS configfile a {provbase.ro_community.0} will be replaced with SQL datas –> this syntac must be replaced
    See 3. TR-69 implementation example API call

3. Rebuild Modem page

Configfile MUST be second entry after "Name"

add "username" and "password" to Modem table and MVC

dynamically display or hide fields depending on if configfile is DOCSIS or TR-69

4. Rename CMTS to Network Gateway

rename
type select e.g. enum ('CMTS', 'BRAS') or similar

5. Connect NMS PRIME to FreeRADIUS



NMS PRIME  Model (MVC)

FreeRADIUS table

database relation

Always



NMS PRIME  Model (MVC)

FreeRADIUS table

database relation

Always

1.

QoS

usergroup

1 : 1

YES. every QoS entry is a RADIUS usergroup)

2.

Modem

radcheck

1 : 1

NO. Only for Non-DOCSIS devices

3.

NetGw

nas

1 : 1

Only for NetGw of type BRAS/BNG











Reference:

5.1 QoS mapping

Create Mapping between with an QoS Observer and RADIUS usergroup
(take care that create, delete, update syncs with FreeRADIUS)

Fields that MUST be synchronised 

5.2 Modem mapping

Create Mapping between with an Modem Observer and RADIUS radcheck
(take care that create, delete, update syncs with FreeRADIUS)

Fields that MUST be synchronised

nmsprime.modem.username –> radius.radcheck.UserName

nmsprime.modem.password –> radius.radcheck.Value

...

Create Mapping between RADIUS user and RADIUS usergroup according to subscribed QoS

5.3 NetGw mapping

Create mapping between NetGw (only of type BRAS) and RADIUS nas