赞
踩
经常看到在笔记本上可以通过插无线网卡进行wifi连接上网,鲜有使用4G模块进行上网的。但是在某些场景下,没有wifi信号,要如何解决上网问题呢?一般可以通过usb共享手机网络,或者外接4G网卡进行上网。通常在windows 平台上一般可以通过安装软件进行拨号上网,但是很少看到有文章介绍在飞腾平台上怎么使用4G模块上网的。
刚好笔者手中有一套环境,需要接上4G模块进行上网的。也是初次学习,记录自己一步一个坑,是如何躺过来的。
验证环境: CPU:D2000+kylinOS +EC20的4g模块。
拿到模块后首先确认硬件是否可以正常识别,查看硬件原理图,可以确定走USB协议。(以下均在shell下操作)
输入lsusb 很幸运系统下可以正常识别4G模块。
通过uname -a 查看麒麟系统内核版本为5.4.18
结合开源内核源码,可以确定内核驱动是支持的,不用自己编译驱动了。哈哈此处可以偷懒
commit 6e9f44eaaef0df7b846e9316fa9ca72a02025d44
USB: serial: option: add Quectel UC15, UC20, EC21, and EC25 modems Add Quectel UC15, UC20, EC21, and EC25. The EC20 is handled by qcserial due to a USB VID/PID conflict with an existing Acer device.
既然驱动支持,那剩下的就是如何配置上网流程了。
查看EC20的相关文档,可以确定 在linux 下是使用AT指令进行配置。恰好以前有接触过蓝牙通讯,了解AT的使用方式。
接下来将进行拨号模块的配置。
输入dmesg |grep ttyUSB* 可以确定4G模块使用哪一个USB接口,此处是ttyUSB3
明确ttyUSB3这个设备后,就可以使用AT指令进行测试是否正常通讯。
cat /dev/ttyUSB3 &
echo “at” >/dev/ttyUSB3
返回OK,表明通讯正常。返回别的值,就要查一下是不是驱动不正常,或者硬件不正常。
下一步就是插上电话卡,看看是否正常识别电话卡。
AT指令判断模组有没有识别SIM卡
查询指令: AT+CPIN? //(‘?’为英文字符)
返回指令: ERROR // 识别SIM卡失败
返回指令:OK // 识别SIM卡成功
echo "at+cpin?" > /dev/ttyUSB3
详细at指令代表的含义可以参考官方文档
接下来可以进行相关拨号上网的配置了。
注意,拨号上网需要使用pppd以及wvdial,没有需要自行安装。
sudo apt-get install ppp wvdial
配置拨号模式,我使用的电信卡,不同运营商此处不太一样。
vim /etc/wvdial.conf
将默认的配置改成如图所示
[Dialer Defaults]
Init1 = ATZ
Init2 = ATQ0 V1 E1 S0=0
Init3 = AT+CGDCONT=1,"IP","ctnet"
Modem Type = Analog Modem
Baud = 115200
New PPPD = yes
Modem = /dev/ttyUSB3
ISDN = 0
Phone = #777
Password = vnet.mobi
Username = ctnet@mycdma.cn
Auto DNS = on
此处注意:不同的运营商 拨号号码 账号 密码不同,此处需要区分。
配置完成后保存。
输入wvdial & 即可开始拨号,打印如图所示。当出现IP地址时,配置成功。
输入ifconfig -a 可以看到有ppp0产生。
此时验证是否可以连接外网
ping 114.114.114.114
此时配置完成。
若发现可以ping,但是浏览器无法访问,就需要配置路由
sudo route add –net 0.0.0.0 ppp0 设置ppp0为默认节点
另外配置一下vim /etc/resolv.conf
在其中添加 nameserver 114.114.114.114
完成以上步骤后,即可愉快的上网了。
文档若有不完善的地方,请联系我补充。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。