5.2.0.18 AAS no longer online when not in wifi

REPRODUCIBILITY: always
OS VERSION: 5.2.0.18
HARDWARE: JP 2026
UI LANGUAGE: Deutsch
REGRESSION: 5.2.0.17

DESCRIPTION:

After the upgrade to .18 AAS apps no longer connect to internet when not on wifi.

ipv4 workaround does not help, same for “AAS mobile data as WiFi”, nor dbus hack from the other thread.

Tried rebooting things, nothing works, including OS restart.

PRECONDITIONS:

In my case I don’t see anything that could affect it. Apps had internet before .18, then they don’t.

My env:

Two SIM cards, Telekom (DE) active with mobile internet, 4G/5G, both don’t work. SIM1. Other users from .18 update thread report same for single SIM card.

microG from Jolla, AuroraStore, F-Droid. Except of that nothing unusual. I had issues with Telekom(DE) stuck in 2G but it resolved itself.

EDIT after troubleshooting:

  1. SIM1 internet.v6.telekom APN (ipv6) - no internet
  2. SIM2 Orange (roaming, ipv4) - internet (online)
  3. SIM1 internet.telekom (dual, ipv4, ipv6) - no internet
  4. SIM1 internet.t-d1.de (ipv4) - no internet
  5. SIM1: all possible APN, Protocol: IP, IPv6, Dual - no inernet

STEPS TO REPRODUCE:

  1. Update to 5.2.0.18
  2. Disable or loose wifi
  3. Android apps like EinsatzApp, Tesla, Rewe no longer connect to internet.

EXPECTED RESULT:

Apps connect to internet.

ACTUAL RESULT:

No internet within AAS.

MODIFICATIONS:

Phone is in development mode, often connected so SailfishOS SDK. Has SyncThing.

ADDITIONAL INFORMATION:

6 Likes

same here. Very annoying bug :frowning:

2 Likes

Same happened to me. Luckily it just fixe by itself after a few hours but since them I avoid turning wifi on

Not on Jolla new phone, nor 5.2.0.18, but same happened to me on xperia 10iii with the latest update, 5.1.0.11 .

For me, I found out that the problem was DNS inside the AAS . Something maybe is happening there because also it you connect to a VPN with wireguard, the DNS requests from AAS don’t go through VPN but from “local DNS”.

I found out using the following (don’t do it if you are not sure what you are doing): connect to the phone with usb-c, SSH the phone. Start android, use wifi and run “ devel-su appsupport-attach “ . This will give you a shell inside the AAS environment . from there ping a domain name, and write down the IP. Close the wifi and activate the mobile internet. Try again to ping the domain name, most probably it will not work. Now try ping the IP . Did it answer ? Your answer might help if someone check it.

Once again that same thing happened to me some years ago, I had to wait until the next sailfish update to have again mobile internet on android apps. I hope it will not take much more time untill the release of 5.2 version for xperia 10iii too. I did any trick I could find, nothing worked. The only left is to format the phone and reinstall sailfish which I would like to avoid if I have that option…

3 Likes

Thanks for the tip. It won’t help me though because after one of the cellular and networking restart now i don’t have any internet on that sim card. AAS nor native. Ping says network unreachable.

I don’t want to be harsh but i bought JP specifically because OS vendor made that hardware. Having networking problems would be fine for 50€ used Sony, for 600€ phone this kind of issues are unacceptable.

I must be in the minority, but I want to report that on mobile data I have perfectly working Android apps through AAS. IronFox, LinkedIn, Discord - all worked fine, loaded content and didn’t produce any errors. Also tried with and without an active VPN connection - in all cases I didn’t have this issue.

2 Likes

I don’t think so. It is working for me and probably thousands of others.

But who complains if everything works just fine?

Edit: Vodafone Germany Prepaid

1 Like

I have no network un AAS when I’m not connected to wifi.
I think the issue has something to do with certain mobile providers. Some people have issues, since SFOS 5.2.0.18 some don’t.

2 Likes

Hello, I was in the same situation as you and this other thread saved me! At least to get general mobile connectivity back, except in AAS.

using the magic command it restores mobile data!

dbus-send --system --print-reply --dest=org.ofono /ril_0/context1 org.ofono.ConnectionContext.SetProperty string:Active variant:boolean:true

good luck!

1 Like

Wow. I used that command and it not only restored data on native but also on AAS.

Same issue on Jolla Phone 2026, 5.2.0.18, Bouygues (FR), which is IPv6-only on mobile data. I found two bugs:

