This for me is #1 issue I am trying to solve with my mobile phone .
To cut to the chase (conclusion) I believe the only option is to rebuild
android from scratch with root / sudo access configured so one can
write /etc/default/hostapd.conf and and initscript to configure iptables to
configure full NAT and port forwarding
to addresses served by the Android DHCP server and hostapd ?
And then you are at the mercy of the carrier to recognize that
ports CAN BE served by mobile devices - they might not allow
common restricted ports like 80 or 22, but might allow ports like
5900, 6001 or 65533 , so that even if you can test port access
via NAT to your external IP from the NAT destination (terminal),
it does not mean other devices can connect to those ports - you need
to test access from another 4G / LTE / 3G terminal or WAN connected
device, NOT from the NAT terminal device .
Unlike with a home Wifi Router, which does full NAT, and allows
ports to be forwarded, as did the previous Android 4.2.2 Settings
-> WiFi HotSpot -> Configuration dialogs .
So if I go to
http://ip2location.com , which tells me what my mobile
phone's external IP address is, this is
A) only partially NAT-ed to the hotspot network DHCP devices -
only responses to requests from the DHCP terminals will be forwarded
with no port forwarding ports configured
B) if other hosts request access to ${EXTERNAL_IP}:80 (port 80: http)
this is up to the mobile phone company to honor in the first place .
There really is no other workaround than to configure hostapd
& NAT iptables (requiring root access) to do full NAT ? Anyone know
of any way of doing this on Android 7.0 ? Does ResurrectionRemix
(Android 7.1) support this any better than 7.0 ? At least I should be
able to root my phone using it ...
But a shame to have to root the phone just to access settings that were
available in Android 4.2.2 ! This to me is a major bug , a regression of
7.0+ wrt 4.2.2, but I guess is classed as providing a different type of
service than 4.2.2 by the Android developers?.
I am considering trying to get Android 4.2.2, which does have user
configuration options for port forwarding and timeout configuration,
compiled with support for LTE backported & enabled to overcome this issue .
Is there an LTE backport for 4.2.2 ?