Mobile IP: How Mobile Devices Get IP Addresses
Mobile devices constantly move between networks, yet maintain seamless connectivity. Understanding how mobile devices obtain and manage IP addresses is essential in our increasingly mobile world. This comprehensive guide explains mobile IP addressing, cellular networks, WiFi transitions, and the technologies that enable continuous connectivity.
How Mobile Devices Get IP Addresses
Cellular Networks
Mobile carrier network:
Device connects: To cell tower
Network: Assigns IP address
Method: Carrier-grade NAT (CGNAT)
IP type: Usually private or shared public
Duration: While connected to network
IP assignment process:
1. Device powers on
2. Registers with cell tower
3. Authenticates with carrier
4. DHCP assigns IP address
5. Device can communicate
6. IP may change when moving between towers
Carrier-Grade NAT (CGNAT):
Problem: IPv4 address exhaustion
Solution: Share public IPs among many users
Your device: Private IP (e.g., 100.64.0.1)
Carrier NAT: Translates to public IP
Public IP: Shared with hundreds/thousands of users
Learn more about CGNAT, NAT, and IPv4 exhaustion.
Example:
Your phone: 100.64.123.45 (private, RFC 6598)
Carrier NAT: 203.0.113.1 (public, shared)
Website sees: 203.0.113.1
Actual users: 1000+ devices behind same public IP
WiFi Networks
Home/office WiFi:
Device connects: To WiFi access point
Router: Runs DHCP server
IP assigned: Private IP (192.168.x.x, 10.x.x.x)
Internet access: Through router NAT
Gateway: Router's public IP
Public WiFi:
Coffee shop, airport, hotel
DHCP: Assigns IP from local pool
Captive portal: May require login
IP type: Private, behind NAT
Security: Use VPN on public WiFi
WiFi IP assignment:
1. Device connects to WiFi
2. Sends DHCP discover
3. Router offers IP address
4. Device requests IP
5. Router acknowledges
6. Device configured with IP, gateway, DNS
Switching Between Networks
Cellular to WiFi:
1. Device detects WiFi
2. Connects to WiFi
3. Obtains new IP address (WiFi network)
4. Cellular connection maintained (background)
5. Data traffic switches to WiFi
6. Cellular IP may be released or kept
WiFi to cellular:
1. WiFi signal lost or disconnected
2. Device switches to cellular
3. Uses existing cellular IP or obtains new one
4. Seamless transition (for most apps)
5. Active connections may drop
Dual connectivity:
Modern devices: Both WiFi and cellular active
WiFi: Primary for data
Cellular: Backup and voice
Seamless: Automatic switching
Mobile IP Technologies
Mobile IP (RFC 5944)
Purpose:
Maintain same IP address while moving
Roaming: Between different networks
Transparency: Applications don't notice
Use: Enterprise, IoT, specialized applications
How it works:
Home network: Original network
Home address: Permanent IP address
Foreign network: Visited network
Care-of address: Temporary IP in foreign network
Home agent: Router in home network
Foreign agent: Router in foreign network
Mobile IP process:
1. Device moves to foreign network
2. Obtains care-of address
3. Registers with home agent
4. Home agent creates tunnel
5. Traffic to home address → tunneled to care-of address
6. Device receives traffic at new location
7. Maintains same home address
Example:
Home network: 192.168.1.0/24
Home address: 192.168.1.100 (permanent)
Travel to: Foreign network
Care-of address: 10.0.5.50 (temporary)
Home agent: Tunnels traffic from 192.168.1.100 to 10.0.5.50
Applications: Still use 192.168.1.100
Limitations:
Complexity: Requires infrastructure
Overhead: Tunneling adds latency
Adoption: Limited in practice
Alternative: Modern approaches (below)
Cellular Network Mobility
Handoff/handover:
Moving between cell towers
IP address: May change or stay same
Connection: Maintained during handoff
Seamless: For voice and data
Types of handoff: ``` Hard handoff: Break-before-make - Disconnect from tower A - Connect to tower B - Brief interruption
Soft handoff: Make-before-break - Connect to tower B - Maintain tower A - Seamless transition - Disconnect tower A ```
IP address persistence:
Same carrier network: IP often stays same
Different carrier: New IP address
Roaming: New IP from visited network
Session: TCP connections may survive
WiFi Roaming (802.11r)
Fast BSS Transition:
Purpose: Quick handoff between access points
Standard: 802.11r
Benefit: Seamless roaming
Use: Enterprise WiFi, mesh networks
How it works:
1. Device moves between APs
2. Pre-authentication with new AP
3. Fast handoff (<50ms)
4. IP address maintained
5. No DHCP renewal needed
6. Active connections continue
Requirements:
Access points: Support 802.11r
Same network: Same SSID and subnet
Controller: Centralized management
Configuration: Proper setup
IPv6 and Mobile Devices
IPv6 Benefits for Mobile
Abundant addresses:
IPv4: Shared via CGNAT
IPv6: Every device gets unique address
End-to-end: Direct connectivity
No NAT: Simplified networking
Mobile IPv6 (MIPv6):
Improvement: Over Mobile IPv4
Built-in: IPv6 designed with mobility
Routing: Route optimization
Efficiency: Less overhead
How MIPv6 works:
Home address: Permanent IPv6 address
Care-of address: Current location address
Binding update: Inform correspondents
Direct routing: After binding update
No tunneling: More efficient than MIPv4
Carrier IPv6 Deployment
Mobile carriers:
T-Mobile: IPv6 deployed
Verizon: IPv6 available
AT&T: IPv6 rolling out
Sprint: IPv6 deployed
Global: Increasing adoption
Dual-stack:
IPv4: Via CGNAT
IPv6: Native, unique address
Preference: IPv6 when available
Fallback: IPv4 for legacy
464XLAT:
Purpose: IPv4 apps on IPv6-only network
CLAT: Customer-side translator
PLAT: Provider-side translator
Result: IPv4 apps work on IPv6 network
Transparent: To applications
Mobile Network Architecture
4G LTE
Network components:
eNodeB: Cell tower/base station
MME: Mobility Management Entity
S-GW: Serving Gateway
P-GW: PDN Gateway
HSS: Home Subscriber Server
IP assignment:
1. Device attaches to eNodeB
2. MME authenticates device
3. P-GW assigns IP address
4. IP address from carrier pool
5. Device can communicate
IP address types:
IPv4: Via CGNAT (100.64.0.0/10)
IPv6: Unique /64 prefix
Dual-stack: Both IPv4 and IPv6
5G
Network slicing:
Concept: Virtual networks on same infrastructure
Slices: Different for different use cases
IP addressing: Per slice
Flexibility: Customized per application
5G Core:
AMF: Access and Mobility Management
SMF: Session Management Function
UPF: User Plane Function
IP assignment: SMF coordinates with UPF
Improvements:
Faster: Lower latency
More addresses: IPv6 native
Flexibility: Network slicing
IoT: Massive device support
Mobile IP Address Characteristics
Dynamic Assignment
DHCP lease:
Duration: Hours to days
Renewal: Automatic
Change: IP may change on renewal
Persistence: Not guaranteed
When IP changes:
Device restart
Network reconnect
DHCP lease expiration
Moving between networks
Carrier maintenance
Impact:
Active connections: May drop
New connections: Use new IP
Applications: Should handle reconnection
Stateless: Preferred design
Private vs Public IPs
Cellular (CGNAT):
Your device: 100.64.x.x (private)
Carrier NAT: Translates to public
Public IP: Shared with many users
Ports: Dynamically allocated
Incoming: Difficult without setup
WiFi (home):
Your device: 192.168.x.x or 10.x.x.x (private)
Router NAT: Translates to public
Public IP: Shared with household
Port forwarding: Possible
Public IPv6:
Your device: 2001:db8::/64 (unique)
No NAT: Direct connectivity
Incoming: Possible (if firewall allows)
Privacy: Use privacy extensions
Geolocation
IP geolocation accuracy:
Cellular: City-level accuracy
WiFi: More accurate (if database has AP location)
GPS: Most accurate (not IP-based)
VPN: Shows VPN server location
Mobile considerations:
Moving: Location changes
Roaming: Different country IP
WiFi: Location of access point
Accuracy: Varies by method
Mobile-Specific Challenges
NAT Traversal
Problem:
Device behind CGNAT
Incoming connections: Difficult
P2P applications: Challenging
VoIP: May have issues
Solutions:
STUN: Session Traversal Utilities for NAT
TURN: Traversal Using Relays around NAT
ICE: Interactive Connectivity Establishment
UPnP: Universal Plug and Play (WiFi only)
Example (WebRTC):
1. Use STUN to discover public IP and port
2. Exchange candidates with peer
3. Try direct connection
4. Fall back to TURN relay if needed
5. Establish connection
Connection Stability
Mobile challenges:
Signal strength: Varies
Handoffs: Between towers
Network switching: WiFi ↔ cellular
IP changes: Connections drop
Application strategies:
Reconnection: Automatic retry
Exponential backoff: Avoid overwhelming
State preservation: Save progress
Heartbeats: Detect disconnection
Graceful degradation: Handle offline
Battery Optimization
Network impact:
Cellular: More power than WiFi
Weak signal: Drains battery faster
Constant polling: Battery drain
Background sync: Controlled by OS
Best practices:
WiFi preferred: When available
Batch requests: Reduce wake-ups
Push notifications: Instead of polling
Adaptive sync: Based on usage
Doze mode: Respect OS power management
Privacy and Security
Mobile IP Privacy
Tracking concerns:
IP address: Can track device
CGNAT: Shared IP reduces tracking
WiFi: MAC address tracking
Location: IP reveals approximate location
Privacy measures:
VPN: Hide real IP
Private relay: Apple's solution
MAC randomization: Different MAC per network
IPv6 privacy extensions: Temporary addresses
Security Considerations
Public WiFi risks:
Unencrypted: Traffic visible
Man-in-the-middle: Possible attacks
Fake hotspots: Phishing
Packet sniffing: Data theft
Protection:
VPN: Encrypt all traffic
HTTPS: For web browsing
Avoid: Sensitive transactions on public WiFi
Verify: Network authenticity
Firewall: Enable on device
Cellular security:
Encryption: Built into 4G/5G
Authentication: SIM card
Interception: Difficult (but possible with equipment)
IMSI catchers: Fake cell towers
Developer Considerations
Handling IP Changes
Best practices: ```javascript // Detect network change window.addEventListener('online', () => { console.log('Network connected'); reconnect(); });
window.addEventListener('offline', () => { console.log('Network disconnected'); pauseOperations(); });
// Reconnection logic function reconnect() { // Re-establish WebSocket // Refresh authentication // Resume operations } ```
Mobile app (iOS): ```swift // Monitor network changes import Network
let monitor = NWPathMonitor() monitor.pathUpdateHandler = { path in if path.status == .satisfied { print("Connected") reconnect() } else { print("Disconnected") } } ```
Mobile app (Android): ```java // Network callback ConnectivityManager.NetworkCallback callback = new ConnectivityManager.NetworkCallback() { @Override public void onAvailable(Network network) { // Network available reconnect(); }
@Override
public void onLost(Network network) {
// Network lost
pauseOperations();
}
}; ```
API Design
Stateless design:
Avoid: Server-side sessions tied to IP
Use: Token-based authentication (JWT)
Idempotent: Safe to retry requests
Resumable: Support resuming operations
Handle reconnection:
Automatic retry: With exponential backoff
Duplicate detection: Idempotency keys
State sync: Resume from last known state
Offline support: Queue operations
Future of Mobile IP
5G and Beyond
5G improvements:
Lower latency: <10ms
Higher bandwidth: Multi-gigabit
More devices: Massive IoT
Network slicing: Customized networks
IPv6: Native support
Edge computing:
MEC: Multi-access Edge Computing
Local processing: Reduce latency
IP addressing: Local edge servers
Use cases: AR/VR, gaming, IoT
IPv6 Adoption
Mobile-first:
Carriers: Leading IPv6 adoption
Devices: Full IPv6 support
Benefits: Unique addresses, no CGNAT
Future: IPv6-only networks
Transition:
Current: Dual-stack (IPv4 + IPv6)
Future: IPv6-only with 464XLAT
Eventually: Pure IPv6
Conclusion
Mobile devices obtain IP addresses through cellular networks (via CGNAT) or WiFi (via DHCP), with addresses changing as devices move between networks. Modern smartphones handle these transitions seamlessly, though applications should be designed to handle IP changes and reconnections. IPv6 adoption in mobile networks provides unique addresses and better end-to-end connectivity, while technologies like Mobile IP and 802.11r enable seamless roaming.
Related Articles
IP Assignment
- DHCP - WiFi IP assignment
- Carrier-Grade NAT - Cellular NAT
- Static vs Dynamic IP - IP types
- IP Lease Time - DHCP leases
IPv6 for Mobile
- IPv6 vs IPv4 - Mobile IPv6
- IPv6 Adoption - Mobile networks
- Dual-Stack Networking - IPv4/IPv6 coexistence
Network Concepts
- MTU - Mobile MTU
- NAT - Mobile NAT
- What Is My IP? - Check mobile IP
Explore More
- Networking Basics - Essential concepts
Key takeaways: - Cellular: IP via CGNAT, often shared - WiFi: IP via DHCP, private address - IP changes: When switching networks - CGNAT: Shares public IP among many users - IPv6: Unique address per device - Mobile IP: Maintains same IP while roaming - Handoff: Seamless between cell towers - 802.11r: Fast WiFi roaming - Security: Use VPN on public WiFi - Development: Handle IP changes gracefully - Future: 5G and IPv6 adoption - Privacy: Use privacy extensions, VPN
Bottom line: Mobile devices dynamically obtain IP addresses from cellular networks (via CGNAT with shared public IPs) or WiFi networks (via DHCP with private IPs). IP addresses change when switching between networks, so applications should handle reconnections gracefully. Use VPN on public WiFi for security, and design mobile applications to be stateless with automatic reconnection logic. IPv6 adoption in mobile networks provides unique addresses and eliminates CGNAT limitations, with carriers leading IPv6 deployment globally.