1. CLAT doesn’t start (unable to open /run/connman/tayga.conf). This one is already known and a fix is coming, see @jlaakkonen’s post.

2. DNS doesn’t work in AAS. This is what actually breaks AAS. On mobile data, Android uses [::1]:53 as its DNS server, but nothing listens there. connman’s dnsproxy fails to bind (Failed to bind UDP listener socket) and systemd-resolved only listens on 127.0.0.53. Like @nas noticed, pinging an IP works but names don’t resolve.

To check if you have the same problem, run this on mobile data:

devel-su appsupport-attach /system/bin/dumpsys dnsresolver

If the only DNS server is ::1 with INTERNAL_ERROR, it’s the same bug.

:warning: Disclaimer: I used AI to diagnose this and write the workaround below. It works for me (AAS has internet on mobile data again), but it’s not an official fix. Read it before installing, and do it at your own risk.

Workaround: forward \[::1\]:53 to systemd-resolved

/usr/local/sbin/aas-dns-forward.py (chmod 755):

#!/usr/bin/env python3
# Forward DNS from [::1]:53 (what Android App Support uses) to the
# systemd-resolved stub at 127.0.0.53:53. UDP and TCP.
import os
import socket
import socketserver
import threading

LISTEN = (os.environ.get("LISTEN_ADDR", "::1"), int(os.environ.get("LISTEN_PORT", "53")))
UP = (os.environ.get("UP_ADDR", "127.0.0.53"), int(os.environ.get("UP_PORT", "53")))


class UDPHandler(socketserver.BaseRequestHandler):
    def handle(self):
        data, sock = self.request
        with socket.socket(socket.AF_INET, socket.SOCK_DGRAM) as u:
            u.settimeout(5)
            u.sendto(data, UP)
            try:
                resp, _ = u.recvfrom(65535)
            except socket.timeout:
                return
        sock.sendto(resp, self.client_address)


def pipe(src, dst):
    try:
        while True:
            buf = src.recv(65535)
            if not buf:
                break
            dst.sendall(buf)
    except OSError:
        pass
    finally:
        for s in (src, dst):
            try:
                s.shutdown(socket.SHUT_RDWR)
            except OSError:
                pass


class TCPHandler(socketserver.BaseRequestHandler):
    def handle(self):
        c = self.request
        try:
            u = socket.create_connection(UP, timeout=10)
        except OSError:
            return
        u.settimeout(30)
        c.settimeout(30)
        t = threading.Thread(target=pipe, args=(u, c), daemon=True)
        t.start()
        pipe(c, u)
        t.join(5)
        u.close()


class UDPServer(socketserver.ThreadingMixIn, socketserver.UDPServer):
    address_family = socket.AF_INET6
    allow_reuse_address = True
    daemon_threads = True


class TCPServer(socketserver.ThreadingMixIn, socketserver.TCPServer):
    address_family = socket.AF_INET6
    allow_reuse_address = True
    daemon_threads = True


if __name__ == "__main__":
    udp = UDPServer(LISTEN, UDPHandler)
    tcp = TCPServer(LISTEN, TCPHandler)
    threading.Thread(target=tcp.serve_forever, daemon=True).start()
    print("forwarding [%s]:%d -> %s:%d" % (LISTEN + UP), flush=True)
    udp.serve_forever()

/etc/systemd/system/aas-dns-forward.service:

[Unit]
Description=DNS forwarder [::1]:53 -> systemd-resolved, for Android App Support
After=systemd-resolved.service network.target

[Service]
ExecStart=/usr/bin/python3 /usr/local/sbin/aas-dns-forward.py
Restart=always
RestartSec=2
User=nobody
AmbientCapabilities=CAP_NET_BIND_SERVICE
CapabilityBoundingSet=CAP_NET_BIND_SERVICE
NoNewPrivileges=yes

[Install]
WantedBy=multi-user.target

Enable:

devel-su
systemctl daemon-reload
systemctl enable --now aas-dns-forward

Undo:

devel-su
systemctl disable --now aas-dns-forward
rm /etc/systemd/system/aas-dns-forward.service /usr/local/sbin/aas-dns-forward.py
2 Likes

Just came back from Italy. 950km, roaming, then home cellular, all worked fine until I reached home. Now AAS is again offline with no DNS when at home city cellular. Dbus command doesn’t fix it.

try this, worked for me in france with a different network

Thx, I applied your daemon and it’s fixed on my end.