第一篇博客獻給我做了很長時間的課程設計,也就是題目所說的3G無線路由器。本次開發所使用的開發平臺為樹莓派開發板,下面進入正題.....
目標:將樹莓派設置成為一個3G無線路由器,通過華為的E261撥號上網。
工具:樹莓派開發板,3G無線上網卡E261,無線網卡RT5370,
步驟:
一、轉換E261的模式
1、查看連接的USB設備
pi@raspberrypi ~ $ lsusbBus 001 Device 002: ID 0424:9514 Standard Microsystems Corp.Bus 001 Device 001: ID 1d6b:0002 linux Foundation 2.0 root hubBus 001 Device 003: ID 0424:ec00 Standard Microsystems Corp.Bus 001 Device 004: ID 148f:5370 Ralink Technology, Corp. RT5370 Wireless AdapterBus 001 Device 005: ID 1a40:0101 Terminus Technology Inc. 4-Port HUBBus 001 Device 006: ID 058f:6387 Alcor Micro Corp. Flash DriveBus 001 Device 007: ID 12d1:1446 Huawei Technologies Co., Ltd. E1552/E1800/E173 (HSPA modem)
最后一行的ID部分為E261的廠商號與設備號,此時的E261是相當于一個存儲設備,必須進行模式轉換,使其成為一個Modem設備
2、安裝usb_modeswitch
pi@raspberrypi ~ $ sudo aptitude install usb-modeswitch
3、修改配置文件
pi@raspberrypi ~ $ sudo nano /etc/usb_modeswitch.conf
在文件的最后加入以下內容:
######################################################### Huawei, newer modemsDefaultVendor= 0x12d1DefaultPRoduct=0x1446TargetVendor= 0x12d1TargetProductList="1001,1406,140b,140c,1412,141b,1436,14ac"CheckSuccess=20MessageContent="55534243123456780000000000000011062000000100000000000000000000"
4、重新插拔E261,再次執行lsusb
pi@raspberrypi ~ $ lsusbBus 001 Device 002: ID 0424:9514 Standard Microsystems Corp.Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hubBus 001 Device 003: ID 0424:ec00 Standard Microsystems Corp.Bus 001 Device 004: ID 148f:5370 Ralink Technology, Corp. RT5370 Wireless AdapterBus 001 Device 005: ID 1a40:0101 Terminus Technology Inc. 4-Port HUBBus 001 Device 006: ID 058f:6387 Alcor Micro Corp. Flash DriveBus 001 Device 007: ID 12d1:1436 Huawei Technologies Co., Ltd.
此時設備號已變為1436,表示轉換成功。
需要說明的是,若使用其他3G網卡,配置文件是不同的,自己Google
二、下載安裝ppp、sakis3g和umtskeeper,實現撥號上網
ppp軟件包將建立基于點對點協議的守護進程,用于管理你和網絡運營商之間的通信。sakis3g是一個用來撥號上網的腳本,它帶有可交互的撥號界面,非常方便。umtskeeper是利用sakis3g來進行自動重連3g網絡的。也可使用wvdial來撥號上網,
使用命令 aptitude install wvdial 安裝,它會同時安裝ppp軟件包。下面介紹的是前一種方法。
1、安裝ppp
pi@raspberrypi ~ $sudo apt-get install ppp
2、為了便于管理,創建文件夾umtskeeper/將umtskeeper、sakis3g都放在這個文件夾里。
創建文件夾umtskeeper,并下載umtskeeper
sudo mkdir umtskeepercd umtskeepersudo wget "http://zool33.uni-graz.at/petz/umtskeeper/src/umtskeeper.tar.gz"sudo tar -xzvf umtskeeper.gzsudo chmod +x umtskeeper
Sakis3g官網已經掛了,不過還好有其他鏡像可以下。
sudo wget "http://downloads.sourceforge.net/project/vim-n4n0/sakis3g.tar.gz?r=http%3A%2F%2fsourceforge.net%2Fprojects%2Fvim-n4n0%2Ffiles%2F&ts=1363537696&use_mirror=tene~t" -O sakis3g.tar.gzsudo tar -xzvf sakis36.tar.gzsudo chmod +x sakis3g
3、撥號上網
sudo ./sakis3g --interactive "connect"
如下進入交互界面:
(如撥號出現錯誤,建議重啟下樹莓派)
輸入APN的信息
聯通的APN為3gnet,用戶名和密碼似乎可以隨便填,我填的是user和pass
查看連接信息
./sakis3g connect info
斷開連接
sudo ./sakis3g --interactive "disconnect"
4、設置開機自動撥號上網
在步驟2中下載了umtskeeper,也可以用它調用sakis3g來聯網,命令如下:
sudo ./umtskeeper --sakisOperators "USBINTERFACE='0' OTHER='USBMODEM' USBMODEM='12d1:1436' APN='CUSTOM_APN' CUSTOM_APN='3gnet' APN_USER='user' APN_PASS='pass'" --sakisswitches "--sudo --console" --devicename 'Huawei' --log --silent --monthstart 8 --nat 'no'
將以上命令寫入rc.local
編輯rc.local
pi@raspberrypi ~ $sudo nano /etc/rc.local
將以下內容插入exit0這一行之前
/home/pi/umtskeeper --sakisoperators "USBINTERFACE='0' OTHER='USBMODEM' USBMODEM='12d1:1436' APN='CUSTOM_APN' CUSTOM_APN='3gnet' APN_USER='user' APN_PASS='pass'" --sakisswitches "--sudo --console" --devicename 'Huawei' --log --silent --monthstart 8 --nat 'no'
保存退出,下次便可實現開機啟動撥號上網。
三、創建無線AP
1、配置無線網卡為固定ip地址
輸入命令
sudo nano /etc/network/interfaces
編輯網絡配置文件
找到這幾行注釋掉,如下
#allow-hotplug wlan0#iface wlan0 inet manual#wpa-roam /etc/wpa_supplicant/wpa_supplicant.conf#iface default inet dhcp
添加以下幾行
iface wlan0 inet static address 192.168.10.1netmask 255.255.255.0
這里需要說明的是192.168.10.1是給raspberrypi做的路由器分配的網關ip。這個不能跟局域網里其他路由網關ip重復
2安裝hostapd
Linux下使用hostapd來建立無線AP服務輸入命令,安裝hostapd
sudo apt-get install hostapd
編輯hostapd默認配置文件
sudo nano /etc/default/hostapd
找到
#DAEMON_CONF=""修改如下
DAEMON_CONF="/etc/hostapd/hostapd.conf"編輯hostapd配置文件
sudo nano /etc/hostapd/hostapd.conf
新聞熱點
疑難解答