前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >使用srsLTE搭建4G基站

使用srsLTE搭建4G基站

作者头像
物联网安全小编
发布于 2020-08-21 07:05:47
发布于 2020-08-21 07:05:47
7.5K030
代码可运行
举报
文章被收录于专栏:物联网IOT安全物联网IOT安全
运行总次数:30
代码可运行

很多IoT设备都在使用4G网卡,但测4G链路安全时候,毕竟不像WIFI测试那么方便,CMW500的价格还是很贵的,尤其是想IoT安全爱好者童鞋,或者其他移动端需要测试4G链路的,其实可以使用低成本SDR方案,也就是这里要介绍的。

最低成本可以使用LimeSDR Mini+PC机,也可以使用BladeRF x40或者x115来实现。如果条件允许,还是使用USRP B200mini、B210或者N210甚至X310比较舒服。

srsLTE 是软件无线电系统(SRS)的开源SDR LTE软件套件。是由爱尔兰SoftwareRadioSystems (SRS)公司开发实现的免费开源LTE SDR平台,在AGPLv3 license许可下发布,并且在实现中使用了OpenLTE的相关功能。有关文档,指南和项目新闻,请参见srsLTE项目页面(www.srslte.com)

srsLTE包括以下组件:

  • srsUE - 完整的 SDR LTE UE 应用,支持从 PHY 到 IP 层特性
  • srsENB - 完整的 SDR LTE eNodeB 应用
  • srsEPC - 轻量级 LTE 核心网络实现,支持 MME, HSS 和 S/P-GW
  • 高度模块化的共用库 PHY, MAC, RLC, PDCP, RRC, NAS, S1AP 和 GW层

通用特性:

  • 支持 LTE Release 10
  • 测试频率: 1.4, 3, 5, 10, 15 and 20 MHz
  • 传输模式1(单天线),2(发射分集),3(CCD)和4(闭环空间复用)
  • 基于频率的ZF和MMSE均衡器
  • 演进的多媒体广播和多播服务(eMBMS)
  • 高度优化的Turbo解码器,采用Intel SSE4.1 / AVX2(+100 Mbps)和标准C(+25 Mbps)
  • 支持 MAC, RLC, PDCP, RRC, NAS, S1AP 和 GW 层
  • 具有每层日志级别和十六进制转储的详细日志系统
  • MAC层wireshark数据包捕获
  • 命令行跟踪指标
  • 详细的输入配置文件
  • 用于EPA,EVA和ETU 3GPP频道的信道模拟器
  • 基于ZeroMQ的伪RF驱动器,用于IPC/网络上的 I/Q

srsUE 特性:

  • FDD 和 TDD 配置
  • 运营商聚合支持
  • UE的小区搜索和同步过程
  • 软USIM支持Milenage和XOR身份验证
  • 使用PCSC框架的硬USIM支持
  • 在网络连接时创建的虚拟网络接口tun_srsue
  • QoS 支持
  • i7四核CPU中20 MHz MIMO TM3 / TM4配置中的150 Mbps DL。
  • i7四核CPU中20 MHz SISO配置中的75 Mbps DL。
  • i5双核CPU中10 MHz SISO配置中的36 Mbps DL。

srsUE 在如下网络设备中测试和验证通过:

  • Amarisoft LTE100 eNodeB 和 EPC
  • 诺基亚FlexiRadio系列FSMF系统模块具有1800MHz FHED无线电模块和TravelHawk EPC模拟器
  • Huawei DBS3900
  • Octasic Flexicell LTE-FDD NIB

srsENB 特性:

  • FDD 配置
  • 循环MAC调度程序,具有类似FAPI的C ++ API
  • SR 支持
  • 定期和非周期性CQI反馈支持
  • 标准S1AP和GTP-U与核心网络接口
  • 具有商用UE的20MHz MIMO TM3 / TM4中的150Mbps DL
  • 具有商用UE的SISO配置中的75 Mbps DL
  • 20 MHz的50 Mbps UL,商用US
  • 用户平面加密

srsENB已通过以下手机进行测试和验证:

  • LG Nexus 5 and 4
  • Motorola Moto G4 plus and G5
  • Huawei P9/P9lite, P10/P10lite, P20/P20lite
  • Huawei dongles: E3276 and E398

srsEPC 特性:

  • 单个二进制、轻量级LTE EPC实现,具有:
  • MME(移动性管理实体)具有到eNB的标准S1AP和GTP-U接口
  • 标准SGi的S/P-GW暴露为虚拟网络接口(TUN设备)
  • HSS(归属订户服务器),具有CSV格式的可配置用户数据库
  • 支持分页

