提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档

文章目录

  • 前言
    • 对之前的一些改进
  • 一、烧写SIM卡
    • 1、opc,ki(key)
    • 2、IMSI-PLMN
    • 3、IMSI-MSIN
  • 二、手机新建APN
    • 1、MCC、MNC
    • 2、APN
    • 3、名称
  • 三、配置核心网的相关信息
    • 方法一 通过mysql来修改
    • 方法二 通过sql文件修改(推荐)
  • 四、启动调试
  • 总结

前言

之前做的关于OAI的基站的搭建和配置的工作,前段时间在忙一些其他的事,暂时搁置了,现在想起来写写吧。
配置是 :
ubuntu18.04
手机用的是mate30
参考的教程
https://gitlab.eurecom.fr/oai/openairinterface5g/-/blob/NR_SA_tutorials/doc/NR_SA_CN5G_gNB_B210_COTS_UE_Tutorial.md


对之前的一些改进

在之前的安装核心网和gNB的时候,是将核心网和gNB分别安装在两台不同的主机上的,然后通过路由器进行通信,但是后来尝试将而者都安装在同一台主机上,这样也能成功,这就省去了要配置两台电脑上的路由转发的问题,gNB 直接就能在本地找到核心网的网桥,同时这样在gNB的配置文件中也不需要修改IP地址,就会比较方便。当然装在一台主机上的话,配置方面需要迎合gNB的配置要求,如果感兴趣的话可以试试。

一、烧写SIM卡

为了接入手机,首先就是烧写SIM白卡,需要买一个SIM白卡和烧写的读卡器以及软件,这些东西都可以在淘宝上买到,一般买到的都是基站卡,买读卡器的时候会给一个软件,界面大致如下所示,主要需要填写的几个参数有IMSI,opc,还有key(ki)

1、opc,ki(key)

opc和key需要与核心网中的一样,如果没有自己修改过的话(建议不要自己改),应该烧写如下的值
opc:63bfa50ee6523365ff14c1f45f88737d
key(ki) :0C0A34601D4F07677303652C0462535B
这两个不区分大小写

2、IMSI-PLMN

IMSI可以理解为手机的代号,IMSI = PLMN + MSIN = MCC + MNC + MSIN
其中的PLMN也是需要和核心网以及基站配置文件中保持一致,如果核心网和基站中默认是MCC=208,MNC=95,这两个值需要填写在手机的APN 中,但是我用的mate30支持的PLMN只能是00101所以这边我只能采用这个值,注意需要和基站和核心网保持一致,基站通过配置文件修改即可,核心网是修改yaml文件。

3、IMSI-MSIN

剩下的MSIN可以随便填写一个值,MSIN是10位加上5位的PLMN一共15位组成IMSI烧写到SIM白卡中。

【Tips】 当然也可以不做自定义的修改,核心网中默认带有的IMSI 是208950000000031,这样在第三步的时候就不需要将自己写的UE信息添加到核心网的数据库中了。

二、手机新建APN

将烧写好的SIM 插入手机中,在手机中新建APN,这一步各个手机的步骤可能都不一样,mate30是设置->移动网络->移动数据->接入点名称->新建APN, 其中的页面如下

主要就填写4个参数 名称、APN、MCC、MNC

1、MCC、MNC

MCC和MNC是上一步中烧写到SIM 中的值,我这里是001和01

2、APN

这个值需要注意一下,这个值需要是核心网的中的SMF组件中的DNN 列表中的一个,可以通过以下的两个文件来查看。

/oai-cn5g-fed/component/oai-smf/etc/smf.conf

/oai-cn5g-fed/docker-compose/docker-compose-basic-nrf

SMF中提供有4个接口,通过的docker的运行的yaml文件,可以看到这些参数的具体的值,虽然有4个接口,但是只提供了一个默认的接口值,名称是oai,所以在手机上的APN 处填写oai。
另外,如果想要修改APN 的或者想要多个APN(不超过4个)的可以就在docker的yaml文件中修改就行,至于怎么修改可以自行参考其他的资料。

3、名称

这个参数理论上是可以随便填,但是建议和上面的APN写成一样,比较方便。

三、配置核心网的相关信息

如果在第一步中就行了自定义的UE的IMSI 修改,则需要将UE 的信息添加到核心网的数据库中。这里有两种方法:

方法一 通过mysql来修改

首先把核心网的容器启动起来,然后进入容器,再进入mysql,之后往列表中插入相关的UE信息,具体可以参考官网的方法

方法二 通过sql文件修改(推荐)

如果安装核心网采用的是前言中提到的参考教程,可以直接打开其中oai_db.sql文件,在如下所示的地方添加相应的信息即可。这样就可以把UE 的信息添加好了。

四、启动调试

1、启动核心网

python3 core-network.py --type start-basic --fqdn yes --scenario 1

2、启动gNB(新建终端)

sudo -E ./nr-softmodem -O ../../../targets/PROJECTS/GENERIC-NR-5GC/CONF/gnb.sa.band78.fr1.106PRB.usrpb210.conf -E --sa

3、打开关闭手机的飞行模式
在基站的终端中可以看到如下所示的UE 连接的信息,从msg1到msg4的基站与UE之间的交互msg。

4、在核心网的终端查看AMF的日志

docker logs oai-amf > amf.log

在日志中可以看到gNB 和UE在核心网中的注册信息,通过imsi可以看出是自己烧写的SIM卡的信息。

