network foundations · stub
VoIP behind carrier-grade NAT and Starlink and cellular links
Verified 2026-10-14 · 56 sources · tier 1–5
Also known as CGNAT.
Stub. This topic has 56 sources and no published article. The sources below are everything recorded so far.
So far, no summary has been generated for this topic. The sources below are everything recorded so far.
See also
Related to
- NAT traversal ICE STUN and TURN — Queued 2026-10-14; NAT traversal ICE STUN and TURN is the nearest existing coverage
Sources
- 1Phones on a cellular or fixed-wireless network that reaches IPv4 through 464XLAT cannot receive unsolicited inbound IPv4 SIP, so they depend on client-initiated flows or relays just as behind CGNAT.inferredRFC 6877: 464XLAT: Combination of Stateful and Stateless Translation · Abstract; Section 1; Section 2 · Checked 2026-10-14
- 2For an Asterisk server behind NAT, the documentation sets external_media_address and external_signaling_address to the external IP and local_net to the internal ranges so SDP and SIP headers are rewritten only toward non-local destinations.Configuring res_pjsip to work through NAT · section 'pjsip.conf Configuration' · Checked 2026-10-14
- 3Asterisk documentation configures PJSIP endpoints for remote phones behind NAT with rtp_symmetric, force_rport and rewrite_contact so media and SIP are sent back to the observed source address and port.Configuring res_pjsip to work through NAT · section 'For Remote Phones Behind NAT' · Checked 2026-10-14
- 4Enabling Starlink bypass mode removes the customer-side double NAT but does not remove carrier-grade NAT, so inbound SIP still fails on a default CGNAT plan.inferredWhat is bypass mode? - Starlink Help Center · article body; read with starlink-help-blocked-ports article body · Checked 2026-10-14
- 5Community posts report that 3CX phones on Starlink or LTE behind CGNAT fail with STUN plus port forwarding and that partners instead use the 3CX SBC tunnel, which needs no inbound NAT rules.field report3CX StartUP on Starlink (uses CGNAT) · thread replies · Checked 2026-10-14
- 6Community reports describe Starlink CGNAT links where SIP calls connect but carry no audio until the PBX is set for symmetric RTP with local networks defined and no fixed external address.field reportCGNAT Starlink & FlowRoute RTP Issues · thread, original post and resolution post · Checked 2026-10-14
- 7A VoIP provider reports that SIP over TLS performs better than UDP on Starlink connections in many of its tests, and lists one-way audio, dropped calls and registration timeouts as Starlink double-NAT symptoms.field reportKiwi VoIP - Using VoIP Phones with Mesh Networks & Starlink · article body, problem context and TLS step · Checked 2026-10-14
- 8Behind CGNAT an inbound call can reach a registered phone only over a binding the phone itself opened and kept alive, so the keep-alive or re-registration interval must be shorter than the CGN's idle timeout.inferredRFC 5626: Managing Client-Initiated Connections in the Session Initiation Protocol (SIP) · Sections 3.5 and 4.4; read with RFC 4787 Section 4.3 REQ-6 and RFC 7857 Section 7 · Checked 2026-10-14
- 9Kiwi VoIP advises customers using VoIP phones on Starlink to enable Starlink bypass mode, disable SIP ALG and switch SIP transport from UDP 5060 to TLS 5061.Kiwi VoIP - Using VoIP Phones with Mesh Networks & Starlink · article body, numbered steps · Checked 2026-10-14
- 10RFC 3581 defines the Via rport parameter so a SIP server sends UDP responses to the source IP address and port the request actually came from, which matches the NAT binding.RFC 3581: An Extension to the Session Initiation Protocol (SIP) for Symmetric Response Routing · Sections 3 and 4 · Checked 2026-10-14
- 11RFC 4787 REQ-10 says ALGs for UDP-based protocols SHOULD be turned off and each ALG should be separately enable-able by the administrator.RFC 4787: Network Address Translation (NAT) Behavioral Requirements for Unicast UDP (BCP 127) · Section 7, REQ-10 and REQ-10a · Checked 2026-10-14
- 12RFC 4787 REQ-1 requires a NAT to use endpoint-independent mapping for UDP.RFC 4787: Network Address Translation (NAT) Behavioral Requirements for Unicast UDP (BCP 127) · Section 4.1, REQ-1 · Checked 2026-10-14
- 13RFC 4787 REQ-9 requires a NAT to support hairpinning using the external source IP address and port.RFC 4787: Network Address Translation (NAT) Behavioral Requirements for Unicast UDP (BCP 127) · Section 6, REQ-9 and REQ-9a · Checked 2026-10-14
- 14RFC 4787 REQ-6 requires that outbound packets refresh a NAT UDP mapping, while inbound refresh is optional.RFC 4787: Network Address Translation (NAT) Behavioral Requirements for Unicast UDP (BCP 127) · Section 4.3, REQ-6 and REQ-6a · Checked 2026-10-14
- 15RFC 4787 REQ-5 says a NAT UDP mapping timer MUST NOT expire in less than two minutes and recommends a default of five minutes or more, with shorter timers allowed only for well-known destination ports 0-1023.RFC 4787: Network Address Translation (NAT) Behavioral Requirements for Unicast UDP (BCP 127) · Section 4.3, REQ-5, REQ-5a, REQ-5c · Checked 2026-10-14
- 16RFC 4961 recommends that symmetric RTP and RTCP, sending from the same IP address and UDP port used to receive, always be used for bidirectional media, and requires it for traversal of NATs without ALGs.Symmetric RTP / RTP Control Protocol (RTCP) · Sections 3 and 4 · Checked 2026-10-14
- 17RFC 5626 (SIP Outbound) lets a SIP proxy deliver inbound requests to a user agent over connections or flows the user agent itself established, instead of opening a new connection toward it.RFC 5626: Managing Client-Initiated Connections in the Session Initiation Protocol (SIP) · Abstract; Section 1; Sections 3.1-3.4 · Checked 2026-10-14
- 18RFC 5626 has a UA on a connection-oriented transport such as TCP or TLS send double-CRLF keep-alives at a random 95 to 120 seconds by default, or 672 to 840 seconds where battery is a concern, and treat the flow as failed if no pong arrives within 10 seconds.RFC 5626: Managing Client-Initiated Connections in the Session Initiation Protocol (SIP) · Section 4.4.1 · Checked 2026-10-14
- 19Under RFC 5626, when a registrar returns a Flow-Timer value the UA must send keep-alives at least that often, at a random point between 80 and 100 percent of the value.RFC 5626: Managing Client-Initiated Connections in the Session Initiation Protocol (SIP) · Sections 4.4, 5.4 and 6 · Checked 2026-10-14
- 20RFC 5626 treats a UDP flow as failed if the XOR-MAPPED-ADDRESS returned in a STUN keep-alive response changes, which signals that the NAT binding was replaced.RFC 5626: Managing Client-Initiated Connections in the Session Initiation Protocol (SIP) · Section 4.4.2 · Checked 2026-10-14
- 21RFC 5626 has a UA re-register after flow failure with a random wait between 50 and 100 percent of min(max-time, base-time x 2^failures), using a 30 second base if all flows failed, 90 seconds otherwise, and an 1800 second maximum.RFC 5626: Managing Client-Initiated Connections in the Session Initiation Protocol (SIP) · Section 4.5 · Checked 2026-10-14
- 22RFC 5626 has a UA on a connectionless transport such as UDP send STUN keep-alives on the flow at a random interval of 24 to 29 seconds when the registrar supplies no Flow-Timer.RFC 5626: Managing Client-Initiated Connections in the Session Initiation Protocol (SIP) · Section 4.4.2 · Checked 2026-10-14
- 23RFC 6269 notes that under IP address sharing, inbound connections to well-known ports generally fail and applications that are not port-agile cannot be expected to work.RFC 6269: Issues with IP Address Sharing · Section 5.2.2 · Checked 2026-10-14
- 24RFC 6269 notes that keep-alive messages must be sent frequently to maintain NAT state behind address sharing, which significantly reduces battery life on battery-powered devices.RFC 6269: Issues with IP Address Sharing · Section 19 · Checked 2026-10-14
- 25RFC 6269 says port forwarding behind a CGN requires cooperation between the CPE and the CGN, making the subscriber dependent on the provider.RFC 6269: Issues with IP Address Sharing · Section 5.2.1 · Checked 2026-10-14
- 27RFC 6269 says NAT traversal techniques such as UPnP IGD NAT-PMP and manual configuration assume the NAT's WAN address is publicly routable and fail when it is not.RFC 6269: Issues with IP Address Sharing · Section 6 · Checked 2026-10-14
- 28RFC 6598 states Shared Address Space is not globally routable and packets with 100.64.0.0/10 source or destination addresses must not cross service provider boundaries.RFC 6598: IANA-Reserved IPv4 Prefix for Shared Address Space · Section 1; Section 4; Section 6 · Checked 2026-10-14
- 29RFC 6598 warns that the assumption that a non-special-use address is reachable from the Internet does not hold when the address sits behind a CGN.RFC 6598: IANA-Reserved IPv4 Prefix for Shared Address Space · Section 5.1 · Checked 2026-10-14
- 31RFC 6877 says 464XLAT provides IPv4 connectivity only in a client-server model toward servers with global IPv4 addresses and is not suited to IPv4 peer-to-peer or inbound connections.RFC 6877: 464XLAT: Combination of Stateful and Stateless Translation · Abstract; Section 1 · Checked 2026-10-14
- 32In RFC 6877 the provider-side translator (PLAT) performs stateful RFC 6146 NAT64 translation from many IPv6 addresses to shared global IPv4 addresses, while the customer-side CLAT is stateless.RFC 6877: 464XLAT: Combination of Stateful and Stateless Translation · Section 2; Sections 6.2 and 7.2 · Checked 2026-10-14
- 33RFC 6887 Port Control Protocol lets a host request inbound mappings from an upstream NAT including a Carrier-Grade NAT using the MAP opcode, with finite lifetimes the client must renew.RFC 6887: Port Control Protocol (PCP) · Sections 1, 2.1, 3 and 10.1 · Checked 2026-10-14
- 34RFC 6888 REQ-7 recommends endpoint-independent filtering on a CGN and allows address-dependent filtering only where it is known not to break the application.RFC 6888: Common Requirements for Carrier-Grade NATs (CGNs) · Section 3, REQ-7 · Checked 2026-10-14
- 35RFC 6888 REQ-2 requires a CGN to use Paired IP address pooling by default so that all of a subscriber's sessions share the same external IP address.RFC 6888: Common Requirements for Carrier-Grade NATs (CGNs) · Section 3, REQ-2 · Checked 2026-10-14
- 36RFC 6888 REQ-4 requires that a CGN allow per-subscriber port limits to be configured and permits them to differ per transport protocol.RFC 6888: Common Requirements for Carrier-Grade NATs (CGNs) · Section 3, REQ-4 · Checked 2026-10-14
- 37RFC 6888 REQ-9 says a CGN MUST let subscribers control their NAT mappings and SHOULD support the Port Control Protocol for this.RFC 6888: Common Requirements for Carrier-Grade NATs (CGNs) · Section 3, REQ-9 · Checked 2026-10-14
- 38RFC 6888 is BCP 127, was published in April 2013 and updates RFC 4787, so CGNs are expected to meet the RFC 4787 UDP behavioural requirements in addition to CGN-specific ones.RFC 6888: Common Requirements for Carrier-Grade NATs (CGNs) · Document header; Section 3, REQ-1 · Checked 2026-10-14
- 39RFC 7857 says inbound packets blocked by a NAT's security policy SHOULD NOT refresh the mapping, so unsolicited inbound traffic cannot keep a binding alive.RFC 7857: Updates to Network Address Translation (NAT) Behavioral Requirements · Section 7 · Checked 2026-10-14
- 40RFC 7857 recommends a default of 4 minutes for NAT TCP transitory-state timeouts, with open and closing transitory timeouts separately configurable.RFC 7857: Updates to Network Address Translation (NAT) Behavioral Requirements · Section 2.1 · Checked 2026-10-14
- 41RFC 8085 says applications that need UDP keep-alives SHOULD NOT send them more often than once every 15 seconds and should use longer intervals when possible.RFC 8085: UDP Usage Guidelines · Section 3.5 · Checked 2026-10-14
- 42RFC 8085 says keep-alives are not a recovery mechanism and applications still need a way to recover from broken sessions.RFC 8085: UDP Usage Guidelines · Section 3.5 · Checked 2026-10-14
- 43RFC 8085 states that empirical evidence suggests many deployed middleboxes use UDP state timeouts shorter than the two minutes RFC 4787 requires.RFC 8085: UDP Usage Guidelines · Section 3.5 · Checked 2026-10-14
- 44Starlink bypass mode turns off the Starlink router's WiFi so a third-party router connects directly to Starlink, and exiting bypass mode requires a factory reset.What is bypass mode? - Starlink Help Center · article body · Checked 2026-10-14
- 45Starlink's default CGNAT IP policy blocks all inbound ports.What ports does Starlink block? - Starlink Help Center · article body, opening statement on default IP policy · Checked 2026-10-14
- 46Starlink's default IPv4 configuration is CGNAT with addresses assigned to clients by DHCP from 100.64.0.0/10.What IP address does Starlink provide? - Starlink Help Center · article body, default IPv4 policy paragraph · Checked 2026-10-14
- 47Each Starlink connection is allocated one IPv4 address via DHCPv4 and a delegated /56 IPv6 prefix via DHCPv6-PD.IP Address - Starlink Help Center · article body, IPv6 paragraph · Checked 2026-10-14
- 48When a Starlink CGNAT plan reaches its concurrent session limit, new sessions cause the oldest sessions to be dropped.What are CGNAT session limits and how do they affect my connection? - Starlink Help Center · article body, limit behaviour paragraph · Checked 2026-10-14
- 49Starlink lists VoIP calls dropping or failing to connect and one-way audio among the common symptoms of hitting the CGNAT session limit.What are CGNAT session limits and how do they affect my connection? - Starlink Help Center · article body, symptoms list · Checked 2026-10-14
- 50Starlink does not provide static IP addresses; a public IP is dynamic and is held for the device for 24 hours across reboots or disconnects but may change after relocation or software updates.IP Address - Starlink Help Center · article body, static IP and reservation paragraphs · Checked 2026-10-14
- 51Starlink blocks outbound TCP port 25 and TCP port 445 for all customers.What ports does Starlink block? - Starlink Help Center · article body, outbound blocked ports list · Checked 2026-10-14
- 52Starlink advises customers who regularly use VoIP, video conferencing or other session-intensive applications to consider a Priority plan, which it says includes a public IP and lacks the CGNAT session limitation.What are CGNAT session limits and how do they affect my connection? - Starlink Help Center · article body, recommendation paragraph · Checked 2026-10-14
- 53One Starlink Help Center article says public IPv4 addresses are available to the Local Priority and Global Priority service plans.disputedIP Address - Starlink Help Center · article body, public IPv4 paragraph · Checked 2026-10-14
- 54One Starlink Help Center article says the optional public IPv4 policy is available to Priority, Mobile Priority and Maritime customers.disputedWhat IP address does Starlink provide? - Starlink Help Center · article body, public IP policy paragraph · Checked 2026-10-14
- 55Starlink WiFi routers do not support port forwarding or firewall rules for IPv4 or IPv6.IP Address - Starlink Help Center · article body, router capabilities statement · Checked 2026-10-14
- 56Starlink Residential and Roam plans use CGNAT and are limited to 1,200 concurrent UDP or TCP sessions.What are CGNAT session limits and how do they affect my connection? - Starlink Help Center · article body, opening paragraph · Checked 2026-10-14
Documents
tier 1 standards and regulators
RFC 3581: An Extension to the Session Initiation Protocol (SIP) for Symmetric Response Routing
tier 1 standards and regulators
RFC 4787: Network Address Translation (NAT) Behavioral Requirements for Unicast UDP (BCP 127)
tier 1 standards and regulators
RFC 5626: Managing Client-Initiated Connections in the Session Initiation Protocol (SIP)
tier 1 standards and regulators
RFC 6269: Issues with IP Address Sharing
tier 1 standards and regulators
RFC 6598: IANA-Reserved IPv4 Prefix for Shared Address Space
tier 1 standards and regulators
RFC 6877: 464XLAT: Combination of Stateful and Stateless Translation
tier 1 standards and regulators
RFC 6887: Port Control Protocol (PCP)
tier 1 standards and regulators
RFC 6888: Common Requirements for Carrier-Grade NATs (CGNs)
tier 1 standards and regulators
RFC 7857: Updates to Network Address Translation (NAT) Behavioral Requirements
tier 1 standards and regulators
RFC 8085: UDP Usage Guidelines
tier 1 standards and regulators
Symmetric RTP / RTP Control Protocol (RTCP)
tier 2 current vendor documentation
Configuring res_pjsip to work through NAT
tier 2 current vendor documentation
IP Address - Starlink Help Center
tier 2 current vendor documentation
Kiwi VoIP - Using VoIP Phones with Mesh Networks & Starlink
tier 2 current vendor documentation
What are CGNAT session limits and how do they affect my connection? - Starlink Help Center
tier 2 current vendor documentation
What IP address does Starlink provide? - Starlink Help Center
tier 2 current vendor documentation
What is bypass mode? - Starlink Help Center
tier 2 current vendor documentation
What ports does Starlink block? - Starlink Help Center
tier 5 independent technical research
3CX StartUP on Starlink (uses CGNAT)
tier 5 independent technical research
CGNAT Starlink & FlowRoute RTP Issues
Cite this page
APA
WarmTransfer. (2026, October 14). VoIP behind carrier-grade NAT and Starlink and cellular links. WarmTransfer. https://warmtransfer.net/knowledge/cgnat-starlink-voip
BibTeX
@misc{warmtransfer-cgnat-starlink-voip,
title = {VoIP behind carrier-grade NAT and Starlink and cellular links},
author = {{WarmTransfer}},
year = {2026},
url = {https://warmtransfer.net/knowledge/cgnat-starlink-voip},
note = {Verified 2026-10-14}
}