NB-Iot 使用 BC95-G 通过 IPv6-only 提供商将 UDP 数据发送到 IPv6

物联网 物联网
2021-06-01 16:48:00

编辑:在我们的网络提供商回复有关目标 IP 版本后,问题已更改。

我在使用 IPv6 网络提供商使用 BC95-G 调制解调器将数据发送到 IPv6 (或 IPv4)地址时遇到问题

我们的 NB-IoT 供应商声明:

  • apn = "物联网"
  • PLMN = 20201
  • 带 = 20
  • 调制解调器必须是 IPv6然后它可以发送到 IPv4 或 IPv6
  • 调制解调器必须是 IPv6,然后它只能发送到IPv6

提供商还向我们发送 IPv6 SIM 卡。BC95 支持它们,它接缝可以打开套接字,但发送命令失败。

您可以在下面找到演示列表。出于演示目的,我尝试打开 IPv4 和 IPv6 套接字。毕竟他们都失败了:

AT+NRB

REBOOTING
Ά[0C][00]Ά[03]`
Boot: Unsigned
Security B.. Verified
Protocol A.. Verified
Apps A...... Verified

REBOOT_CAUSE_APPLICATION_AT
Neul 
OK
AT

OK
ATI

Quectel
BC95-G
Revision:BC95GJBR01A07

OK
AT+NCONFIG?

+NCONFIG:AUTOCONNECT,TRUE
+NCONFIG:CR_0354_0338_SCRAMBLING,TRUE
+NCONFIG:CR_0859_SI_AVOID,TRUE
+NCONFIG:COMBINE_ATTACH,FALSE
+NCONFIG:CELL_RESELECTION,TRUE
+NCONFIG:ENABLE_BIP,FALSE
+NCONFIG:MULTITONE,TRUE
+NCONFIG:NAS_SIM_POWER_SAVING_ENABLE,TRUE
+NCONFIG:BARRING_RELEASE_DELAY,64
+NCONFIG:RELEASE_VERSION,13
+NCONFIG:RPM,FALSE
+NCONFIG:SYNC_TIME_PERIOD,0
+NCONFIG:IPV6_GET_PREFIX_TIME,15
+NCONFIG:NB_CATEGORY,1
+NCONFIG:RAI,FALSE
+NCONFIG:HEAD_COMPRESS,FALSE
+NCONFIG:RLF_UPDATE,FALSE
+NCONFIG:CONNECTION_REESTABLISHMENT,FALSE
+NCONFIG:PCO_IE_TYPE,EPCO

OK
AT+CGDCONT=1,"IPV6","iot" // or AT+CGDCONT=1,"IPV4V6","iot"

OK
AT+COPS=1,2,"20201"

OK
AT+CEREG=1

OK
AT+CSCON=1

OK
AT+CFUN=1

OK
AT+CEREG?

+CEREG:1,1

OK
AT+CGATT?

+CGATT:1

OK
AT+CGPADDR

+CGPADDR:0,2A02:1388:400:B:2183:7DD4:B7F1:DE5A
+CGPADDR:1
OK
AT+CSQ

+CSQ:13,99

OK
AT+NUESTATS

Signal power:-928
Total power:-862
TX power:210
TX time:549
RX time:27140
Cell ID:290888
ECL:0
SNR:114
EARFCN:6390
PCI:214
RSRQ:-108
OPERATOR MODE:2
CURRENT BAND:20

OK
AT+NSOCR=DGRAM,17,1024,1,"AF_INET6"

1

OK
AT+NSOCR=DGRAM,17,1025,1,"AF_INET"

2

OK
AT+NSOST=1,xx.xx.xx.xx,pp,2,4C47 // xx: IP address, pp: dest. port

ERROR
AT+NSOST=2,xx.xx.xx.xx,pp,2,4C47

ERROR
AT+NSOCL=1

OK
AT+NSOCL=2

OK

注意:

  • 如果我在中使用“IPV4V6”而不是“IPV6”,则列表完全相同AT+CGDCONT
  • AT+NSOST命令仅支持 IPv4 地址参数。

编辑:如何使用 BC95-G 发送到 IPv6 IP 地址?

使用相同的调制解调器,我可以使用 IPv4 SIM(来自 vodafone)成功发送数据。有没有人使用BC95-G 和IPv6 SIM 卡成功发送数据?

谢谢。

1个回答

据我所知(直到现在),这个问题只有一种解决方案。升级BC95-x的固件

在与 quectel 讨论后,我们得出结论,为了AT+NSOST使用 ipv6 参数,必须在模块上运行新固件。我们试过的版本是R02A02.

为了升级固件,有人还需要升级工具。移远建议QFlash。不幸的是,这里的事情变得有点棘手。

  • 不要使用 9600 的波特率(就像你想发送 AT 命令一样),而是使用 115200 的波特率,引导加载程序在启动时监听你的命令。
  • 当 QFlash 应用程序在更新进程开始时提示“RESET”时,您需要手动重置BC95-G 模块。QFlash 需要以某种方式查看来自模块的启动消息。例如在“RESET”上,我给模块通电。

在这里,您可以在带有 md5: 的 zip 文件中找到固件和升级实用程序89158f2384cb3fd086a972cdfb4efabb

之后,所有接缝工作。

AT+NRB

REBOOTING
Ά[0C]AΆ[04]A
Boot: Unsigned
Security B.. Verified
Protocol A.. Verified
Apps A...... Verified

REBOOT_CAUSE_APPLICATION_AT
Neul 
OK
AT

OK
ATI

Quectel
BC95-G
Revision:BC95GJBR02A02

OK
AT+NCONFIG?

+NCONFIG:AUTOCONNECT,TRUE
+NCONFIG:CR_0354_0338_SCRAMBLING,TRUE
+NCONFIG:CR_0859_SI_AVOID,TRUE
+NCONFIG:COMBINE_ATTACH,FALSE
+NCONFIG:CELL_RESELECTION,TRUE
+NCONFIG:ENABLE_BIP,FALSE
+NCONFIG:MULTITONE,TRUE
+NCONFIG:NAS_SIM_POWER_SAVING_ENABLE,TRUE
+NCONFIG:BARRING_RELEASE_DELAY,64
+NCONFIG:RELEASE_VERSION,13
+NCONFIG:RPM,FALSE
+NCONFIG:SYNC_TIME_PERIOD,0
+NCONFIG:IPV6_GET_PREFIX_TIME,15
+NCONFIG:NB_CATEGORY,2
+NCONFIG:RAI,FALSE
+NCONFIG:HEAD_COMPRESS,FALSE
+NCONFIG:RLF_UPDATE,TRUE
+NCONFIG:CONNECTION_REESTABLISHMENT,FALSE
+NCONFIG:TWO_HARQ,FALSE
+NCONFIG:PCO_IE_TYPE,EPCO
+NCONFIG:T3324_T3412_EXT_CHANGE_REPORT,FALSE
+NCONFIG:NON_IP_NO_SMS_ENABLE,FALSE
+NCONFIG:SUPPORT_SMS,TRUE
+NCONFIG:HPPLMN_SEARCH_ENABLE,TRUE

OK
AT+CGDCONT=1,"IPV6","iot"

OK
AT+COPS=1,2,"20201"

OK
AT+CEREG=1

OK
AT+CSCON=1

OK
AT+CFUN=1

OK
AT+CEREG?

+CEREG:1,1

OK
AT+CGATT?

+CGATT:1

OK
AT+CGPADDR

+CGPADDR:0,2A02:1388:400:B:2183:7DD4:B7F1:DE5A
+CGPADDR:1
OK
AT+CSQ

+CSQ:13,99

OK
AT+NUESTATS

Signal power:-928
Total power:-862
TX power:210
TX time:549
RX time:27140
Cell ID:290888
ECL:0
SNR:114
EARFCN:6390
PCI:214
RSRQ:-108
OPERATOR MODE:2
CURRENT BAND:20

OK
AT+NSOCR=DGRAM,17,1024,1,"AF_INET6"

1

OK
AT+NSOST=1,xxxx:xxxx:xxxx:xxxx:xxxx:xxxx:xxxx:xxxx,207,6,4C4700000000

1,6

OK

+CSCON:1
AT+NSOCL=1

OK

+CSCON:0
AT+CFUN=0

+CSCON:1

+CSCON:0

OK

+CEREG:0

希望这会帮助其他有同样问题的人。