Sierra Wireless EM7345 and IPv6

Bjørn Mork bjorn at mork.no
Tue May 27 10:00:23 PDT 2014


Bjørn Mork <bjorn at mork.no> writes:

> And I cannot see any response to any Router Solicit or DHCPv6 solicit
> either, making it pretty hard to actually use this connection for
> something.  Any hints?

You probably don't believe it's possible, but this was of course me
shooting myself in the foot AGAIN.  Impressive? Not.

After modifying my ip6tables rules, I do see RAs announcing the global
/64 received from the network.  But I guess it is very interesting to
note that the MBIM IP configuration does *not* work with IPv6 for this
modem.  It just reports the LL addresses:



bjorn at nemi:/tmp$ mmcli -b 0
Bearer '/org/freedesktop/ModemManager1/Bearer/0'
  -------------------------
  Status             |   connected: 'yes'
                     |   suspended: 'no'
                     |   interface: 'wwan1'
                     |  IP timeout: '20'
  -------------------------
  Properties         |         apn: 'telenor.ipv6'
                     |     roaming: 'allowed'
                     |     IP type: 'ipv6'
                     |        user: 'none'
                     |    password: 'none'
                     |      number: 'none'
                     | Rm protocol: 'unknown'
  -------------------------
  IPv4 configuration |   method: 'unknown'
  -------------------------
  IPv6 configuration |   method: 'static'
                     |  address: 'fe80::b:a05c:4701'
                     |   prefix: '120'
                     |  gateway: 'fe80::b:a05c:4702'
                     |      DNS: '2001:4600:4:fff::54', '2001:4600:4:1fff::54'




So we have to use SLAAC (or at least base address selection on the
received RAs):

Frame 6: 102 bytes on wire (816 bits), 102 bytes captured (816 bits) on interface 0
    Interface id: 0 (wwan1.0)
    Encapsulation type: Ethernet (1)
    Arrival Time: May 27, 2014 18:52:59.589132000 CEST
    [Time shift for this packet: 0.000000000 seconds]
    Epoch Time: 1401209579.589132000 seconds
    [Time delta from previous captured frame: 2.763603000 seconds]
    [Time delta from previous displayed frame: 2.763603000 seconds]
    [Time since reference or first frame: 167.720517000 seconds]
    Frame Number: 6
    Frame Length: 102 bytes (816 bits)
    Capture Length: 102 bytes (816 bits)
    [Frame is marked: False]
    [Frame is ignored: False]
    [Protocols in frame: eth:ethertype:ipv6:icmpv6]
Ethernet II, Src: 00:00:00:00:00:00 (00:00:00:00:00:00), Dst: 7e:f4:7b:7b:17:47 (7e:f4:7b:7b:17:47)
    Destination: 7e:f4:7b:7b:17:47 (7e:f4:7b:7b:17:47)
        Address: 7e:f4:7b:7b:17:47 (7e:f4:7b:7b:17:47)
        .... ..1. .... .... .... .... = LG bit: Locally administered address (this is NOT the factory default)
        .... ...0 .... .... .... .... = IG bit: Individual address (unicast)
    Source: 00:00:00:00:00:00 (00:00:00:00:00:00)
        Address: 00:00:00:00:00:00 (00:00:00:00:00:00)
        .... ..0. .... .... .... .... = LG bit: Globally unique address (factory default)
        .... ...0 .... .... .... .... = IG bit: Individual address (unicast)
    Type: IPv6 (0x86dd)
Internet Protocol Version 6, Src: fe80::b:a05c:4740 (fe80::b:a05c:4740), Dst: ff02::1 (ff02::1)
    0110 .... = Version: 6
        [0110 .... = This field makes the filter "ip.version == 6" possible: 6]
    .... 0000 0000 .... .... .... .... .... = Traffic class: 0x00000000
        .... 0000 00.. .... .... .... .... .... = Differentiated Services Field: Default (0x00000000)
        .... .... ..0. .... .... .... .... .... = ECN-Capable Transport (ECT): Not set
        .... .... ...0 .... .... .... .... .... = ECN-CE: Not set
    .... .... .... 0000 0000 0000 0000 0000 = Flowlabel: 0x00000000
    Payload length: 48
    Next header: ICMPv6 (58)
    Hop limit: 255
    Source: fe80::b:a05c:4740 (fe80::b:a05c:4740)
    Destination: ff02::1 (ff02::1)
    [Source GeoIP: Unknown]
    [Destination GeoIP: Unknown]
Internet Control Message Protocol v6
    Type: Router Advertisement (134)
    Code: 0
    Checksum: 0x86c9 [correct]
    Cur hop limit: 255
    Flags: 0x00
        0... .... = Managed address configuration: Not set
        .0.. .... = Other configuration: Not set
        ..0. .... = Home Agent: Not set
        ...0 0... = Prf (Default Router Preference): Medium (0)
        .... .0.. = Proxy: Not set
        .... ..0. = Reserved: 0
    Router lifetime (s): 65535
    Reachable time (ms): 0
    Retrans timer (ms): 0
    ICMPv6 Option (Prefix information : 2a02:2121:1:8035::/64)
        Type: Prefix information (3)
        Length: 4 (32 bytes)
        Prefix Length: 64
        Flag: 0x40
            0... .... = On-link flag(L): Not set
            .1.. .... = Autonomous address-configuration flag(A): Set
            ..0. .... = Router address flag(R): Not set
            ...0 0000 = Reserved: 0
        Valid Lifetime: 4294967295 (Infinity)
        Preferred Lifetime: 4294967295 (Infinity)
        Reserved
        Prefix: 2a02:2121:1:8035:: (2a02:2121:1:8035::)




I assume this problem may affect any Intel XMM7160 based modem. FYI, the
hardware/firmware of this modem is:

bjorn at nemi:/tmp$ mbimcli -d /dev/cdc-wdm1  --query-device-caps
[/dev/cdc-wdm1] Device capabilities retrieved:
              Device type: 'embedded'
           Cellular class: 'gsm'
              Voice class: 'no-voice'
                Sim class: 'removable'
               Data class: 'gprs, edge, umts, hsdpa, hsupa, lte'
                 SMS caps: 'pdu-receive, pdu-send'
                Ctrl caps: 'reg-manual'
             Max sessions: '8'
        Custom data class: 'unknown'
                Device ID: '013937000xxxxxxx'
            Firmware info: 'FIH7160_V1.1_MODEM_01.1349.12'
            Hardware info: 'XMM7160_V1.1_MBIM_GNSS_NAND_RE'


This is a Lenovo branded Sierra Wireless EM7345 intended for newer
Thinkpads, but still using a Sierra vendor ID.


Bjørn


More information about the libmbim-devel mailing list