Vendor Name: Fairphone
Device name: FP3
Device CodeName: FP3
Version of /e/OS: 2.1-t-20240605406922-dev-FP3
Is the device: Not rooted
Before beginning, I want to thank to every Devs of /e/OS for our work.
I use the OS since 5 or 6 years, it’s an amazing Android OS.
Many, many thanks ![:slight_smile: :slight_smile:](https://community.e.foundation/images/emoji/apple/slight_smile.png?v=12)
For my first post here, I send a workaround, I hope can help.
My tests are below.
Device can’t connect to any IPv4 with an APN IPv6-only in Data Mobile network.
It’s maybe related with the issue 6793 [1], I have the same trouble with Proton VPNs or my Wireguard home server.
I did some tests and that concern all connections to IPv4 servers in Mobile Data.
My mobile operator (Bouygues Telecom, french operator) provide an APN IPv6-only with 464XLAT [2].
I found in Android code the property [3] : net.464xlat.cellular.enabled
and it’s set to false.
When I set the property to true, a new interface is create: v4-rmnet_data1 and a IPv4 is
setprop net.464xlat.cellular.enabled true
But this parameter is volatile, and it’s necessary to set after a reboot.
I try with ‘persist.*’ but it doesn’t works.
I don’t known if it is a workaround or this parameter is good. I’m right?
Another question: why Web browsing on the device is not impacted?
[1] FP3 does not re-connect to VPN after v1.9s upgrade (#6793) · Issues · e / Backlog · GitLab
[2] Tutoriel pour activer IPv6 sur Android [In French]
[3] android[.]googlesource[.]com/platform/system/netd/+/refs/heads/master/server/netd.rc#31
(I can’t post more than 2 links)
==========
For beginner users do not try this at home
With adb shell in root
When the property is set to true
FP3:/ # cmd connectivity airplane-mode enable
FP3:/ # setprop net.464xlat.cellular.enabled true
FP3:/ # cmd connectivity airplane-mode disable
interface :
FP3:/ # ip a sh dev v4-rmnet_data1
34: v4-rmnet_data1: <POINTOPOINT,MULTICAST,NOARP,UP,LOWER_UP> mtu 1586 qdisc pfifo_fast state UNKNOWN group default qlen 500
link/none
inet 192.0.0.4/32 brd 192.0.0.4 scope global v4-rmnet_data1
valid_lft forever preferred_lft forever
route :
FP3:/ # ip r sh table all | grep v4-rmnet_data1
default via 192.0.0.4 dev v4-rmnet_data1 table v4-rmnet_data1 proto static
224.0.0.0/24 dev v4-rmnet_data1 table v4-rmnet_data1_local proto static scope link
local 192.0.0.4 dev v4-rmnet_data1 table local proto kernel scope host src 192.0.0.4
broadcast 192.0.0.4 dev v4-rmnet_data1 table local proto kernel scope link src 192.0.0.4
Logcat:
06-29 15:38:32.545 1549 1865 D ConnectivityService: NAT64 prefix changed on netId 142: operation=1, 64:ff9b::/96
06-29 15:38:32.700 1549 1837 D ConnectivityService: requestNetwork for uid/pid:10105/2099 activeRequest: null callbackRequest: 593 [NetworkRequest [ REQUEST id=593, [ Transports: CELLULAR Capabilities: IMS&TRUSTED&NOT_VPN Specifier: <TelephonyNetworkSpecifier [mSubId = 1]> Uid: 10105 RequestorUid: 10105 RequestorPkg: com.qualcomm.qti.cne UnderlyingNetworks: Null] ]] callback flags: 0 order: 2147483647
06-29 15:38:32.719 1549 1865 D ConnectivityService: Adding iface v4-rmnet_data1 to network 142
Test IPv4 connection:
FP3:/ # curl -v -4 https://community.e.foundation -o /dev/null
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0* Trying 157.90.154.178:443...
* Connected to community.e.foundation (157.90.154.178) port 443 (#0)
* ALPN, offering http/1.1
* CAfile: none
* CApath: /system/etc/security/cacerts
} [5 bytes data]
* TLSv1.2 (OUT), TLS handshake, Client hello (1):
} [512 bytes data]
* TLSv1.2 (IN), TLS handshake, Server hello (2):
{ [122 bytes data]
[../..] Some TLS
When the propertie is set to false
FP3:/ # cmd connectivity airplane-mode enable
FP3:/ # setprop net.464xlat.cellular.enabled false
FP3:/ # cmd connectivity airplane-mode disable
FP3:/ # ip a sh dev v4-rmnet_data1
Device "v4-rmnet_data1" does not exist.
1|FP3:/ #
1|FP3:/ # ip r sh table all | grep v4-rmnet_data1
1|FP3:/ #
No logcat: no IPv4 is requested
Test IPv4 connection:
FP3:/ # curl -v -4 https://community.e.foundation -o /dev/null
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0* Trying 157.90.154.178:443...
* Immediate connect fail for 157.90.154.178: Network is unreachable
* Closing connection 0
curl: (7) Couldn't connect to server
7|FP3:/ #
Only IPv6 connection works
1|FP3:/ # curl -v -6 https://community.e.foundation -o /dev/null
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0* Trying 2a01:4f8:1c17:4e10:d00b::2:443...
* Connected to community.e.foundation (2a01:4f8:1c17:4e10:d00b::2) port 443 (#0)
* ALPN, offering http/1.1
* CAfile: none
* CApath: /system/etc/security/cacerts
} [5 bytes data]