中华街zhshops

使用GnuRadio+OpenLTE+SDR搭建4G LTE基站

0×00 前言
   
     在移动互联网大规模发展的背景下,智能手机的普及和各种互联网应用的流行,致使对无线网络的需求呈几何级增长,导致移动运营商之间的竞争愈发激烈。但由于资费下调等各种因素影响,运营商从用户获得的收益在慢慢减少,同时用于减少韵味和无线网络的升级投资不断增加,但收入却增长缓慢。为保证长期盈利增长,运营商必须节流。
   
    SDR Software Define Radio 软件定义无线电可将基站信号处理功能尽量通过软件来实现,使用通用硬件平台可快速地实现信号的调制解调,编码运算,SDR为现有通信系统建设提供了全新思路,给技术研究开发降低了成本、并提供了更快的实现方式。(引用 基于开源SDR实现LTE系统对比)
    SDR是否能打破传统运营商在通信行业的垄断呢?
    另外值得关注的是:国外安全大会上从数年前2G GSM攻击议题到近期的LTE 4G安全议题,基站通信安全一直备受安全爱好者关注。


在这一背景下,国外OpenLTE开源项目成为热门话题:

OpenLTE是在Linux系统下的使用GNURadio软件开发包实现的3GPP通信协议的一个开源项目,主要实现一个简单的4G基站的功能。在文章后面的内容中,我们将分享如何搭建、使用OpenLTE.
    至于使用BladeRF搭建GSM基站的内容可阅读:
    GSM BTS Hacking: 利用BladeRF和开源BTS 5搭建基站
    GSM Hacking:使用BladeRF、树莓派、YatesBTS搭建便携式GSM基站
    Demo:

card01.jpg

小百科:
   
     2G网络是指第二代无线蜂窝电话通讯协议,是以无线通讯数字化为代表,能够进行窄带数据通讯。常见2G无线通讯协议有GSM频分多址(GPRS和EDGE和CDMA ) 传输速度很慢。
     3G网络是第三代无线蜂窝电话通讯协议,主要是在2G的基础上发展了高带宽的数据通信,并提高了语音通话安全性。3G一般的数据通信带宽都在500Kb/s以上。目前3G常用的有3种标准:WCDMA、CDMA2000、TD-SCDMA,传速速度相对较快,可以很好的满足手机上网等需求。
     4G网络是指第四代无线蜂窝电话通讯协议,该技术包括TD-LTE和FDD-LTE两种制式,是集3G与WLAN于一体并能够传输高质量视频图像以及图像传输质量与高清晰度电视不相上下的技术产品。 4G系统能够以100Mbps的速度下载,比拨号上网快2000倍,上传的速度也能达到20Mbps,并能够满足几乎所有用户对于无线服务的要求。

0×01 环境搭建
   
     OS:Ubuntu
     GnuRadio 3.7
     BladeRF
     HackRF
   
    1.1 BladeRF
    1.1.1 驱动
         mkdir bladeRFwget -c https://github.com/Nuand/bladeRF/archive/master.zipunzip master.zipcd bladeRF-mastercd hostmkdir buildcd buildcmake -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=/usr/local -DINSTALL_UDEV_RULES=ON ../make -j4make install > install.logldconfig   
    1.1.2 BladeRF 固件
         wget -c http://www.nuand.com/fx3/bladeRF_fw_v1.8.0.imgbladeRF-cli -f bladeRF_fw_v1.8.0.img -v verbose   
    1.2 GNURadio
         mkdir gnuradiocd gnurdiowget http://www.sbrac.org/files/build-gnuradiochmod a+x build-gnuradio./build-gnuradio –vsudo apt-get install libpolarssl-dev     
    0×02 另辟蹊径
    以上步骤所需依赖包较多,想偷懒的童鞋可以使用GnuRadio发布的Ubuntu LiveCD,里边已经搭建好了gnuradio、HackRF、BladeRF、USRP、gqrx、rtl-sdr等一些列SDR所需的依赖环境。使用这种方式可以避免安装系统环境中遇到的绝大多数坑。
    下载链接:http://gnuradio.org/redmine/proj ... iki/GNURadioLiveDVD

card02.jpg

2.1 编译OpenLTE (文件列表)
         wget http://ufpr.dl.sourceforge.net/p ... enlte_v00-19-04.tgz  //(目前最新版)tar zxvf openlte_v00-19-04.tgzcd openlte_v00-19-04/mkdir buildcd buildsudo cmake ../sudo makesudo make install
card03.jpg


0×03 搜索附近基站
    插入SDR设备,这里我使用了BladeRF(测试了一下HackRF也能使用,但由于HackRF采用USB 2.0传输数据,其效率会比BladeRF低很多,有条件的同学可以使用USRP):

card04.jpg

osmocom_fft --samp-rate 80000000

card05.jpg

card06.jpg

OpenLTE编译完成之后会在build目录下生成可执行文件:

card07.jpg

cd LTE_fdd_dl_scan./LTE_fdd_dl_scan

新建一终端,通过Telnet进入OpenLTE工作终端交互界面:

card08.jpg

telnet端执行start开始扫描:

LTE_fdd_dl_scan将扫描dl_earfcn_list列表中的FCN值:从25到575
    ARFCN:绝对无线频道编号 (Absolute Radio Frequency Channel Number – ARFCN ),是在GSM无线系统中,用来鉴别特殊射频通道的编号方案,相信嗅探过GSM短信的童鞋对它一点不陌生。4G LTE中ARFCN被称作EARFCN。
    3.1 搜索电信FDD LTE网络:(telnet端)
         write band 1helpstart   

         telnet 127.0.0.1 20000

card09.jpg

3.2 搜索联通FDD LTE网络:(telnet端)
         stopwrite band 3start   
   

3.3 关闭搜索:(telnet端)
         shutdown   

   


   



分享至 : QQ空间
收藏

0 个回复

您需要登录后才可以回帖 登录 | 立即注册