欢迎来到 黑吧安全网 聚焦网络安全前沿资讯,精华内容,交流技术心得!

使用USRP探索无线世界 Part 1:USRP从入门到追踪飞机飞行轨迹

来源:本站整理 作者:佚名 时间:2016-11-15 TAG: 我要投稿

温馨提示:请自觉遵守无线电管理法规,依法设置和使用无线电设备

USRP是数款流行的SDR硬件中功能和应用都相对成熟的一款产品,从WIFI协议、ZigBee协议、RFID协议、GSM通信系统、LTE 4G通信系统到飞机通信、卫星通信USRP都能很好的进行支持。软件开发工程师可以用它开发应用,安全工程师则用它来测试、研究相关的无线通信协议。
很大一部分玩过电视棒的小伙伴都使用过电视棒+dump1090的方案实现过追踪飞机飞行轨迹这一功能。之所以能够很容易的跟踪飞机,是因为航空CNS(通信导航监视)系统里大量采用非常古老的无线标准。

(电视棒+dump1090 2D)

 
(图片来源:http://slideplayer.com/slide/2547225)
二次监视雷达(SSR)系统,地面站发射1030MHz的查询信号,飞机接收到此信号之后在1090MHz发射应答信号,信号中包含了飞机的一些信息,显示在空管的雷达屏幕上。还有空中防撞系统(TCAS),飞机可以自己发射1030MHz的查询信号,其他飞机接收到此信号之后在1090MHz发射应答信号,因此一架飞机得以”看到”周围的飞机。由于以上的查询-应答模式在飞机很多的时候显得效率不是那么高,因此新出现了一种ADS-B方式。在ADS-B中,每架飞机不等查询,主动广播自己的信息,这时监视和防撞需要做的就仅仅是接收了。
在通用航空当中ADS-B信号经常在978MHz发射,在商业飞行中ADS-B信号经常在1090MHz发射。
0×01 HardWare
PC:Ubuntu OR Mac
SDR:USRP、天线、USB数据线

 
0×02 Software
2.1安装pip、pybombs
apt-get update
apt-get install git
apt-get install python-pip
pip install --upgrade pip
pip install git+https://github.com/gnuradio/pybombs.git
pybombs recipes add gr-recipes git+https://github.com/gnuradio/gr-recipes.git pybombs recipes add gr-etcetera git+https://github.com/gnuradio/gr-etcetera.git
pybombs prefix init /usr/local -a myprefix -R gnuradio-default
pybombs install gqrx gr-osmosdr uhd
以上内容是Ubuntu下安装SDR相关软件的方法,在Mac OSX中则可以使用mac port 进行安装。
2.2下载USRP镜像
使用pybombs安装完UHD(USRP Hardware Driver)后还需下载固件镜像以及FPGA镜像,执行:
python  /usr/local/lib/uhd/utils/uhd_images_downloader.py

插入USRP后可执行:
uhd_find_devices
或者
uhd_usrp_probe
来查看设备信息:

2.3编译安装gr-air-modes:
git clone https://github.com/bistromath/gr-air-modes
cd gr-air-modes
mkdir build
cd build
cmake ..
make
sudo make install
sudo ldconfig
2.4 安装谷歌地球
Ubuntu 32 bit:
wget http://dl.google.com/dl/earth/client/current/google-earth-stable_current_i386.deb
Ubuntu 64 bit:
wget http://dl.google.com/dl/earth/client/current/google-earth-stable_current_amd64.deb
sudo dpkg -i google-earth-stable_current_amd64.deb
Mac osx:
wget https://dl.google.com/earth/client/advanced/current/GoogleEarthMac-Intel.dmg

 
0×03 解码飞机信号&导入谷歌Earth
cd gr-air-modes/apps/
./modex_rx -K test.kml
执行App目录下的modex_rx,开始接收并解码来自飞机的1090MHz无线信号,-K参数即把解码到的航班号、经纬度、飞行速度等等保存为.kml文件。
打开谷歌地球:添加–>网络链接–>

 
新建链接名称,以及kml文件的绝对路径:

 
设定刷新时间,以及是否在刷新时前往该视图:

 
如果开启刷新前往视图后,google-earth会自动定位到你所在的区域并显示接收到区域上空的飞机。

(飞机飞行轨迹 3D)
地图上显示飞机的航班号,双击飞机图标可以显示该飞机高度、飞行速度等信息。

【声明】:黑吧安全网(http://www.myhack58.com)登载此文出于传递更多信息之目的,并不代表本站赞同其观点和对其真实性负责,仅适于网络安全技术爱好者学习研究使用,学习中请遵循国家相关法律法规。如有问题请联系我们,联系邮箱admin@myhack58.com,我们会在最短的时间内进行处理。
  • 最新更新
    • 相关阅读
      • 本类热门
        • 最近下载