Linux 上的 Verizon USB551L 4G 棒

Dav*_*ung 8 linux usb ppp

我一直在尝试让 Verizon USB551L 4G USB 记忆棒在 Debian Linux 上运行。我已经能够让它连接,但它总是在 10 秒到 2.5 分钟后断开连接,然后它无法在没有电源循环或重新连接棒的情况下再次连接。我知道这不是信号强度问题,因为我在 Windows 下没有同样的问题,Verizon 客户端显示 4 条。

有没有人知道问题可能是什么?更多细节如下。

在 Windows XP 上使用相同的棒,我可以使用 Verizon 的 VzAccessManager 建立稳定的连接,但是使用手动配置的串行端口上的 DUN,我遇到了与 Linux 上相同的断开连接症状。

我使用带有 Debian GNU/Linux wheezy 3.2.27+ 的 Raspberry Pi 进行了以下操作。我也在我的 Mac 上用 Ubuntu Linux VirtualBox VM 尝试过它,但我从来没有走得很远,因为驱动程序没有正确识别卡。

使用 Raspberry Pi,识别棒并“cdc_ether”驱动程序为其创建了 wwan0 接口,“选项”驱动程序创建了 /dev/ttyUSB0、/dev/ttyUSB1、/dev/ttyUSB2 和 /dev/ttyUSB3 . 详情如下所示。

为了在 Linux 上建立连接,我从 VZAccessManager 和使用名为 HHD Free Serial Port Monitor 的程序嗅探 Windows COM 端口获取了一些信息,以向我展示 Verizon 通过串行端口发送到调制解调器的命令:

ATS0=0
好的
在
好的
AT&F&D2&C1E0V1S0=0
好的
AT+IFC=2,2
好的
AT+CGDCONT=3,"IP","vzwinternet","0.0.0.0",0,0
好的
ATD*99***3#
连接边缘

在此之后还有其他我无法阅读的非文本通信,其中一些可能是 CHAP 或 PAP 身份验证,提供了我看不到的凭据。其中一些是我的互联网访问。

从上面和我可以从 VZAccessManager 屏幕获得的信息,我拼凑了以下 /etc/pppd/verizon-gprs 和 /etc/pppd/verizon-gprs-connect 聊天脚本,使我能够在 Linux 上进行连接。

verizon-gprs:(???????????? 是我的手杖的 10 位电话号码)

隐藏密码
不认证
用户 ??????????@vzw4g.com
密码
连接“/usr/sbin/chat -v -t3 -f /etc/ppp/peers/verizon-gprs-connect-chat”
调试
/dev/ttyUSB0
noipdefault
默认路由
替换默认路由
坚持
使用peerdns
不分离

verizon-gprs-connect-chat:

超时 35
回声
ABORT '\nBUSY\r'
ABORT '\n错误\r'
ABORT '\n无应答\r'
ABORT '\n无载体\r'
ABORT '\n无拨号音\r'
ABORT '\nRINGING\r\n\r\nRINGING\r'
''阿兹
OK 'ATS0=0'
OK 'AT&F&D2&C1E1V1S0=0'
OK 'AT+IFC=2,2'
OK 'AT+CGDCONT=3,"IP","vzwinternet","0.0.0.0",0,0'
OK 'ATD*99***3#'
连接 ''

我使用了上述参数,但在超过 2.5 分钟的时间内无法连接任何东西。在它断开连接后,它再也不会连接了——我不得不断开连接并重新连接棒,然后上面的连接脚本才能工作。我在 Windows XP 上有类似的经历,DUN 设置为使用与上面相同的用户名和密码拨打 *99****3#,并设置 'AT+CGDCONT=3,"IP","vzwinternet","0.0. 0.0",0,0' 作为要发送到调制解调器的额外初始化参数。

在我的 Rasbpery Pi 上,我还尝试通过在 /etc/networking/interfaces 中进行配置然后调用 sudo ifup wwan0 来直接连接 wwan0。但它从未获得过 IP 地址。无论我是否首先尝试使用 pppd 和上述技术连接调制解调器,这都是正确的。

在这一点上,我没有其他可尝试的了。我在网上找不到任何人在 Linux 上成功地做到了这一点。

$ lsusb | grep 新星
总线 001 设备 005:ID 1410:b001 Novatel Wireless 
$ ls /dev/ttyUSB*
/dev/ttyUSB0 /dev/ttyUSB1 /dev/ttyUSB2 /dev/ttyUSB3
$ ifconfig wwan0
wwan0 链接封装:以太网 HWaddr 00:a0:c6:00:00:00  
          上行广播运行多播 MTU:1500 公制:1
          RX 数据包:0 错误:0 丢弃:0 溢出:0 帧:0
          TX 数据包:2 错误:0 丢弃:0 超限:0 载波:0
          碰撞:0 txqueuelen:1000 
          RX 字节:0 (0.0 B) TX 字节:684 (684.0 B)
$ dmesg
...
[13.325406]usbcore:注册新的接口驱动程序usbserial
[13.513047] cdc_ether 1-1.3.2:1.6: wwan0: register 'cdc_ether' at usb-bcm2708_usb-1.3.2, 移动宽带网络设备, 00:a0:c6:00:00:00
[13.903537] USB 串行支持注册为通用
[13.998983]usbcore:注册新的接口驱动程序cdc_ether
[14.039185]usbcore:注册新的接口驱动程序usbserial_generic
[14.163290]usbserial:USB串行驱动核心
[ 14.193011] cfg80211:调用 CRDA 更新世界监管域
[14.282386]为GSM调制解调器注册的USB串行支持(1端口)
[14.435364] 选项 1-1.3.2:1.0:检测到 GSM 调制解调器(1 端口)转换器
[14.536530] USB 1-1.3.2:GSM 调制解调器(1 端口)转换器现在连接到 ttyUSB0
[14.610970] 选项 1-1.3.2:1.1:检测到 GSM 调制解调器(1 端口)转换器
[14.680940] USB 1-1.3.2:GSM 调制解调器(1 端口)转换器现在连接到 ttyUSB1
[14.733917] 选项 1-1.3.2:1.2:检测到 GSM 调制解调器(1 端口)转换器
[14.778622]usb 1-1.3.3:使用 dwc_otg 重置高速 USB 设备编号 6
[14.798339] USB 1-1.3.2:GSM 调制解调器(1 端口)转换器现在连接到 ttyUSB2
[14.846967] 选项 1-1.3.2:1.4:检测到 GSM 调制解调器(1 端口)转换器
[14.917340] USB 1-1.3.2:GSM 调制解调器(1 端口)转换器现在连接到 ttyUSB3
[15.011231]usbcore:注册新的接口驱动程序选项
...

小智 -1

我相信我正在 Debian 上运行这些。尝试安装 wvdial,并编辑 /etc/wvdial.conf 如下所示。然后运行 ​​wvdial 并查看它显示的内容。

[Dialer Defaults]
Stupid mode = 1
Dial Command = atdt
Carrier Check = no
Init1 = ATZ
Init2 = ATQ0 V1 E1 S0=0 &C1 &D2 +FCLASS=0
Modem Type = USB Modem
Phone = *99***3#
ISDN = 0
Password = 1
New PPPD = yes
Username = 1
Modem = /dev/ttyACM0
Baud = 460800
Run Code Online (Sandbox Code Playgroud)