硬件支持:

支持如下硬件:

  • USRP B200
  • USRP B210
  • USRP B200mini
  • USRP B205mini
  • USRP N210
  • USRP X310
  • limeSDR
  • bladeRF

Github网址:https://github.com/srsLTE/srsLTE

安装部署srsLTE建议用物理机,因为一些指令优化、时序要求非常精准,比如双向验证鉴权的时候,差一点都不行,如果不使用USRP N210或者X310一类通过网络的SDR硬件稳定性,而使用USB接口的话虚拟机稳定性略差。

这里使用Ubuntu 16.04搭配USRP B210进行测试,使用root账户直接安装配置。

先安装低延时内核,之后重启加载新内核:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
apt-get install linux-lowlatency
apt-get install linux-image-`uname -r | cut -d- -f1-2`-lowlatency
apt-get install linux-headers-`uname -r | cut -d- -f1-2`-lowlatency
reboot

需要注意的是,之后如果升级内核,需要手动再安装低延迟内核!

先安装UHD,使用pybombs安装或者源码直接安装都可以,具体如前文所述,这里不再重复。如果是BladeRF、LimeSDR也一样,先装驱动。

在Ubuntu下也可以选择用apt安装:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
add-apt-repository ppa:srslte/releases
apt-get update
apt-get install srsepc srcenb srsue stelte

但需要注意的是,uhd驱动不能用最新的,否则加载usrp会失败。所以,还是建议使用源码编译安装。

这里再讲下用源码安装。

安装srsGUI:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
apt-get install cmake g++ libpython-dev python-numpy swig git libsqlite3-dev libi2c-dev libusb-1.0-0-dev libwxgtk3.0-dev freeglut3-dev libfftw3-dev libmbedtls-dev libboost-program-options-dev libconfig++-dev libsctp-dev libboost-system-dev libboost-test-dev libboost-thread-dev libqwt-dev libqt4-dev
git clone https://github.com/srsLTE/srsGUI.git
cd srsGUI
mkdir build
cd build
cmake ../
make -j4
make install
ldconfig

安装SoapySDR:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
git clone https://github.com/pothosware/SoapySDR.git
cd SoapySDR
git checkout soapy-sdr-0.7.2
mkdir build
cd build
cmake ..
make -j4
make install
ldconfig

安装srsLTE:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
git clone https://github.com/srsLTE/srsLTE.git
cd srsLTE
mkdir build
cd build
cmake ../
make -j8
make test
make install
ldconfig

安装完成后生成配置文件,配置文件user生成到用户路径~/.config/srsLTE/,service生成到/etc/srsLTE路径:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
srslte_install_configs.sh user

配置网络接口,参数是默认能上网的网口,这里是eth0:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
srsepc_if_masq.sh eth0

最后再添加SIM卡的配置,主要是IMSI、KI、OPC,编辑~/.config/srsLTE/user_db.csv文件,格式为:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
(ue_name),(algo),(imsi),(K),(OP/OPc_type),(OP/OPc_value),(AMF),(SQN),(QCI),(IP_alloc)
ue3,mil,221010123456789,6874736969202073796D4B2079650A76,opc,504F20634F6320504F50206363500A4F,8000,000000001234,7,dynamic

再将这些参数写入SIM卡,这里建议使用GPSIMWrite,简单便捷,相比pysim还是方便不少,缺点是只能在Windows下。写卡器可以使用MCR3512、M100等营业厅所用写卡器都可以,用Bludrive IISIM也可以。

白卡选择LTE卡就可以,很多手机或者终端厂商需要用白卡配合CMW500一类综合测试仪进行测试,所以检索测试白卡关键字能买到,价格不便宜。仅供学习使用,请勿用于非法用途!

具体可以设置完LTE的IMSI15、KI和OPC之后,点击Same With LTE,之后点击Write Card写入白卡:

把写好的卡装入手机,再分别启动srsepc和srsenb:

这样srsLTE就启动了,下行2685MHz上行2565MHz。如果不使用USRP,使用BladerRF或者LimeSDR也类似,在启动时候会自动加载。

注:如果USRP、BladeRF驱动都安装了,个别人的环境会出现从USRP换BladeRF无法加载的问题,进入srsLTE的build目录,检查CMakeCache.txt文件中BLADERF_FOUND是TRUE。如果是FALSE,就删掉CMakeCache.txt再重新“cmake..”,按照前面的步骤重新编译安装srsLTE。

