我正在使用 simcom900 调制解调器,我成功地能够建立 GPRS 连接并将数据从我的模块发送到服务器。我正在使用 2g Airtel SIM,我将 APN 名称命名为“airtelgprs.com”。我也尝试过提供不同的 APN与airtel网络无关的名称,我也可以建立连接并将数据传输到服务器。
请让我知道这怎么可能?
我正在使用 simcom900 调制解调器,我成功地能够建立 GPRS 连接并将数据从我的模块发送到服务器。我正在使用 2g Airtel SIM,我将 APN 名称命名为“airtelgprs.com”。我也尝试过提供不同的 APN与airtel网络无关的名称,我也可以建立连接并将数据传输到服务器。
请让我知道这怎么可能?
解锁 SIM 卡后,尝试输入
AT+CGDCONT?
现在您应该看到所有存储的上下文,如下所示:
+CGDCONT: 1,”IP”,”airtelgprs.com”,”0.0.0.0”,0,0
+CGDCONT: 2,”IP”,”other apn” ,”0.0.0.0”,0,0
+CGDCONT: 3,”IP”,”其他 apn2”,”0.0.0.0”,0,0
现在尝试依次激活每个上下文
AT+CGACT=1,1(第一个参数激活上下文,第二个参数定义激活哪个上下文)
如果激活成功,你应该得到“OK”。现在停用上下文编号 1
AT+CGACT=0,1 确定
现在,尝试激活错误的 apns 之一:
AT+CGACT=1,2 你应该得到类似的信息:
+CME ERROR: no network service
(switch on error reporting with AT+CME)
现在用正确的 APN 删除存储的上下文,将它们设置为空:
AT+CGDCONT=1,"","","",0
OK
检查它们是否消失:
AT+CGDCONT?
(仅获取带有错误 APN 的上下文)
现在再次尝试您的 AT 命令,使用错误的 APN:
AT+CSTT="some wrong apn" 等。
您应该希望看到它没有连接。如果它没有连接,也许 AT+CSTT 总是在保存的上下文编号 1 上连接,即使你给它一个不同的 APN。通过使用 AT+CGDCONT 和存储的上下文应该很容易测试该理论。
AT+CGDCONT 和 AT+CGACT 是标准的 AT 命令,您可以在3GPP TS 27.007中找到完整的参考。
大多数运营商都在其网络上使用特殊功能(通常称为 APN 重定向)将错误的 APN 名称修复为某些默认 APN 名称。例如,当您尝试使用 APN 名称“iternet”建立 PDP 时,它将自动重定向到 APN 名称“internet”。因此,您似乎遇到了这种行为。
APN 重定向对您的提供商处于活动状态,您的 APN 将自动更正为某个默认 APN,或者根据您在 HLR 中的订阅配置文件选择您订阅的 APN。
您面临这个问题,或者说没有问题,很可能是因为 Airtel 在通过 GPRS 连接时根本不检查 APN。我已经用不同的 SIM 卡和不同的 SIM 计划对此进行了测试。强烈检查 APN- 1. Idea 2. MTNL 3. Vodafone 的运营商 注意:这里提到的所有运营商信息都严格针对印度地区。我没有其他地区的经验。