【tips】 建议USRP 的天线使用增益比较高的,之前我用的天线增益太低就连不上。

总结

至此已经完成了UE接入gNB和核心网的工作,但是此时的UE还不能上网浏览网页,希望以后的研究中能够完善一下吧。
之后有空的话把这一段过程录个屏吧。

演示录屏https://www.bilibili.com/video/BV1Vd4y1Q7Rq?vd_source=e9b217dd648d3e9a219e29ceb3ba23b2

手机连接上OAI基站相关推荐

  1. 计算机如何通过手机连接网络打印机,如何让手机连接上打印机,原来是这样的...

    我们平时打印手机上的文件可能需要把文件传到电脑上再打印.那么我们怎么把手机连接上打印机,通过操作手机就可以打印了呢?来看看方法吧! 工具/材料 打印工场 一.手机端设置 01 我们首先在手机里的手机助 ...

  2. 解决Win10打开移动热点,手机连接上后无法使用

    前提:Windows10 打开移动热点,手机连接上热点,网速很慢,几乎为0,出现无法刷新网页等问题. (在此之前,误以为是网卡问题,重新安装了网卡仍未解决,经后面的多次探索,发现以下解决办法!!!) ...

  3. 手机连上无线却手机不显示连接服务器,手机连接上wifi却上不了网该怎么处理...

    为什么手机连接上wifi却上不了网?有不少朋友都遇到过这个的问题,即手机能够搜索到wifi信号,而且也能够连接到wifi信号,但是就是不能够上网.出现这样的情况,多半是无线路由器设置有问题导致的.下面 ...

  4. 荣耀6手机常显示无法链接服务器怎么处理,华为手机连接上WiFi上不了网怎么办...

    华为手机(Mate7,荣耀6 Plus,荣耀6,P7) 连接上WiFi上不了网怎么办每当小编被遇到这样的问题,小编都会深深的醉一把.这样的问题就应该被消灭在火星上,谁让他来地球的.网络就像一张大网,哪 ...

  5. 关于手机连接上WiFi但是部分软件不能上网解决办法

    针对有些人的手机可以连接上WiFi但是手机上部分软件不能上网的问题,小弟今天也经历了.但是网上的各种解决办法根本不能解决办法,好吧,直接说解决办法. 方法其实很简单,在手机上选择自己连接的那个无线网, ...

  6. Ubuntu(Linux)下手机调试Android程序(小米手机连接上Android ADB)

    我觉得对于一个Android程序员来说,不能用手机调试程序是多么痛苦的一件事情呀!!!至少我是这样哈 刚用Ubuntu的我,马上就碰到了这个问题哈,我的小米2S不能够被android tools ad ...

  7. 解决手机连接上wifi可以上网,电脑不上不了网的问题

    问题 一般家里的 路由器 开启了 DHCP 动态分配 IP 功能,由于无法分配 IP 就可能导致电脑无法上网,只需要让电脑重新获取 IP 即可. 可解决的情况 电脑成功连上 WIFI: 电脑右下角 W ...

  8. 如何让电脑连接上手机的无线网

    手机用万能钥匙连接上一个网速特别快的网,无奈并不知道这个无线网的密码. 前提:手机连接上无线网. 第一步: 将手机,电脑用数据线连接上,并将手机调成"传输文件"模式. 前提:以荣耀 ...

  9. 如何上手机上不了无线网络连接服务器,手机连接不上路由器无线网络怎么处理...

    家里的无线路由器网络,跟电脑连接正常,但与手机连接却经常会出现这3种情况:手机搜索不到无线信号;手机连接上了无线网络但却无法上网;手机突然上不了网.下面是学习啦小编给大家整理的一些有关手机连接不上路由 ...

最新文章

  1. SVM算法在项目实践中的应用!
  2. pycharm执行python程序报错ImportError: DLL load failed: torchvision找不到指定的程序
  3. mySQL之单表更新
  4. 目标跟踪_MeanShift
  5. RabbitMQ Network Partitions 服务日志对比
  6. Spring事务配置的五种方式 说明
  7. Makefile(一)
  8. layui中日期格式化方式
  9. 哨兵系列卫星_空客“哥白尼哨兵-1C”卫星雷达天线首次展开双翼
  10. 网页设计Dreamweaver【2】
  11. DBVisualizer导入excel数据
  12. 月结重头戏--外币评估
  13. pbl和sbl_探讨:PBL教学法
  14. 名医高效良方(三叉神经痛)
  15. 腾讯安全发布iOA SaaS版产品,为企业提供安全访问服务
  16. selenium的常见方法及使用
  17. 模拟用户操作 京东抢购 华为mate40 Pro、支付的js脚本
  18. android 开源 + 一些素材网站
  19. 视频教程-requirejs新手上手课-JavaScript
  20. 制作特斯拉汽车自有监控优盘

热门文章

  1. python3常见中文乱码解决
  2. 由铝合金工字钢和蒙皮构成的40机翼的喷气式飞机
  3. 海量数据的KNN分类、Kmeans聚类
  4. 742-有三个人去住旅馆,住三间房,每一间房10元
  5. RSA算法以及其破解方法
  6. PEP 8 E231 missing whitespace after ‘,’
  7. (原创)SurfaceView介绍和使用
  8. 计算机专业毕业论文java毕业设计网站SSH人事管理系统|人力请假考勤工资人事奖惩[包运行成功]
  9. jupyter中图片显示
  10. 毕业论文相关工具、格式、细节