openwrt使用3G拔號的實踐筆記

參照文檔:html

https://soha.moe/post/make-4g-wifi-ap-with-openwrt.htmlpost

步驟:code

一、安裝必要的包:htm

opkg update
opkg install chat comgt kmod-usb-serial kmod-usb-core kmod-usb2 libusb-1.0 luci-proto-3g usbutils libpthread librt zlib usbreset usb-modeswitch

二、查看設備:ci

lsusb
lsusb -t

lsusb主要做用是查看:venid和proid (下面以華爲的3G手指爲例:venid : 0x12d1 和proid:0x1506)路由

把查到的venid和proid分別寫入/etc/usb_modeswitch.d/12d1:1506文件中:文檔

# unknown band card
TargetVendor=0x12d1
TargetProduct=0x1506
SierraMode=1

另外,還要修改:/etc/modules.d/usb-serialget

usbserial vendor=0x12d1 product=0x1506

lsusb -t主要做用是查看通過usb-modeswitch後的設備是否正常it

三、重啓路由器使上面配置生效class

四、使用comgt -d /dev/ttyUSB0等命令查找USB對應的口

五、回到WEB界面,新增一個網卡,協議選UTMS/GPRS/EV-DO,Modem設備選剛纔找到的/dev/ttyUSB0,服務類型選UMTS,APN參數填3gnet(聯通適用的APN),而後保存便可

六、使用過程當中發現有時會莫明奇妙ttyUSB0~ttyUSB3不見了,因此寫了如下腳本檢測並復位

#!/bin/sh
aa=`ls /dev/ttyUSB* | wc -l`
echo tty device : $aa
if [ $aa -eq 0 ]; then
#       reboot
        usbreset 12d1:1506
        sleep 5
fi
bb=`route -n | grep "^0.0.0.0" | grep 3g | wc -l`
echo route : $bb
if [ $bb -eq 0 ]; then
        ubus call network.interface.3G down
        echo reconnecting
        sleep 5
        ubus call network.interface.3G up
fi

七、理論上上述配置過程一樣適用4G手指

相關文章
相關標籤/搜索