注:为了获得最佳性能,建议禁用CPU频率动态调整,比如以下脚本:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
for f in /sys/devices/system/cpu/cpu[0-9]*/cpufreq/scaling_governor ; do
  echo performance > $f
done

在srsenb界面可以输入t回车来实时查看snr、bler等性能指标参数,如图所示:

如果电脑配置高的话,可以打开星座图,修改enb.conf,将enable设置为true,会增加CPU负载:

打开手机的网络选择界面,将手机注册进入网络:

如果手机无法搜索到信号,或者搜到了无法加入,先用其他SDR或者频谱仪检查下是否有信号发出,其次检查信号是否有频偏,因为每种手机对频偏的容忍度是不一样的。笔者实测中,华为的兼容性是最好的。

如果有频偏,修改“ue.conf”中的“freq_offset”参数,如图所示。正常情况下如果使用官方原版SDR设备,而不是山寨SDR设备,很少出现这种情况。另外,使用GPSDO或者其他稳定的时钟输入,也能避免这种问题。

如果还是无法搜索到信号,那就可能是手机的基带问题,比如在默认配置下,测试发现小米MIX就无法搜索到,可以修改下频段,也就是“EARFCN”参数,也可以直接在srsenb执行时加参数:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
srsenb ~/.config/srslte/enb.conf --rf.dl_earfcn 1575

再测试就能搜索到了,如图所示。

EARFCN和频段对照关系如下图所示:

当然,注册进网络后,还需要在电脑上配置nat转发:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
echo 1 > /proc/sys/net/ipv4/ip_forward
iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE

在手机上配置APN,也就是epc.conf中默认设置的srsapn:

手机上APN设置里新建,只需要设置名称和APN即可:

然后手机就可以愉快地上网了:

再进行一次测速:

受限于家里宽带的速度,总体还可以。

同时,在部署的电脑上可以使用wireshark进行抓包,可以对手机的4G流量进行分析,用于手机、平板、工控机等使用4G网络的设备进行分析研究。

除了enb用于手机,还可以使用ue让电脑与电脑连接,这里使用另一台电脑外接一个USRP B210,安装部署流程一致,只是执行应用的时候不是srsepc和srsenb,直接执行srsue即可:

相当于这个USRP就是一个LTE基带,连上基站后会创建一个虚拟网卡tun_srsue,分配的IP是172.16.0.2和srsenb做创建的虚拟网卡在一个网段,可以互相ping一下:

和srsenb类似srsue也可以打开星座图,修改ue.conf,将enable设置为true,如图所示。同样会增加CPU负载,效果如图所示。

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
相比OAI,srsLTE对电脑的性能要求更高一些,但配置更加简便。

更多内容可以看官方文档:
https://docs.srslte.com/en/latest/index.html

最后附一个淘宝的参考购买链接:

https://item.taobao.com/item.htm?id=615846456252

这篇文章转载自简老师的博客:

https://www.white-alone.com/%E4%BD%BF%E7%94%A8srsLTE%E6%90%AD%E5%BB%BA4G%E5%9F%BA%E7%AB%99%E7%94%A8%E4%BA%8E%E6%97%A5%E5%B8%B8%E6%B5%8B%E8%AF%95/

