Can you please take out logs by enabling the clat logging at /etc/sysconfig/connman
:
echo "SYSCONF_ARGS=-d plugins/clat.c -d src/tethering.c -d src/technology.c -d src/network.c -d src/nat.c" > /etc/sysconfig/connman
and then restarting connman
systemctl restart connman
Before starting to test You could also increase the journalctl limits by:
/etc/systemd/journald.conf.d/debug.conf
with content:
[Journal]
Storage=persistent
RateLimitIntervalSec=0s
RateLimitBurst=0
SystemMaxUse=150M
RuntimeMaxUse=4M
and then systemctl restart systemd-journald
.
Then save this following as a clat-logs.sh
and chmod +x clat-logs.sh
:
#!/bin/bash
TMPDIR="/tmp/clat/$(date +%Y%m%d_%H%M%S)"
ARCHIVE="$TMPDIR.tar.bz"
CLATCONF="/etc/connman/clat.conf"
echo "Gathering CLAT logs to $TMPDIR"
mkdir -p "$TMPDIR"
# journal
journalctl -b -u connman > "$TMPDIR/clat.connman.log"
# route info:
route -n > "$TMPDIR/clat.route"
route --inet6 -n > "$TMPDIR/clat.route6"
# device info:
ip addr show clat &> "$TMPDIR/clat.device"
# iptables:
iptables -L -v -n > "$TMPDIR/clat.iptables.filter"
iptables -t nat -L -v -n > "$TMPDIR/clat.iptables.nat"
ip6tables -L -v -n > "$TMPDIR/clat.ip6tables.filter"
# clat conf
if [ -f "$CLATCONF" ] ; then cp /etc/connman/clat.conf "$TMPDIR/" ; fi
tar cjf "$ARCHIVE" "$TMPDIR" 2>/dev/null
echo "Done"
echo "Send archive $ARCHIVE"
Run the script ./clat-log.sh
when the interface does not get up AND after you manage to get clat interface up.
And email both archives (they have a timestamp so no need to rename) to connman-debug@jolla.com so we might be able to pinpoint the issue there on your device and network.
It could be also worthy to get logs with “Ofono logger” available via store, or from openrepos too.
But CLAT interface does not get created if the ipv4only.arpa
address cannot be resolved via IPv6 or there is an IPv4 address present on the mobile data interface.
You can also try fiddle with the /etc/connman/clat.conf
(by default this does not exist) settings file (changing needs ConnMan/device restart), it has same format as, for example, main.conf of ConnMan:
# CLAT configuration, remember to put all within the following group:
[CLAT]
# Use DAD (Duplicate Address Detection) for protecting the address
# default: on (true).
EnableDAD = true|false
# Ignore resolv failure with the ipv4only.arpa.
# Resolv result always sets global prefix if fails
# default: off (false)
ResolvAlwaysSucceeds = true|false
# Add netmask to the CLAT device IPv4 address
# default: on (true)
ClatDeviceUseNetmask = true|false
# Setup default route with a metric by CLAT plugin
# default: off (false)
ClatDeviceSetDefaultRoute = true|false
# Write IPv6 address of the interface to tayga config
# default: off (false)
TaygaRequiresIPv6Address = true|false
# Value for strict-frag-hdr
# default: on (true)
TaygaStrictFragHdr = true|false
Setting the ResolvAlwaysSucceeds = true
would mean that the interface should always get up.