pppd连接异常:Protocol-Reject后触发Hangup (SIGHUP)问题求助
针对Qualcomm调制解调器+Yocto系统下Vodafone LTE连接问题的解决方案
以下是针对pppd因CCP Protocol-Reject触发挂断循环问题的具体修复步骤:
1. 禁用pppd压缩协商(核心修复)
问题根源是CCP(压缩控制协议)协商被网络侧拒绝,直接关闭所有压缩相关选项即可避免该错误:
修改pppd的连接配置文件(通常位于/etc/ppp/peers/目录下,比如/etc/ppp/peers/lte),添加以下参数:
noaccomp nopcomp noipcomp novj novjccomp
这些参数分别禁用地址压缩、协议压缩、IP压缩、Van Jacobson TCP头部压缩及其变体,彻底跳过CCP协商环节。
2. 强制调制解调器锁定LTE模式
部分场景下,调制解调器回落到2G/3G网络会导致协商逻辑异常,通过AT命令锁定LTE:
- 连接调制解调器串口(比如
/dev/ttyUSB0),发送:AT+COPS=1,2,"22210" # 22210是Vodafone意大利的MCC/MNC,根据SIM卡归属地调整 AT+CNMP=38 # 设置为LTE-only模式,不同Qualcomm型号参数可能不同,需参考手册 AT&W # 保存配置
3. 修正AT+CGDCONT配置
确认APN参数拼写正确(你之前提到的wap.omintel.it存在拼写错误,正确Vodafone意大利APN为web.omnitel.it):
- 重新设置PDN上下文:
AT+CGDCONT=1,"IP","web.omnitel.it","",0,0 - 验证配置:
AT+CGDCONT?
确保输出中的APN字段为web.omnitel.it。
4. 调整pppd协商超时与重连策略
避免因网络响应慢导致的协商失败,修改pppd配置添加:
lcp-echo-interval 30 lcp-echo-failure 5 persist
persist参数会让pppd在挂断后仅按需重连,而非无限循环。
5. 验证SIM卡权限
将SIM卡插入手机测试,确认已开通LTE数据服务、无网络限制,排除SIM卡本身的问题。
6. 排查详细错误日志
- 启动pppd时添加
debug参数,获取完整协商日志:pppd call lte debug - 发送AT命令
AT+CEER,查看调制解调器记录的最后一次连接失败原因代码,进一步定位问题。
内容的提问来源于stack exchange,提问作者dod0bob
相关产品推荐
相关产品推荐

