10

It appears like Apple has fully supported IPv6 tethering on iOS devices years ago, including proper, native IPv6 addresses on each tethered device.

What about Android? It seems like Android 6.0.1 is still totally missing IPv6 on the tethering side. Not only that, but tethering explicitly doesn't even work at all when you're on an IPv6-only network, unless your phone has IPv4 connectivity, too (which with DNS64 and NAT64, is often not the case -- T-Mobile US is especially well-known for not being keen on providing native IPv4 to IPv6-capable devices).

Has IPv6 tethering support been added since then? Are there any plans to add support in later versions? It's 2017, there are basically no more IPv4 addresses, what's up with this disappearing tethering support?!

2 Answers 2

3

It should be available since Android 7. https://android.googlesource.com/platform/frameworks/base/+/7747fd4/services/core/java/com/android/server/connectivity/tethering/IPv6TetheringCoordinator.java

It's working on my Android 8.1.

0

It didn't work on Android 6.0.1; however, with Android 7.1.1 on the same device, and with T-Mobile US as the carrier in early 2018, the following is the configuration that gets assigned to an OS X box:

% ifconfig en0 en0: flags=8863<UP,BROADCAST,SMART,RUNNING,SIMPLEX,MULTICAST> mtu 1500 ether 8c:29:XX:XX:XX:XX inet6 fe80::8e29:XXff:feXX:XXXX%en0 prefixlen 64 scopeid 0x4 inet 192.168.43.163 netmask 0xffffff00 broadcast 192.168.43.255 inet6 2607:fb90:4bYY:YYYY:8e29:XXff:feXX:XXXX prefixlen 64 autoconf inet6 2607:fb90:4bYY:YYYY:d427:13ba:ZZZZ:ZZZZ prefixlen 64 autoconf temporary nd6 options=1<PERFORMNUD> media: autoselect status: active 

Note that this includes both a temporary random IPv6 address (used ZZ to anonymise), as well as the permanent IPv6 address that's deterministic based on the prefix (YY) and the MAC address (XX).

P.S. Yes, it does appear that T-Mobile US might as well be delegating the whole /64 prefix to its ME, however, doing a traceroute6(8) may indicate that the prefix is not actually fully dedicated to the Mobile Equipment, as the first use of the prefix appears to be at the PGW level, followed by ME, followed by OS X, when doing a traceroute6 to the permanent IPv6 address of the OS X box:

 3 lag-109.ear2.Paris1.Level3.net (2001:1900:5:2:2::4a09) 1.145 ms 1.416 ms 1.696 ms 4 2001:1900:1a::19 (2001:1900:1a::19) 147.601 ms 147.609 ms 147.596 ms 5 * * * 6 * * * 7 * * * 8 * * * 9 2607:fb90:4bYY:YYYY:0:45:WWWW:WWWW (2607:fb90:4bYY:YYYY:0:45:WWWW:WWWW) 156.866 ms 157.103 ms 157.097 ms 10 2607:fb90:4bYY:YYYY:7136:9b4c:VVV:VVVV (2607:fb90:4bYY:YYYY:7136:9b4c:VVV:VVVV) 189.333 ms 201.174 ms 192.226 ms 11 2607:fb90:4bYY:YYYY:8e29:XXff:feXX:XXXX (2607:fb90:4bYY:YYYY:8e29:XXff:feXX:XXXX) 200.185 ms 300.332 ms 267.247 ms 

Still pretty cool to be getting not just one but even two public routable IP addresses on a laptop whilst tethered to an average Android device with default everything; like the internet was meant to be, p2p.

2
  • 1
    Hm, but I guess this doesn't work for USB-tethering? Or only not on Wifi-to-USB? Commented Mar 6, 2020 at 3:59
  • 2
    I'm on Android 9 and have native IPv6 from my carrier but tethering only uses IPv4. I can't find any settings to control this. Could this be a build option that my handset manufacturer hasn't included? Commented Sep 24, 2020 at 8:34

You must log in to answer this question.

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.