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