openwrt使用3G拔号的实践笔记
参照文档:
https://soha.moe/post/make-4g-wifi-ap-with-openwrt.html
步骤:
1、安装必要的包:
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
2、查看设备:
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-serial
usbserial vendor=0x12d1 product=0x1506
lsusb -t主要作用是查看经过usb-modeswitch后的设备是否正常
3、重启路由器使上面配置生效
4、使用comgt -d /dev/ttyUSB0等命令查找USB对应的口
5、回到WEB界面,新增一个网卡,协议选UTMS/GPRS/EV-DO,Modem设备选刚才找到的/dev/ttyUSB0,服务类型选UMTS,APN参数填3gnet(联通适用的APN),然后保存即可
6、使用过程中发现有时会莫明奇妙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
7、理论上上述配置过程同样适用4G手指
openwrt使用3G拔号的实践笔记的更多相关文章
- OPENWRT路由3G拔号实验
以下摘自:http://www.right.com.cn/forum/thread-155168-1-1.html 首先下载 Barrier Breaker 14.07 固件 配置好网络,可以访问到i ...
- git实践笔记
title: git实践笔记 date: 2016-10-15 18:40:26 tags: [Git] categories: [Tool,Git] --- 概述 本文记录常用 git 的功能和命令 ...
- 《python编程从入门到实践》读书实践笔记(一)
本文是<python编程从入门到实践>读书实践笔记1~10章的内容,主要包含安装.基础类型.函数.类.文件读写及异常的内容. 1 起步 1.1 搭建环境 1.1.1 Python 版本选择 ...
- hadoop2.5.2学习及实践笔记(二)—— 编译源代码及导入源码至eclipse
生产环境中hadoop一般会选择64位版本,官方下载的hadoop安装包中的native库是32位的,因此运行64位版本时,需要自己编译64位的native库,并替换掉自带native库. 源码包下的 ...
- openwrt使用3G上网卡
尊敬的大大.感谢你抽空指导我 我的设备是db120 mu350 和广东无限卡 版本是OpenWrt Backfire 10.03.336 DIY full 一. 没有安装到kmod-us ...
- Python编程从入门到实践笔记——异常和存储数据
Python编程从入门到实践笔记——异常和存储数据 #coding=gbk #Python编程从入门到实践笔记——异常和存储数据 #10.3异常 #Python使用被称为异常的特殊对象来管理程序执行期 ...
- Python编程从入门到实践笔记——文件
Python编程从入门到实践笔记——文件 #coding=gbk #Python编程从入门到实践笔记——文件 #10.1从文件中读取数据 #1.读取整个文件 file_name = 'pi_digit ...
- Python编程从入门到实践笔记——类
Python编程从入门到实践笔记——类 #coding=gbk #Python编程从入门到实践笔记——类 #9.1创建和使用类 #1.创建Dog类 class Dog():#类名首字母大写 " ...
- Python编程从入门到实践笔记——函数
Python编程从入门到实践笔记——函数 #coding=gbk #Python编程从入门到实践笔记——函数 #8.1定义函数 def 函数名(形参): # [缩进]注释+函数体 #1.向函数传递信息 ...
随机推荐
- python调用kafka服务(使用kafka-python库)
试验环境: CDH 5.15.1 CentOS 7 Python 3.7.0 kafka 1.1.1 kafka-python :https://pypi.org/project/kafka-pyth ...
- knuth洗牌算法
首先来思考一个问题: 设计一个公平的洗牌算法 1. 看问题,洗牌,显然是一个随机算法了.随机算法还不简单?随机呗.把所有牌放到一个数组中,每次取两张牌交换位置,随机 k 次即可. 如果你的答案是这样, ...
- Spring boot后台搭建一使用MyBatis集成Mapper和PageHelper
目标: 使用 Spring boot+MyBatis+mysql 集成 Mapper 和 PageHelper,实现基本的增删改查 先建一个基本的 Spring Boot 项目开启 Spring B ...
- 源码分析之Handler
Handler是Android中的消息机制实现,可以实现UI线程和子线程的消息传递,这里就来深入了解Android的消息机制,来分析Handler的源代码 入手实例 在Android开发中,子线程与主 ...
- 2019CCPC网络赛
^&^ (HDU 6702) Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/65536 K (Java/Other ...
- 影响MySQL的性能(一)磁盘的选择
一.磁盘的选择也是影响MySQL的性能的重大因素之一 1.使用传统的机器硬盘读取数据的过程 2.如何选择传统机器硬盘的因素 二.使用RAID增加传统机器硬盘的性能 1.什么是RAID技术 2.常见的R ...
- 关于st表
#include<cstdio> #include<iostream> #include<cmath> #include<cctype> #includ ...
- java笔记——java加载与执行
java的加载与执行过程: 编译阶段: 首先,我们先创建一个java源文件xxx.java 2. 经过javac.exe编译(如果源文件没有语法错误),生成一个或多个.class文件,注意的是此时的字 ...
- MongoDB初始化创建管理员账户登录
1.查看mongodb服务是否开启: ps -ef | grep mongod 2.管理员角色必须在启用--auth认证参数之前创建,否则会没有操作权限.如果之前已经创建过用户,请先删除. kill掉 ...
- 【C#】课堂知识点#4
1.回顾类中基本结构. 成员分为: a.(数据成员) , b.(方法成员) 数据成员: 字段 方法成员:方法,构造函数,属性,索引器,运算符. 属性的作用: 对字段进行访问提供get,set方法. 类 ...