Skip to content

自动APN说明

一、背景

部分海外网络需要在注册时带上APN信息,才能注册成功。为了用户使用方便,AT版本从R4.1.0开始,部分版本支持自动APN。该功能是根据用户使用的SIM卡,自动匹配对应的APN,省去了用户手动配置APN的麻烦。可以做到插卡就用,国内和大部分海外网络,读到这里就可以了,不需要继续看下面的专业内容。下面内容只针对一些很特殊的网络网络环境,需要再配置新的APN或者想了解一些细节的,可以继续看下去。

1.1 专业术语

术语 解释
MCC Mobile Country Code,移动国家代码,用于唯一标识一个移动国家。可通过网站www.mcc-mnc.com查询对应码
MNC Mobile Network Code,移动网络代码,用于唯一标识一个移动网络。可通过网站www.mcc-mnc.com查询对应码
APN Access Point Name,访问点名称,注册网络或者激活Bearer时需要使用
Bearer LTE核心网(EPC)UE和PDN-GW(P-GW)之间的逻辑通道,用于数据通信,一般也说是PDP或者承载
ATTACH LTE注网
UE User Equipment,用户终端设备,这里指的就是模组。

1.2 功能描述

本文中描述的内置APN功能,只是针对LTE ATTACH流程中用到的APN信息,包括:

  • apn
  • username
  • password
  • auth_type
  • ip_type

以上信息为LTE ATTACH流程中ESM_INFORMATION_RESPONSE消息会携带的参数。并不是激活第二路Bearer时需要的参数,需要注意区分。 协议消息大致内容如下:

ESM_INFORMATION_RESPONSENon-Access-Stratum (NAS)PDU
    0000 .... = EPS bearer identity: No EPS bearer identity assigned (0)
    .... 0010 = Protocol discriminator: EPS session management messages (0x2)
    Procedure transaction identity: 1
    NAS EPS session management messages: ESM information response (0xda)
    Access Point Name
        Element ID: 0x28
        Length: 11
        APN: cmnet           ##########携带的APN信息
    ....
LTE ATTACH流程:
sequenceDiagram
    participant UE
    participant Network as 网络侧(MME)

    Note over UE,Network: UE附着流程 - NAS消息交互视图

    UE->>Network: 1. Attach Request
    Note right of Network: 可能缺少APN等ESM信息

    alt 如果UE未提供完整ESM信息
        Network->>UE: 2. ESM Information Request
        UE->>Network: 3. ESM Information Response
        Note left of UE: 提供APN, PDN类型等
    end

    Network->>UE: 4. Authentication Request
    UE->>Network: 5. Authentication Response

    Network->>UE: 6. Security Mode Command
    UE->>Network: 7. Security Mode Complete

    Network->>UE: 8. Attach Accept +<br/>Activate Default EPS Bearer Context Request
    Note left of UE: 包含分配的IP地址

    UE->>Network: 9. Attach Complete +<br/>Activate Default EPS Bearer Context Accept

    Note over UE,Network: 默认承载建立完成<br/>UE进入已注册状态

二、使用说明

一般情况下,用户只需要确认使用版本已经支持内置APN功能,就可以直接使用,无需做额外配置。目前已经支持的AT版本包括:X09C_AT.S61、X09C_AT.S80、X09C_AT.U60、X09S_AT、W09C_AT版本,具体可以查看:AT普通版本差异表。如需查看已经支持APN列表,使用AT+CAUTOAPN=2,mcc[,<mnc>]命令:

查询对应国家码的APN列表
AT+CAUTOAPN=2,302

+CAUTOAPN: 302,220,"sp.telus.com","","",0,1
+CAUTOAPN: 302,270,"wisp.mobi.eastlink.ca","","",0,3
+CAUTOAPN: 302,370,"sp.mts","","",0,3
+CAUTOAPN: 302,490,"internet.windmobile.ca","","",0,3
+CAUTOAPN: 302,500,"media.ng","","",0,3
+CAUTOAPN: 302,520,"media.ng","","",0,3
+CAUTOAPN: 302,610,"pda.bell.ca","","",0,1
+CAUTOAPN: 302,720,"ltemobile.apn","","",0,3
+CAUTOAPN: 302,780,"pda.stm.sk.ca","","",0,3

OK

或查询指定运营商的APN列表

AT+CAUTOAPN=2,302,270

+CAUTOAPN: 302,270,"wisp.mobi.eastlink.ca","","",0,3

OK

2.1、关闭自动APN

如果用户不希望使用自动APN功能,可以使用AT+CAUTOAPN=0命令关闭内置APN功能。

2.2、替换自动APN

如果自动APN列表无法满足要求,可以通过AT+CPNETAPN=2,apn,username,password,auth_type,ip_type命令设置当前APN。由于空间限制,目前还不支持根据运营商进行逐个替换,一旦使用该指令,系统将关闭自动APN,不管什么网络环境,都会使用用户设置的APN信息。

三、相关AT指令描述

3.1 AT+CAUTOAPN

该命令可以设置或查询UE的自动APN功能。

命令 响应
使能内置APN命令
AT+CAUTOAPN=<enable>
正常:
OK
如果发生错误:
+CME ERROR: <err>
查询内置APN命令
AT+CAUTOAPN=2,<mcc>[,<mnc>]
正常:
+CAUTOAPN: <mcc>,<mnc>,<apn>,<username>,<password>,<auth_type>,<ip_type>
...
OK
如果发生错误:
+CME ERROR: <err>
查询命令
AT+CAUTOAPN?
正常:
+CAUTOAPN: <enable>[,<mcc>,<mnc>,<apn>,<username>,<password>,<auth_type>,<ip_type>]
OK
如果发生错误:
+CME ERROR: <err>
最大响应时间 5s
参数保存模式 自动保存,重启生效
  • 参数定义:
