RNDIS拨号上网
来自Waveshare Wiki
硬件连接
请通过USB线连接SIM7600和树莓派的USB接口,通过UART连接也可以进行PPP等拨号上网,UART 速度比较慢,如果要实现
4G 快速上网,NDIS和RNDIS都是需要连接USB,即是USB网卡,如图所示:
检查USB设备
- 通过以下指令检测SIMXXXX和树莓派等设备是否连接好,如没问题能够看到高通(Qualcomm)设备和ttyUSB0-USB4
lsusb ls /dev/ttyUSB*
配置RNDIS模式
- SIM7600模组通过USB口连接到树莓派或Jetson Nano上,然后执行指令,看是否可以正常识别到ttyUSB2,可以的话,通过minicom打开该端口:
ls /dev/ttyUSB* sudo apt-get install minicom sudo minicom -D /dev/ttyUSB2
- 通过minicom发送以下指令,然后等待模组重启
AT+CUSBPIDSWITCH=9011,1,1
- SIM82X通过minicom发送以下指令改为RNDIS模式
at+cusbcfg=usbid,1e0e,9011
- ifconfig 查看是否有识别出一个usb0的网卡
ifconfig -a
- 获取ip地址(不同的系统网卡名有差异,树莓派bookworm系统是eth1,对应改下网卡名即可)
sudo dhclient -v usb0 sudo apt-get install udhcpc sudo udhcpc -i usb0 sudo route add -net 0.0.0.0 usb0
- 测试下通过usb0无线网卡ping百度能否正常联网:
ping -I usb0 www.baidu.com
- 如果还不能联网,可以设置下dns,如下:
sudo route add -net 0.0.0.0 usb0
配置DNS服务器(可选)
有时能ping 通IP,无法ping通域名,是DNS服务器问题,请参考以下步骤配置DNS服务器 查看看当前的DNS
cat /etc/resolv.conf
- 先备份原来的DNS配置文件
sudo mv /etc/resolv.conf resolv_bk.conf
- 重新编辑一个DNS配置文件
sudo nano /etc/resolv.conf
- 添加阿里云DNS服务器:
nameserver 223.5.5.5
- 或谷歌DNS服务器
nameserver 8.8.8.8
- 去ping域名测试看看,网卡用对应的,这里usb0
ping qq.com -I usb0
- 锁定文件,防止被篡改,解锁改为-i
sudo chattr +i /etc/resolv.conf
设置开启自动获取IP(可选)
部分Linux系统重启后可能需要输入指令获取IP,如果每次开机都手动获取IP会比较麻烦,可按照以下步骤设置开机自动获取IP:
- 设置开机启动,打开树莓派开机配置脚本
sudo nano /etc/rc.local
- 将启动命令加入倒数第二行,注意是您的运行上网文件的绝对路径,也就是exit 0的上一行。
sleep 18s && sudo dhclient -v usb0
- 验证开机脚本是否生效
sudo /etc/rc.local
加载USB设备描述符
在SIM7600X改为9011模式后,部分Linxu系统无法识别到ttyUSB*,可以用以下指令加载USB设备描述符:
- ubuntu系统
sudo su sudo echo 1e0e 9011 > /sys/bus/usb-serial/drivers/generic/new_id
- raspbian和centos系统
sudo su sudo modprobe option sudo sh -c 'echo "1e0e 9001" > /sys/bus/usb-serial/drivers/option1/new_id' sudo sh -c 'echo "1e0e 9011" > /sys/bus/usb-serial/drivers/option1/new_id'