OpenBTS source code可以在这里下载:http://sourceforge.net/projects/openbts/

OpenBTS入门的各种问题可以在这里找到答案:http://gnuradio.org/redmine/projects/gnuradio/wiki/OpenBTS

开始接触gnuradio,然后到OpenBTS+asterisk,令我十分兴奋。同时也手足无措,入门之后,谁也不知道你要搭建的平台用于什么用途,没有办法给以明确的指导,只能自已动手了。

刚完好OpenBTS后,我迫不及待的运行了。结果如下图,可以运行。但是,看看下面的ALARM,发生了TXTUNE failed with status 1的悲剧。后来才明白,是使用的硬件不同引起的。

下图是在http://sourceforge.net/projects/openbts/里,fordummies.pdf教程中使用的硬件

下面的图是我使用的硬件,多了一块板,RX和TX分开了。这是很大的不同,所以不能直接使用OpenBTS/release,要进行改动,还好,这个工作已经有人完成了。可以直接使用别人改好的,OpenBTS/UHD版本。

使用OpenBTS-UHD版本,自己还是要修改的,如下图,AC_DEFINE(USE_UHD,,Define to 1 if using UHD),这里本来是1的,改为0,因为我不用UHD。

如果你没有改这里,又不用UHD,那在./configure的时候就会出现下面的这个错误。不要小看这个错误,也许就因为这个错误,项目的进度会延期一周。

最后,还有一个关键点,不使用UHD,总要有一个驱动吧。在上述步骤完成后,./configure --with-usrp1 这个usrp1就是你想要使用的驱动!到这里之后 make ,make install 就可以安装好了,真不容易!

安装完成,体验会OpenBTS的趣味。首先,你要得到IMSI,在OpenBTS搭建好后,我这里搭的是GSM.MCC=460  GSM.MNC=10,然后,用手机寻找运营商,就会找到一个名叫 CHN-10的运营商,选择接入它就可以了。接着,就在OpenBTS中用,tmsis就可以得到IMSI。

什么是MCC呢?MCC是Mobile Country Codes,460代表中国

什么是MNC呢?MNC是Mobile Network Codes,10在中国是还没有使用的。

中国具体的运营商和网络如下图:

这些资料在ITU都可以查到。

通过OpenBTS,得知我的IMSI为460029078808551。这样就可以通过OpenBTS给我手机发短信了。

其格式如下: sendsms <IMSI> <发送短信在手机上显示的号码>(号码可以任意,但一定要有) MNC <text>

由上图,这样短信就发出去了。

这是我收到的短信,乱码的那条,是我尝试发中文信息,结果发现不支持。有人可能会好奇,IMSI怎么不是手机号码啊?IMSI是存在SIM卡里的,确实不是手机号码,也不是SIM卡后面的数字。真正的手机号码是MSISDN。GSM把是两者区分开的,为了一定的安全,真正使用时还会分配一个TMSI!

这样OpenBTS就可以正常使用了。两手机互打电话和互发短信,光有OpenBTS还不行,还要asterisk(这个以后再提)。

接着就安装wireshark和wammu



安装完成后,就可以按https://svn.berlin.ccc.de/projects/airprobe/wiki/tracelog 里的教程,用Nokia3310深入学习GSM协议啦!!!

最后,推荐一下两本资料


最新文章

  1. 在SQL Server中 获取日期、日期格式转换
  2. DOM 的选择器 API
  3. Webform——服务器控件与客户端控件
  4. logstash nginx 报ArgumentError: comparison of String with 5 failed
  5. eclipse无法导入已有android项目
  6. centos和ubuntu下使用cron设置定时任务
  7. android-------手写签名系统的设计与实现之实现画笔设置
  8. Hadoop权威指南:FSDataInputStream对象
  9. Java代码实现 增删查 + 分页——实习第四天
  10. springboot swagger-ui结合
  11. C++格式化输出浮点数
  12. Dynamics Crm2011 Removes an option from an Option Set control
  13. Windows 10 2016 LTS版本下载与激活
  14. flutter- 圆角
  15. 安装windows 2003iso 步骤
  16. sama5d3 开入测试
  17. 软件架构的描述-Architecture Models
  18. P4219 [BJOI2014]大融合
  19. codevs——1044 拦截导弹(序列DP)
  20. php preg_replace去除html xml 注释

热门文章

  1. Nginx环境中如何将HTTP跳转至HTTPS设置
  2. USB协议(1)
  3. 读取iOS通讯录
  4. fgetc和fputc函数
  5. NOIP 2015 信息传递
  6. Android webview 上传文件不调用openFileChooser解决办法
  7. SQLSERVER truncate table之后是否会重置表的自增值
  8. Dynamic CRM 2013学习笔记(二十九)报表设计:reporting service 报表开发常见问题
  9. JavaScript获取onclick、onchange等事件的值
  10. JavaScript函数绑定