OpenBTS 5.0安裝


在安裝OpenBTS 5.0之前,要先安裝GNU Radio和UHD,只要運行安裝文件包可執行腳本build-gnuradio,就可以自動安裝,安裝過程耗時較長,但是不需要過多的手動操作。

Step1:安裝合適的系統

Ubuntu Desktop or Server 32-bit 12.04(我使用的是Desktop)

Step2:更新Git

OpenBTS使用了Git的幾個新的特性,為了確保客戶端的兼容性,Git的版本必須在1.8.2以上。命令如下:

$ sudo apt-get install software-properties-common python-software-properties
$ sudo add-apt-repository ppa:git-core/ppa
(press enter to continue)
$ sudo apt-get update
$ sudo apt-get install git

Step3:下載

l 工具:

首先確定Git的版本是不是大於1.8.2

$ git --version
git version 1.9.1

下載最新的工具

$ git clone https://github.com/RangeNetworks/dev.git

l 組件:

首先在GitHub上建立自己的SSH keys。首先登陸github,可以使用已經注冊的github賬號。

在執行下列命令之前,首先輸入命令

sudo apt-get install ssh

安裝了ssh之后,再進行下列步驟

產生SSH keys的步驟:

1、首先檢查已經存在的SSH keys,輸入命令

clip_image002

檢查是否已經有了公鑰,默認的公鑰文件名:

Ø id_dsa.pub

Ø id_ecdsa.pub

Ø id_ed25519.pubid_rsa.pub

注:如果沒有出現上述文件,則需要使用ssh-keygen -t rsa命令產生

2、產生新的SSH key

clip_image004

clip_image006

clip_image008

clip_image010

3、把自己的SSH key加到GitHub

打開id_rsa.pub,把里面的內容復制到剪貼板

clip_image012

登陸自己的github,在每個頁面的右上角,點擊clip_image013

選擇SSH keys,點擊add SHH key

title field添加名字

把復制的內容粘貼到“keyfield

4、檢測是否產生了SSH keys

clip_image015

這時可能會有這樣的提示:

clip_image017

輸入yes,顯示如下

clip_image019

說明SSH配置成功。

下面就可以下載所有的組件了,只需要簡單的輸入命令:

$ cd dev
$ ./clone.sh

就可以實現自動的安裝。

Step4:選擇一個branchtag

$ ./switchto.sh master

Step5:編譯

Build.sh腳本會自動安裝所有編譯所需要的東西

$ ./build.sh N210

編譯的包會被放在一個新的目錄中。這個目錄在dev的BUILD中,找到最新的時間戳文件夾。

注意:這一步需要在安裝完GNU Radio之后進行,否則會報找不到UHD包的錯誤。

Step6:安裝

先cd到最新的時間戳文件里

$ sudo dpkg -i *.deb

安裝了該目錄下所有.deb

這里可能會遇到dependencies的問題,輸入下面的命令可以解決:

$ sudo apt-get -f install

Step7:運行

下面可以運行OpenBTS

$ sudo start sipauthserve
$ sudo start smqueue
$ sudo start openbts
$ sudo start asterisk

如果上述組件都能被啟動,分配到進程號,說明OpenBTS安裝成功,這里需要注意一點,前兩個進程可以在沒有安裝完GNU Radio的情況下被啟動,openbts和asterisk必須在安裝完GNU Radio的情況下才能被啟動。是否能被啟動的判斷依據是是否分配了進程號,如果輸入start命令顯示的是unknown job,則表示啟動失敗。

停止的命令:

$ sudo stop sipauthserve
$ sudo stop smqueue
$ sudo stop openbts
$ sudo stop asterisk

Step8:用戶數據庫的注冊

$ sudo sqlite3 /var/lib/asterisk/sqlite3dir/sqlite3.db
sqlite> .tables
DIALDATA_TABLE RRLP SIP_BUDDIES rates
sqlite> select * from sip_buddies;
sqlite> select * from dialdata_table;
sqlite> .quit

以上,OpenBTS的安裝結束。

下面進入運行的階段。

OpenBTS運行

Step1:連接USRP,按照USRP的ip地址,給主機配置一個網絡,命令行中中執行uhd_find_devices,若能夠找到USRP,則繼續執行下述步驟,否則,檢查IP地址配置是否正確,網線是否正確連接,UHD和GNU Radio驅動是否正常運行。

Step2:啟動上面提到的四個進程:

$ sudo start sipauthserve
$ sudo start smqueue
$ sudo start openbts
$ sudo start asterisk

Step3:四個進程都被分配了各自的進程號以后。啟動OpenBTSCLI命令,操作如下:

$ cd /OpenBTS
$ ./OpenBTSCLI
OpenBTS> help       (list all commands available)
OpenBTS> audit      (check if your configuration is correct)
OpenBTS> config     (list all parameters)
OpenBTS> config XYZ (list all parameters that contain XYZ)
OpenBTS> devconfig  (change developer and factory parameters)
OpenBTS> trxconfig  (view the factory radio calibration) [so far only on Range Networks equipment]
OpenBTS> chans      (view the currently active channels)
OpenBTS> tmsis      (view all IMSIs that have interacted with the system)
OpenBTS> trans      (view all completed transactions like calls and sms)
OpenBTS> quit

Step4:啟動OpenBTSCLI以后

config GSM.Radio.Band 900
config GSM.Radio.C0 1
config Control.LUR.OpenRegistration .*

上面配置BTS 為GSM900,ARFCN 1,對所有手機開放注冊權限。注意:該配置使得手機沒有注冊限制。這樣如果系統配置天線的情況下,附近的任何手機便可使用該網絡,謹慎在居民點使用。

給101發送你想使用的手機號碼,位數在5到12位之間均可。

手機選擇運營商(我搜到的運營商名字是00101),連接該運營商。

這樣配置以后手機就可以接入網絡,並實施通話,發短信功能了。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM