Starlink as Fiber Failover: The Cutover That Still Breaks VoIP
Lars Beckmann
September 18, 2026
Fiber dies. The dish is already on the roof. The dual-WAN box flips. The office still has “internet.” The desk phone does not. That is the failover people buy and the cutover they actually get. Starlink is a fat backup for browsers. It is a hostile new NAT for SIP, for a Grandstream that registered to a public IP that no longer exists, and for a Zoom Phone soft client that will recover if you wait and a hardware ATA that will not.
I have watched households celebrate a 12-second failover in the router log and then spend the outage on cell phones because the receptionist set was still barking a fast busy. The backup worked. The call path did not. If your reason for the second WAN is voice, test voice. A speed test on the dish is a hobby.
What the router thinks success is
Watchdog ping to 1.1.1.1, metric change, default route moves. Dual-WAN on an OpenWrt box, an Ubiquiti dream machine, a cheap TP-Link “failover” SKU — they all love this story. The LAN keeps DHCP. Netflix comes back. Slack reconnects. You have proved TCP to the web. You have not proved that a SIP REGISTER will land, that RTP will flow, or that the ITSP still likes your new address.
Some failovers are not even a new address. They are a new kind of address. Fiber often gives you a stable IPv4, or at least a modem that can 1:1 NAT a PBX. Starlink gives you CGNAT on IPv4 and a personality that changes. Inbound DIDs that pointed at your house are now pointing at a grave. Outbound may work. The receptionist does not care about outbound if the ringing never arrives.
If inbound ports are the product — a homelab, a PBX, a camera you should not have exposed — Starlink is a different product than fiber. I will not pretend a failover checkbox erases that.

Why the call dies when the web lives
SIP is a gossip protocol with a memory. The ATA registered through the fiber NAT. The provider has a contact of that mapping. You cut over. The mapping is gone. Until the box re-registers, you are a ghost. Some devices wait minutes. Some wait until you reboot them. A dual-WAN that is “seamless” for Chrome is a mid-call assassination for RTP. The session’s five-tuple died. ICE on a modern softphone can rebuild. A 2014 hotel ATA cannot.
SIP ALG on the Starlink router, or on your own box, will rewrite headers wrongly on a good day. On a cutover day it rewrites them into art. I turn ALG off. I still lose calls because the transport changed under a live stream. That is not a setting. That is a new path.
DNS is the quiet killer. A phone that resolved the SBC on fiber and cached an answer that is no longer reachable. A split-horizon trick you used for the office FQDN. Failover that does not flush what the endpoints remember is how you get “we have internet” and a busy signal.
CGNAT is not a footnote for voice
If your voice system needs a public IPv4 on the house, Starlink residential is not a spare fiber. It is a spare cell tower in the sky. Hosted PBX that only needs outbound plus a vendor that can hear you through STUN will often limp. Self-hosted 3CX or a FreePBX that expects hairpin and a SIP trunk to your IP will sit there looking professional and dead.
I tell people to put the PBX in the cloud or at the ITSP before they treat Starlink as voice failover. The house becomes a bunch of clients. Clients can move WANs. Servers that believe they are on a static WAN cannot. If you must keep the PBX at home, your failover is not Starlink. Your failover is a second terrestrial path, or you accept that voice becomes cell and softphone on LTE.
IPv6 on Starlink can be the more honest public surface than IPv4. Most small-office voice gear is still an IPv4 museum. Do not design the cutover on a protocol the ATA cannot speak.

The cutover I make people practice
Pull the fiber. Do not schedule it in a slide. Do it on a Tuesday when someone will actually answer the DID. Time three things: browser, Slack, the physical phone. If the phone is more than thirty seconds behind the browser, you do not have voice failover. You have web failover and a story.
Then place a call in both directions. Then place a call and pull fiber mid-sentence. That last one is how you learn whether your “seamless” box is a drop. Most are a drop. Plan the drop: a recorded greeting that says call the mobile, or a simultaneous ring to a cell that is not on the same desk analog line.
If you will not practice, do not sell the dish to the office as a phone plan. Sell it as email and a VPN that might need a reconnect. Honesty is cheaper than a week of “the phones are fine on the backup” tickets.
Double NAT and the included router
Starlink’s included router plus your failover firewall is two NATs. Voice hates two NATs. Bypass mode exists so your box is the only translator. I will not turn this into a bypass essay. I will say: if the ATA sits behind two layers and a CGNAT, you are stacking reasons for RTP to die. Failover that keeps their router in the path because someone liked the app Wi-Fi is how you add a third mood.
Put Starlink in bypass if this dish is a WAN, not a living-room product. Let your dual-WAN box own DHCP. Let the phones see one NAT you can name. Then accept that the remaining NAT may still be CGNAT on the far side. You improved the house. You did not become a fiber company.
Jitter, codec, and the pretty speed test
Starlink can look like 100 Mbps and still be a jittery UDP neighborhood. G.711 will eat that worse than a modern Opus call in Zoom. A “real” desk phone on a cheap trunk is often G.711 and proud. The cutover that breaks VoIP is sometimes not NAT. It is a codec that cannot hide LEO variance after the route flap already shook the session.
I lower expectations: voice on Starlink failover is a cell-quality call that may drop at the seam. If the business needs a call-center SLA, buy a second fiber or a 5G plan with a public IP product, not a residential dish you already owned for Netflix. The dish is a gift. It is not a PRI.
Policy routing that looks clever on a dry day
I have seen people mark the phone VLAN to prefer fiber and “everything else” to load-share. That is fine until fiber dies and the phone VLAN has no second path because someone wanted to protect voice from Starlink jitter — and then protected it from existence. Failover has to include the voice table or you built a museum with a pretty rule.
The opposite is also common: all traffic including phones slams the dish the moment a single ping fails. A flapping fiber then flaps SIP every two minutes. Debounce. Hold the route for a human minute unless the fiber is truly gone. A watchdog that is too proud is a call killer. I would rather a 90-second wait than a REGISTER storm.
Document which WAN the phones believe they are on. If only you understand the policy, the cutover is a spell. Spells fail when you are not in the building.
What I keep on fiber on purpose
The PBX. The alarm that still uses a phone line emulator. The fax that someone swore was dead and is not. The analog elevator line that is not my problem until it is. Those stay on the path that can inbound, or they move to a cellular communicator that was designed for the job. Starlink as a surprise ATA path is how you fail an inspection you did not know you had.
Browsers, updates, a VPN to a cloud jump host — those I let ride the dish. A homelab SSH that was already unhappy on Starlink latency does not get happier in a failover. It just becomes the only path. Tell the people who “must” SSH during an outage to use a hop that is not the house.
The decision
Starlink is a good fiber spare for the web and a bad surprise for a house PBX. The cutover will look green and still break VoIP unless the phones are clients of a hosted service, the NAT is as simple as you can make it, and you practiced a bidirectional call with the fiber on the floor. If inbound DIDs to the building are the product, the dish is not the spare WAN you thought. Design voice first. Then enjoy the backup Netflix. I still mount the dish. I do not tell the receptionist the phones are dual-WAN until the Tuesday test says so.