IPv6 with simple-connect

Bjørn Mork bjorn at mork.no
Fri Sep 6 06:27:18 PDT 2013


"Martin Anderseck" <Martin.Anderseck at ni.com> writes:

> I've made three log files: 
> set-v4.log
> set-v6.log and
> set-v6works.log
>
> In the first one I connect to an IPv4 APN, in the second one it's an
> IPv6 one. In the first two log files I deleted all the PDP contexts
> from the module by using AT commands.  In the last log file I entered
> the IPv6 APN in the PDP contexts using the AT commands. Then the
> connection attempt is successful. I must admit that the used version
> is 0.9.8 only. In case something has changed for that part of MM in
> the latest version I could do an update but unfortunately my time for
> this is limited...

Thanks.  So the default family is successfully set to IPv6, but the
connection still fails unless you have a matching PDP context.

I don't know what the firmware actually does.  But I am guessing that it
selects a profile based on the APN unless you set a specific profile in
the connection request, falling back to some default profile if there is
no match.  This default is probably IPV4

The profile includes a PDP type, which can be PDP-IP, PDP-PPP, PDP-IPV6
or PDP-IPV4V6.  The default is most likely PDP-IP.

I believe the eQMI_WDS_GET_DEFAULTS message will tell this, but I don't
know how to send that using libqmi. For me, the return value is the same
as "profile1" returned by eQMI_WDS_GET_PROFILE_LIST which again matches
the "at+cgdcont?" output.  But I do note that this profile does not
disappear like the others do even if I delete it using "at+cgdcont=1".
Only the APN and other configuration disappears. The profile remains and
is still of type PDP-IP.  This is also reflected in the at command
output *after* running QMI commands to check the profile.  Context 1
disappears from the at command output temporarily when deleted, but
reappears as empty after sending eQMI_WDS_GET_DEFAULTS to the modem.  I
think there is some really magic interaction between AT and QMI
here....

Anyway, the default which magically reappears is always of type PDP-IP,
even if the last context #1 I deleted had another type. So this
experiment support the theory that PDP-IP is a hard coded firmware
default.

I guess MM should create a QMI profile for the APN + PDP type it is
attempting to connect, unless there already is a matching one.   At
least if the PDP type is non default.

> <debug> [1378463433.885303] [mm-bearer-qmi.c:351] get_current_settings_ready(): QMI IPv6 Settings:
> <debug> [1378463433.923561] [mm-bearer-qmi.c:286] print_address6():     Address: 2a01:198:24c:c10f:58da:724d:c01c:b5ad/64
> <debug> [1378463433.968357] [mm-bearer-qmi.c:286] print_address6():     Gateway: 2a01:198:24c:c10f:941e:db24:5e20:c244/64
> <debug> [1378463434.013098] [mm-bearer-qmi.c:286] print_address6():      DNS #1: 2001:4860:4860::8888/0
> <debug> [1378463434.057798] [mm-bearer-qmi.c:286] print_address6():      DNS #2: 2001:4860:4860::8844/0

Noticed a minor issue there BTW: Those /0's should either be removed or
changed to /128


Bjørn


More information about the ModemManager-devel mailing list