Question

I'm trying to connect from a host (PC or other) to a mobile cellular Android device on the Verizon/AT&T cellular network. This device uses only the 3G network and has its Wi-Fi turned off. The Android device has a listening socket and I need the remote host to be the connection initiator. As far as I know, Verizon/AT&T uses NAT traversal for mobile phones and assigns local IP addresses to them on the cellular network. This prevents me from initiating a connection to the device from a remote host. Please correct me if I'm wrong about that.

With the usage of IPv6 assignments there shouldn't be any practical limitation (virtually unlimited) to the number of "real" IPs that can be assigned. Therefore my questions are: 1. Does the Verizon/AT&T cellular network support IPv6 and assigns IPv6 addresses to capable Android devices? 2. Is it a feasible solution to this problem? 3. Does Android 2.2+ have enough support for IPv6 to implement such solution?

I am aware of other methods that can be used, such as C2DM, but they have some drawbacks (such as unknown response time) that prevent me from using them.

Thanks.

Was it helpful?

Solution

  1. Verizon's LTE network supports IPv6 (see below). The phone is assigned a global-scope IPv6 address
  2. Although there is no NAT with IPv6 I was not able to connect to a socket listener running on my phone, or ping6 the phone so there seems to be some kind of inbound filtering
  3. The API has full support for IPv6 provided the underlying network interfaces supports it

enter image description here

OTHER TIPS

You are assuming that the carrier, any carrier, not just Verizon, allows mobile terminated traffic flows. Regardless of address space, consider the impact on the network. If I had a defined IPv6 address prefix for a given gateway, let us say, 20001:5555:0000:1111/64, while it's a LOT of address space to scan, I could launch something akin to a DOS/DDOS attack. Granted, most of the addresses won't do anything, but one important thing to remember about mobile -- the actual IP transit is minor in cost. The RADIO SPECTRUM is precious. If you sweep a block of address space, and the carrier doesn't block it, you light up that gateway, and its spectrum.

In general, carriers don't allow unsolicited inbound traffic for this reason -- it's a lot of spectrum waste for no actual traffic.

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top