参数 解释
enable 使能内置APN功能:
0:关闭,
1:使能(默认值)
mcc 移动国家码
mnc 移动网络码
apn 访问点名称,注册网络或者激活Bearer时需要使用
username 用户名,用于APN认证
password 密码,用于APN认证
auth_type 认证类型:
0:无认证,
1: PAP认证,
2: CHAP认证
3:CHAP_PAP认证
ip_type IP类型:
1:IPv4,
2:IPv6,
3:IPv4v6

3.2 AT+CPNETAPN

该命令可以查询或设置UE的APN信息。

命令 响应
设置当前APN(mode=2):
AT+CPNETAPN=2,<apn>,<username>,<password>,<auth_type>[,<ip_type>]
正常:
OK
如果发生错误:
+CME ERROR: <err>
清空当前APN(mode=3):
AT+CPNETAPN=3
正常:
OK
如果发生错误:
+CME ERROR: <err>
查询当前APN:
AT+CPNETAPN?
正常:
MODE:<mode>
APN:<apn>
USR:<user>
PWD:<password>
AUTHMODE:<authmode>
IPTYPE:<iptype>
OK
最大响应时间 30s
参数保存模式 自动保存,立即生效
  • 参数定义:
参数 解释
mode 2:设置当前APN,3:清空当前APN
apn 访问点名称,注册网络或者激活Bearer时需要使用
username 用户名,用于APN认证
password 密码,用于APN认证
auth_type 认证类型:
0:无认证,
1: PAP认证,
2: CHAP认证
3:CHAP_PAP认证
ip_type IP类型:
1:IPv4,
2:IPv6,
3:IPv4v6

四、常见问题

  • Q1、如何确认当前版本已经支持内置APN功能?
    • A1.1: 查看AT软件介绍,确认当前版本是否支持内置APN功能。
    • A1.2: 或者通过AT+CAUTOAPN?命令查询是否支持。
      支持内置APN
      AT+CAUTOAPN=2,302
      
      +CAUTOAPN: 302,220,"sp.telus.com","","",0,1
      +CAUTOAPN: 302,270,"wisp.mobi.eastlink.ca","","",0,3
      +CAUTOAPN: 302,370,"sp.mts","","",0,3
      +CAUTOAPN: 302,490,"internet.windmobile.ca","","",0,3
      +CAUTOAPN: 302,500,"media.ng","","",0,3
      +CAUTOAPN: 302,520,"media.ng","","",0,3
      +CAUTOAPN: 302,610,"pda.bell.ca","","",0,1
      +CAUTOAPN: 302,720,"ltemobile.apn","","",0,3
      +CAUTOAPN: 302,780,"pda.stm.sk.ca","","",0,3
      
      OK
      
      不支持内置APN
      AT+CAUTOAPN?
      
      ERRROR
      
  • Q2、如何确认内置APN已经生效?
    • A:插上SIM卡,通过AT+CAUTOAPN?查询当前APN信息。
      如果能查询到当前使用的APN信息,就表示内置APN生效
      AT+CAUTOAPN?
      
      +CAUTOAPN: 1,302,220,"sp.telus.com","","",0,1
      
      OK
      
      查询不到当前APN信息,表示当前网络没有可用的内置APN信息; 或者未插卡
      AT+CAUTOAPN?
      
      +CAUTOAPN: 1
      
      OK
      
      未打开自动APN功能
      AT+CAUTOAPN?
      
      +CAUTOAPN: 0
      
      OK
      
  • Q3、有了内置APN功能,是不是就不用手动配置APN了?
    • A:大部分网络环境下,都可以使用内置APN。只有在特殊网络环境下,或者卡商要求强制使用自定义APN时,才需要手动配置APN。
  • Q4、内置APN和CPNETAPN设置的APN和CGDCONT、CSTT设置的APN有何区别?

    • A4.1:内置APN是根据IMSI自动选择的APN,是注册网络ATTACH流程中使用的APN,用户无需手动配置。
    • A4.2:CPNETAPN设置的是注册网络ATTACH流程中使用的APN,且设置后会自动开关飞行模式,立即生效。使能CPNETAPN功能后,系统会自动关闭内置APN功能。
    • A4.3:CGDCONT也可以设置APN,但只有CID=1的APN设置,才是注册网络ATTACH流程中使用的APN;其他CID,发起第二路Bearer激活请求时才会使用。且CGDCONT设置后,需要重启或者自行开关飞行模式才生效。且不影响内置APN功能。
    • A4.4:CSTT设置的APN是注网成功后,发起第二路Bearer激活请求时才会使用。注意:如果CSTT参数设置为空或者和内置APN一致,就还是会用内置APN。
  • Q5、模块在多个运营商网络环境下使用,且内置APN信息无法满足要求,应该如何配置当前APN?

    • A:根据IMSI确定运营商MCC&MNC,然后根据运营商或卡商提供的APN信息,通过AT+CPNETAPN=2,apn,username,password,auth_type,ip_type命令设置当前APN。
  • Q6、国内运营商开了自动APN是否有影响?
    • A: 国内运营商,没有内置相关APN信息,不会有影响。