欢迎大家关注简老师的博客

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2020-08-15,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 物联网IOT安全 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
5 条评论
热度
最新
FramePack
FramePack
回复回复点赞举报
FramePack
FramePack
回复回复点赞举报
FramePack
FramePack
回复回复点赞举报
FramePack
FramePack
回复回复点赞举报
FramePack
FramePack
回复回复点赞举报
推荐阅读
我用AI 3步生成了微信红包封面,全网都在求教程!
今年AI视频生成技术非常火爆,于是我便有了一个想法:能不能直接用AI生成一个好看的微信红包封面呢?
算法一只狗
2025/05/12
830
老电脑焕发第二春,玩转 Stable Diffusion 3
几年前,我头脑一热,配置了一台顶配级消费 PC(RTX 2080 Ti GPU + i9 CPU),打算用来学习 AI。然而,起初我并没有找到合适的切入点。深度学习早期阶段,消费级显卡根本无法承担训练大模型、微调大模型,甚至连运行大模型都很吃力。结果,这台电脑主要用来学习 TensorFlow、Python 编程等基础知识,但最后从入门到放弃。不过,当时配置的 CPU 和内存还不错,用来编译 Chromium 浏览器和 Android 系统也算是物尽其用,唯独显卡几乎闲置。随着 Nvidia 不断推出新显卡,RTX 2080 Ti 显得越来越落伍了。
云水木石
2024/06/26
6090
老电脑焕发第二春,玩转 Stable Diffusion 3
【零绘画基础程序员必学】AI绘画入门笔记03—初识ComfyUI+FlUX
前面介绍的SD的操作界面其实叫做 WebUI,这是SD的入门操作界面,它非常适合初学者快速上手。它的界面简洁,功能展示清晰,很适合用户理解SD的生图方式。
CS逍遥剑仙
2025/04/18
2160
0成本!基于腾讯云Cloud Studio,打造属于自己的数字人口播系统,照片+音乐=自动开口,效果炸裂
原文链接:https://mp.weixin.qq.com/s/G39ZHVITRilKlXnKn3mkrA
CloudStudio
2025/03/17
3700
开源视频生成天花板?最强搅局者Mochi 1免费直出电影级特效
开放权重:https://huggingface.co/genmo/mochi-1-preview
新智元
2025/02/14
1160
开源视频生成天花板?最强搅局者Mochi 1免费直出电影级特效
AI新风口?首个高质量「文生视频」模型Zeroscope引发开源大战:最低8G显存可跑
文生图模型Stable Diffusion开源后,将「AI艺术」彻底平民化,只需一张消费级显卡即可制作出非常精美的图片。
新智元
2023/08/07
2K0
AI新风口?首个高质量「文生视频」模型Zeroscope引发开源大战:最低8G显存可跑
[AI里程碑]StableDiffusion3今日开源 | 首个开源超越Midjourney
⚡[AI里程碑]StableDiffusion3今日开源 | 首个开源超越Midjourney
iResearch666
2024/06/14
3350
[AI里程碑]StableDiffusion3今日开源 | 首个开源超越Midjourney
教你用混元AI免费生成微信动态红包封面
虽然今年我写文章并不多,但是还是坚持创作了12个月。微信也因此给我奖励了几千个红包封面。
算法一只狗
2025/01/22
3190
教你用混元AI免费生成微信动态红包封面
NVIDIA狂飙AI ,市值暴涨,PC性能提升60倍!40系SUPER显卡发布,4899元碾压上代旗舰
GeFroce RTX 40 SUPER系列显卡,全新的AI PC,Generative AI模型等全新AI模型和工具,以及AI NPC……NVIDIA甩出的各种王炸级的产品和应用,再次击穿全球用户的想象力!
新智元
2024/01/11
2720
NVIDIA狂飙AI ,市值暴涨,PC性能提升60倍!40系SUPER显卡发布,4899元碾压上代旗舰
AI绘画专栏之 SDXL Fooocus!让SD跟Midjourney一样简单易用!(37)
以下是在具有16GB系统RAM和6GB VRAM(Nvidia 3060笔记本电脑)的相对低端笔记本电脑上的测试。这台机器上的速度约为每次迭代 1.35 秒。令人印象深刻 - 如今,配备3060的笔记本电脑通常价格非常可以接受。
疯狂的KK
2023/11/18
1.2K0
AI绘画专栏之 SDXL Fooocus!让SD跟Midjourney一样简单易用!(37)
安利免费开源的声音克隆、文本转语音整合包软件、一键本地安装!
大家好,我是星哥,今天给大家介绍两款声音克隆、文本转语音的软件,一个是ChatTTS和Spark-TTS,并且都有一键安装包,让你无需复杂的配置,就能在本地轻松体验声音的魅力。
星哥玩云
2025/04/02
6460
安利免费开源的声音克隆、文本转语音整合包软件、一键本地安装!
英伟达引爆AI PC革命,RTX给1亿打工人送算力!40系卡秒生百张图,「黑神话:悟空」画质爆表玩家颤抖
昨天深夜,英伟达CEO黄仁勋甩出能训万亿参数大模型的新核弹B200,直接打破了摩尔定律。
新智元
2024/03/25
2420
英伟达引爆AI PC革命,RTX给1亿打工人送算力!40系卡秒生百张图,「黑神话:悟空」画质爆表玩家颤抖
AI画画模型成本被打下来了!预训练成本直降85%,微调只需单张RTX 2070,这个国产开源项目又上新了
开源地址:https://github.com/hpcaitech/ColossalAI
量子位
2022/12/08
1.3K0
AI画画模型成本被打下来了!预训练成本直降85%,微调只需单张RTX 2070,这个国产开源项目又上新了
Diffusion预训练成本降低6.5倍,微调硬件成本降低7倍!Colossal-AI完整开源方案低成本加速AIGC产业落地
如何更好、更快和更便宜地实现训练、微调 AIGC 模型,已成为 AIGC 商业化和应用爆发的最大痛点。
机器之心
2022/12/15
2.3K0
Diffusion预训练成本降低6.5倍,微调硬件成本降低7倍!Colossal-AI完整开源方案低成本加速AIGC产业落地
Transformers 4.37 中文文档(十一)
在本指南中,我们将看到如何创建自定义管道并在Hub上共享它或将其添加到🤗 Transformers 库中。
ApacheCN_飞龙
2024/06/26
3980
深入GPU硬件架构及运行机制
对于大多数图形渲染开发者,GPU是既熟悉又陌生的部件,熟悉的是每天都需要跟它打交道,陌生的是GPU就如一个黑盒,不知道其内部硬件架构,更无从谈及其运行机制。
数字芯片社区
2021/04/19
4.9K1
深入GPU硬件架构及运行机制
使用 Dify 和 AI 大模型理解视频内容:Qwen 2 VL 72B
本篇作为第一篇内容,以昨天出圈的“黑神话悟空制作人采访视频”为例,先来聊聊经常被国外厂商拿来对比的国产模型:千问系列,以及它的内测版。
soulteary
2024/08/27
1.1K0
使用 Dify 和 AI 大模型理解视频内容:Qwen 2 VL 72B
用让新海诚本人惊讶的 AI 模型制作属于你的动漫视频
本文将介绍如何使用 GAN 模型来生成属于你自己的动漫风格的视频,为自己、喜欢的菇凉或者调皮可爱孩子生成一个别具一格的动漫风格的视频。
soulteary
2022/09/01
1.2K0
用让新海诚本人惊讶的 AI 模型制作属于你的动漫视频
「长文」可能是目前最全的LangChain AI资源库之一
本文是对之前整理过的一版LangChain资源库的更新版本,原整理的地址为:基于LangChain的优秀项目资源库
山行AI
2023/09/08
2.8K0
「长文」可能是目前最全的LangChain AI资源库之一
干货 | 史上最全 OpenCV 活体检测教程!
AI 科技评论按:本文来自著名的计算机视觉教学网站「pyimagesearch」,文章作者为 Adrian Rosebrock。在本文中,Adrian 将就「如何鉴别图像/视频中的真实人脸和伪造人脸」这一问题进行深入的分析,并介绍使用基于 OpenCV 的模型进行活体检测的具体方法。雷锋网 AI 科技评论编译如下。
AI研习社
2019/05/08
1.8K0
干货 | 史上最全 OpenCV 活体检测教程!
推荐阅读
我用AI 3步生成了微信红包封面,全网都在求教程!
830
老电脑焕发第二春,玩转 Stable Diffusion 3
6090
【零绘画基础程序员必学】AI绘画入门笔记03—初识ComfyUI+FlUX
2160
0成本!基于腾讯云Cloud Studio,打造属于自己的数字人口播系统,照片+音乐=自动开口,效果炸裂
3700
开源视频生成天花板?最强搅局者Mochi 1免费直出电影级特效
1160
AI新风口?首个高质量「文生视频」模型Zeroscope引发开源大战:最低8G显存可跑
2K0
[AI里程碑]StableDiffusion3今日开源 | 首个开源超越Midjourney
3350
教你用混元AI免费生成微信动态红包封面
3190
NVIDIA狂飙AI ,市值暴涨,PC性能提升60倍!40系SUPER显卡发布,4899元碾压上代旗舰
2720
AI绘画专栏之 SDXL Fooocus!让SD跟Midjourney一样简单易用!(37)
1.2K0
安利免费开源的声音克隆、文本转语音整合包软件、一键本地安装!
6460
英伟达引爆AI PC革命,RTX给1亿打工人送算力!40系卡秒生百张图,「黑神话:悟空」画质爆表玩家颤抖
2420
AI画画模型成本被打下来了!预训练成本直降85%,微调只需单张RTX 2070,这个国产开源项目又上新了
1.3K0
Diffusion预训练成本降低6.5倍,微调硬件成本降低7倍!Colossal-AI完整开源方案低成本加速AIGC产业落地
2.3K0
Transformers 4.37 中文文档(十一)
3980
深入GPU硬件架构及运行机制
4.9K1
使用 Dify 和 AI 大模型理解视频内容:Qwen 2 VL 72B
1.1K0
用让新海诚本人惊讶的 AI 模型制作属于你的动漫视频
1.2K0
「长文」可能是目前最全的LangChain AI资源库之一
2.8K0
干货 | 史上最全 OpenCV 活体检测教程!
1.8K0
相关推荐
我用AI 3步生成了微信红包封面,全网都在求教程!
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档