OAI(Openairinterface) 5G搭配商用终端配置和使用手册

前言

OAI的官网源代码作者一直在更新维护,导致网上会有一些资料已经失去了时效性,因此在踩坑无数次后搭建成功,商用终端也能连接上5G信号并上网,故分享给大家,供学习交流。

部署环境

电脑:ubuntu18.04物理机(核心网和基站都部署在了一台电脑上,省去了网络路由转发的操作,让OAI更好找到虚拟地址)

手机:红米k40s(测试过oppo,vivo,荣耀都没成功,按理来说都是高通芯片,但有些手机确实连接不上)

射频设备:USRP b210

源码地址:oai / openairinterface5G · GitLab (eurecom.fr)

部署过程我就不赘述了,毕竟参考其他博客的部署过程就可以,提一嘴的是我核心网启动模式是mini-nonrf版本的,所以一些镜像也没全拉在本地。

docker pull oaisoftwarealliance/oai-amf:latest
docker pull oaisoftwarealliance/oai-spgwu-tiny:latest
docker pull oaisoftwarealliance/oai-smf:latest
docker pull oaisoftwarealliance/trf-gen-cn5g:latest

还有编译基站代码的时候我将USRP设备的编译过程单独放在了一个文件夹内USRP_Drive_OAI。 

mkdir USRP_Drive_OAI # 与gNB目录可同级
cd USRP_Drive_OAI
git clone https://gitlab.eurecom.fr/oai/openairinterface5g.git
git checkout develop
cd openairinterface5g
source oaienv
cd cmake_targets
./build_oai -I -w USRP

然后再回到基站的文件夹内编译基站相关代码,生成可执行文件nr-softmode 和 nr-uesoftmode。

需修改的配置

核心网端

添加商用终端信息

 1.直接定位数据库文件进行修改(推荐)

找到oai-cn5g-fed/docker-compose/database/oai_db1.sql文件

docker核心网中启动min-no nrf模型的启动逻辑就是读取这个sql文件,每次启动都需要重新读取sql文件简历数据库表

2.终端(命令行)修改

首先启动核心网

python3 core-network.py --type start-mini --scenario 2

输入以下命令进入docker环境中的mysql

docker exec -it mysql /bin/bash
mysql -uroot -plinux -D oai_db
show tables;

找到user表,添加信息:

INSERT INTO users VALUES ('001010000000001','380561234567','862723064164746',NULL,'PURGED',50,40000000,100000000,47,0000000000,1,0x0C0A34601D4F07677303652C0462535B,0,0,0x40,'ebd07771ace8677a',0x63bfa50ee6523365ff14c1f45f88737d);

插入数据的值释义:其他都为默认值

001010000000001

IMSI

移动用户识别码

380561234567

Msidn

手机号

862723064164746

IMEI

移动设备识别码

0x0C0A34601D4F07677303652C0462535B

Key

鉴权密钥

0x63bfa50ee6523365ff14c1f45f88737d

OPC

源信令点编码

修改DNN列表

前期使用列表中第一个oai并不能成功,系统会顺次接入(用wireshark抓包后显示用oai总被拒)后直接用列表中ims作为后续手机设置的apn并修改相应的网段。

修改的文件为:

oai-cn5g-fed/docker-compose/docker-compose-mini-nonrf.yaml

基站端

修改基站配置文件(可以使用vim或者直接定位到文件修改)

vim OAI/gNB/openairinterface5g/targets/PROJECTS/GENERIC-NR- 5GC/CONF/gnb.sa.band78.fr1.106PRB.usrpb210.conf

修改基站PLMN:

同时,调试前期因为发射功率过低的问题,参照商用基站配置的参数,对一些参数进行了调整,比如手机最大发射功率从20db调整到了26db等,(具体conf文件我再分享一下)

烧写sim白卡

某宝上会有烧写白卡所需要的写卡器和白卡,可以问卖家要烧卡软件,不同的烧卡软件所适配的卡也不同,需要提前沟通好,当然我这个软件显示是LTE的,但是与NR也是互通的,还是可以用于5G基站测试。

1.插卡读卡

2.写入IMSI

3.写入Ki和OPC,剩下参数需手动删除后点击Auto自动填入

4.写入手机号

5.点击保存

6.写入白卡

OPC

63bfa50ee6523365ff14c1f45f88737d

key(ki)

0C0A34601D4F07677303652C0462535B

IMSI

001010000000001

PLMN

00101

核心网UE的IMSI默认值为208950000000031,烧写后没有连接成功,因此采用其他资料大多采用的00101

UE端配置

接入点(APN)配置

SIM 插入手机中,在手机中新建APN,一般来说是设置->移动网络->移动数据->接入点名称->新建APN

主要修改 名称、apn这两个参数,因为前文提到我使用核心网中DNNlist中第一个oai的APN,多次连接被拒,只有ims可以连接成功,因此这里设置的ims,核心网配置文件中路由转发等相关设置也设置的ims对应的网段。

神秘代码

在手机拨号页面输入*#*#4636#*#*可以进入手机测试界面,在界面中设置首选网络类型设置“NR only”:

5G,启动!

依照核心网,基站的顺序启动,然后将手机的飞行模型打开,关闭,手机就有5G信号啦,并且如果核心网连接了网络,手机的5G数据也可以正常做业务。

评论 10
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值