gnbsim is a 5G SA gNB/UE (Release 16) simulator for testing 5GC system. The project is aimed to understand 5GC system more efficiently than just reading 3GPP standard documents.
- golang environment on linux host.
- gnbsim can complete 'Initial Registration'.
- gnbsim cannot complete 'PDU Session Establishment' for now.
- I will try to update my code step by step...
- running free5gc somewhere.
- subscriber has been registered by free5gc web console.
- change 'ngapIPList' to external ip address in 'amfcfg.conf'
- Download the related files.
$ git clone https://github.com/hhorai/gnbsim.git
- Build example binary.
$ cd gnbsim/example
$ go build
- Edit the configuration file. In case of free5gc with default configuration, it might not be needed to edit, excluding 'msin' parameter.
$ vi example.json
- run 'example' with 'ip' option and specify the AMF ip address.
$ ./example -ip <AMF NGAP listen ip address set above>
- Then you can find the following line in the debug message. In this case, your configuration for free5gc and gnbsim are both correct.
***** Integrity check passed
- And you could also find your UE in 'subscriber' page of free5gc web console. In my environment, free5gc dashboard doesn't show my UE, but the actual transfered packet that is respond from web conole includes the information (PLMN and IMSI) of it in json format.