Private Dynamic Profile Test Case

1. Description

Validates the authentication and assignment flow for a standard GPON subscriber dynamically assigned a private IP profile. The request is processed and dynamically provisioned by the backend APIs/Radius engine.

2. Configuration Mapping

The following test case mapping demonstrates the specific parameters supplied to the AAA backend API:

Parameter Value

Endpoint ID

94666543212

Authentication Match

MySecurePass123

Assigned Group

GPON

customnumfield1

150

sessionlimit

300

barringstatus

0 (Unbarred - Allowed)

status

1 (Active)

3. Test Implementation Request

curl --location --request PUT 'http://localhost:4000/users/94666543212' \
--header 'Content-Type: application/x-www-form-urlencoded' \
--header 'Authorization: ••••••' \
--data-urlencode 'password=MySecurePass123' \
--data-urlencode 'customnumfield1=150' \
--data-urlencode 'sessionlimit=300' \
--data-urlencode 'groupname=GPON' \
--data-urlencode 'barringstatus=0' \
--data-urlencode 'status=1'

4. Request Packet

echo -e 'Packet-Type = Access-Request
User-Name = "94100200900"
CHAP-Password =dialog
CHAP-Challenge = 0x3c16fd3376dc4415c25ee1a1aca9dcdf
NAS-Port = 2138182
NAS-IP-Address = 10.174.157.1
Service-Type = Framed-User
Framed-Protocol = PPP
Calling-Station-Id = "78:17:be:16:67:2a"
NAS-Identifier = "MALA-B-HW-BNG-01"
NAS-Port-Type = Ethernet
NAS-Port-Id = "UNION_PLACE-CMBC-GPA03-R1-N1-01 xpon 0/1/0/12:4.1.502=02"
Acct-Session-Id = "111125"
Connect-Info = "1000000000"
Huawei-Startup-Stamp = 1722845152
Huawei-IPHost-Addr = "255.255.255.255 78:17:be:16:67:2a"
Huawei-Connect-ID = 46086
Huawei-Version = "Huawei NetEngine 8000"
Huawei-Product-ID = "NetEngine 8000"
Huawei-Domain-Name = "dialog_test"
Huawei-User-Mac = "78:17:be:16:67:2a"
ADSL-Agent-Circuit-Id = 0x554e494f4e5f504c4143452d434d42432d47504130332d52312d4e312d30312078706f6e20302f312f302f31323a342e312e353032
Access-Loop-Encapsulation = 0x000000'| radclient -x localhost:1812 auth mysecret

5. Expected Result

The Radius lookup will succeed because the numerical string extracts cleanly. Barring-Status returns 0, proceeding normally. Cleartext-Password evaluates matching CHAP challenge.

Received Access-Accept Id 45 from 127.0.0.1:1812 to 127.0.0.1:42042 length 78
	Message-Authenticator = 0x24446ee5bce9e09890c695351e2ab6cd
	User-Name = "94100200900"
	Session-Timeout = 300
	Idle-Timeout = 150
	Reply-Message = "Access Accept"

6. Database Result

mysql> select * from SUBSCRIBER where USER_ID='94100200900';
+-------+-------------+---------------------------------------------------+---------+---------+----------+---------------+----------------+----------------+------------+----------------+----------------+--------------+-----------------+--------------------------+-----------------+--------------+---------+----------------+-----------------------------------+--------+-----------+--------------------+---------------------+--------------+--------+------+-----------+-----------------+---------------------+---------------------+
| id    | USER_ID     | PASSWORD                                          | PCRF_ID | PACKAGE | VRF_NAME | LOOPBACK_NAME | IPV4_POOL_NAME | IPV6_POOL_NAME | IPV4_VALUE | IPV6_LAN_VALUE | IPV6_WAN_VALUE | FRAMED_ROUTE | FRAMEDIPNETMASK | MAX_SIMULTANEOUS_SESSION | SESSION_TIMEOUT | IDLE_TIMEOUT | GROUPID | BARRING_STATUS | NOTES                             | STATUS | FRAMED_ID | INPUT_QOS_TEMPLATE | OUTPUT_QOS_TEMPLATE | SUB_TEMPLATE | MSISDN | APN  | USER_NAME | CREATE_USER     | CREATE_DATE         | LAST_UPDATE         |
+-------+-------------+---------------------------------------------------+---------+---------+----------+---------------+----------------+----------------+------------+----------------+----------------+--------------+-----------------+--------------------------+-----------------+--------------+---------+----------------+-----------------------------------+--------+-----------+--------------------+---------------------+--------------+--------+------+-----------+-----------------+---------------------+---------------------+
| 16834 | 94100200900 | tjBUlQn62AEnoKY8yCnJMw==:oLCKVhAgZ25rP6cbfPJgkQ== |         |         |          |               |                |                |            |                |                |              | NULL            |                        1 |             300 |          150 | GPON    |              0 | Testing Purpose - private_dynamic |      1 | NULL      |                    |                     |              |        |      | dialog    | Manudi_12345678 | 2026-03-18 17:15:17 | 2026-03-18 17:15:17 |
+-------+-------------+---------------------------------------------------+---------+---------+----------+---------------+----------------+----------------+------------+----------------+----------------+--------------+-----------------+--------------------------+-----------------+--------------+---------+----------------+-----------------------------------+--------+-----------+--------------------+---------------------+--------------+--------+------+-----------+-----------------+---------------------+---------------------+
1 row in set (0.00 sec)