QMICLI IPV6 problem on MC7354

Dan Williams dcbw at redhat.com
Thu Aug 18 15:14:50 UTC 2016


On Thu, 2016-08-18 at 16:39 +0200, Bjørn Mork wrote:
> I think qmicli support for that is "patches welcome" :)
> 
> Should not be very much work, since the libqmi support is already
> there.
> It's just boring... and not too useful for "normal" use cases, where
> MM
> will deal with all this.

qmicli has supported returning IPv6 address/gateway/dns since 1.14 in
commit 543cf5c9.

Dan

> 
> Bjørn
> 
> Tang Nguyen <tang_nguyen at yahoo.com> writes:
> 
> > 
> > Yeah, option --wds-set-ip-family is what I wish but unfortunately
> > it is not available on libqmi version 1.14.2.
> > Do you think the version 1.16.0 would support it ?  if not, do we
> > have any plan to add on ? I think it is quite useful option though.
> > 
> > 
> > Yes, i did set ipv4v6 to PDP#3 context, and using it to create 2
> > wds sessions as you suggested in another thread.
> > I got 2 packet handlers and 2 CIDs after creating 2 wds sessions,
> > but still not able to get global ipv6 address.
> > 
> > qmicli command with option --wds-get-current-settings just show
> > ipv4 address.
> > 
> > root at rx1500-lns-33:~# qmicli -d /dev/cdc-wdm1 --wds-get-current-
> > settings
> > [/dev/cdc-wdm1] Current settings retrieved:
> >              IP Family: IPv4
> >           IPv4 address: 172.22.1.101
> >       IPv4 subnet mask: 255.255.255.252
> >    IPv4 gateway address: 172.22.1.102
> >       IPv4 primary DNS: 172.22.1.201
> >                    MTU: 1428
> >                Domains: none
> > 
> > 
> > Seems like libqmi does not send request to modem for ipv6 address,
> > so the wwanX interface can't get ipv6 address.
> > 
> > --tang
> > 
> > On Thursday, August 18, 2016 10:15 AM, Bjørn Mork <bjorn at mork.no>
> > wrote:
> > Tang Nguyen <tang_nguyen at yahoo.com> writes:
> > 
> > > 
> > > You are right. Verizon network requires 2 PDP context from modem
> > > to
> > > connect to their network. By factory default, Sierra program
> > > PDP#1 as
> > > vzwims, and PDP#3 as vzwinternet.  To establish the data call,
> > > application sends request with PDP#3 to get ip address from
> > > network.
> > > 
> > > Since I am using R&S CMW500 callbox, so the APN is not a
> > > matter.  On
> > > Call box, I saw 2 PDP context is activated, one is for vzwims and
> > > other is vzwinternet.  AT command replies with PDP#1 information.
> > Ah, OK.
> > 
> > IIUC, what you wanted was to have a dual-stack connection to one of
> > these.  Or rather, to use the dual-stack connection you already
> > have
> > established.
> > 
> > To do that with QMI you have to establish two WDS sessions
> > referring to
> > the *same* PDP context, which of course has to be IPV4V6.  This
> > doesn't
> > actually establish two connections, but is simply the way Qualcomm
> > chose
> > to map dual-stack contexts in QMI.  To get both IPv4 and IPv6
> > settings,
> > you need to run --wds-get-current-settings twice as well, carefully
> > using the CIDs associated with the IPv4 or IPv6 part of the
> > connection.
> > 
> > But you also need to set the wanted IP family for each --wds-start-
> > network
> > call, which I don't think is supported by qmicli yet?
> > 
> > The whole procedure would be something like this, if --wds-set-ip-
> > family
> > had existed:
> > 
> >   qmicli -d /dev/cdc-wdm0 --wds-set-ip-family=4 --client-no-
> > release-cid
> >   [/dev/cdc-wdm0] Client ID not released:
> >   Service: 'wds'
> >   CID: 'x'
> >   
> >   qmicli -d /dev/cdc-wdm0 --wds-start-network=vzwinternet --client-
> > no-release-cid  --client-cid=x
> >   => IPv4 handle
> > 
> >   qmicli -d /dev/cdc-wdm0 --wds-set-ip-family=6 --client-no-
> > release-cid
> >   [/dev/cdc-wdm0] Client ID not released:
> >   Service: 'wds'
> >   CID: 'y'
> >   
> >   qmicli -d /dev/cdc-wdm0 --wds-start-network=vzwinternet --client-
> > no-release-cid  --client-cid=y
> >   => IPv6 handle
> >   
> >   qmicli -d /dev/cdc-wdm0 --wds-get-current-settings --client-no-
> > release-cid  --client-cid=x
> >   => IPv4 settings
> >   
> >   qmicli -d /dev/cdc-wdm0 --wds-get-current-settings --client-no-
> > release-cid  --client-cid=y
> >   => IPv6 settings
> > 
> > 
> > I believe this is what MM implements for QMI dual-stack.
> > 
> > 
> > 
> > 
> > 
> > Bjørn
> _______________________________________________
> libqmi-devel mailing list
> libqmi-devel at lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/libqmi-devel


More information about the libqmi-devel mailing list