๐Ÿ›ฐ๏ธ Technical Reference 2026 Edition

Network Signals That Reveal
Remote-Worker Location

Six signals in ordinary network traffic that corporate security stacks use to detect location fraud. What each one measures, why it fires, and how much of it a home-IP relay actually removes.

โฑ 12 min read
๐Ÿ”— Every claim cited
๐ŸŽฏ Signal by signal
"Location fraud" is a security-team term for a worker signing in from somewhere their profile says they aren't. The detection surface for that behavior is not one signal. It's a stack of six that report independently and are then correlated. Understanding them individually matters, because the mitigations are not the same.
The stack, seen from the SOC

How Security Teams Actually Read Location

No single signal is treated as ground truth. Corporate risk engines correlate six or more, and disagreement between them is itself a flag.

Every enterprise SaaS product logs a source IP for every session, and identity providers compute a per-sign-in geolocation from that IP against a database like MaxMind or IPinfo. That's signal one. If that were the only field the stack looked at, a consumer VPN would be sufficient. It isn't, and the reason is that six other fields carry corroborating location information, and the risk engine treats disagreement between them as evidence.

The sections below walk each of the six signals: what it is, what generates it, and how much of it a network-layer intervention like a home-IP relay actually addresses.

The six signals

Signal-by-Signal Breakdown

Signal 1

Public source IP and geolocation

Every TCP or QUIC connection carries a source IP visible to the destination. Corporate SaaS platforms log that IP against every session, and identity providers convert it to a city, region, and country by lookup against a commercial IP-geolocation database.

Databases like MaxMind's GeoIP2 achieve country-level accuracy above 99% on residential IPs and roughly 80% at the city level [1]. That's precise enough that a Lisbon-Portugal reading versus a Tampa-Florida reading is essentially never ambiguous.

This is the signal every risk engine starts with. Microsoft's Impossible Travel detection in Entra ID compares the geolocation of each sign-in against recent history and flags the sign-in as risky when the elapsed time is insufficient for the physical distance [2].

Home-IP relay coverage Complete. If the traffic egresses from a residential IP anchored to the worker's home, Signal 1 stops reporting the travel location. This is the specific gap HomeLink is built to close.
Signal 2

DNS resolver country mismatch

DNS lookups can be shipped independently of the primary traffic tunnel. Browsers on default settings often send DNS to public resolvers directly (Firefox to Cloudflare's 1.1.1.1, Chrome to Google's 8.8.8.8) regardless of VPN state. When the OS sends DNS through the ISP's local resolver instead, the resolver's own IP has a country reading of its own.

Advanced detection engines log the resolver country separately from the source-IP country. If the source IP reads "Tampa, Florida" and the resolver reads "Lisbon, Portugal," the disagreement itself is the signal. Cloudflare's own documentation on DNS-based leak vectors and cross-resolver instrumentation describes this correlation as one of the most reliable tells for a mismatched network path [3].

Home-IP relay coverage Complete when the relay carries DNS traffic through the same tunnel as everything else. A router-level relay handles this by default because it terminates the LAN's DNS at the home end. A consumer VPN client running on a single device does not always cover it.
Signal 3

WebRTC-exposed real IP

WebRTC is a browser standard for real-time audio, video, and data. To negotiate peer connections, it uses a protocol called STUN that queries the operating system directly for the machine's real network interfaces and reports them back to a JavaScript environment. That JavaScript can read the results via the onicecandidate event without any special permission from the user.

The consequence is that a website loaded in a browser can read the machine's actual public IP even when the browser is otherwise routing HTTP through a VPN or proxy. Research summarised by Surfshark in 2025 estimates that roughly 23% of consumer VPN sessions leak the underlying real IP through this channel [4]. Independent academic work from 2017 formalized the mechanic and documented that most browsers, at default settings, leak both LAN and public IPs to any page that asks [5].

This is one of the biggest gotchas for consumer VPN users specifically. It's less relevant for router-level home-IP relays, because the "real" IP that WebRTC reports back is already the home IP, which is what the worker wanted the destination to see.

Home-IP relay coverage Effectively complete for the leak's practical impact. WebRTC reports the machine's real public IP; if that IP is the home IP by way of the relay tunnel, the report is consistent with everything else the destination sees.
Signal 4

Commercial-VPN endpoint blocklists

Datacenter IPs, hosting-provider IPs, and known commercial-VPN exit nodes are collected in commercial threat-intelligence feeds and consumed by the risk engines of every major SaaS product. Cloudflare, Akamai, and identity-provider platforms all consume feeds like Spur, IPQS, and MaxMind's Anonymous IP database. A session that egresses from an IP tagged as "anonymous VPN" or "hosting" gets a materially higher risk score than the same session from a residential IP [6].

This is why "I'll just use ExpressVPN" so often falls over. Even when the IP does read as "United States" per the geolocation database, the same IP is separately flagged as a commercial-VPN egress, and the SaaS product uses that flag to bump up the challenge level. Slack's login often escalates to email verification against known VPN exits. Banking apps and streaming services frequently refuse the connection outright.

Residential IPs assigned by consumer ISPs (Comcast, Spectrum, AT&T, Verizon) are, by their allocation classification, not on these lists.

Home-IP relay coverage Complete. A residential ISP-assigned IP is the exact class of address these blocklists are designed not to contain. This is the structural reason home-IP relays evaluate differently from datacenter VPNs.
Signal 5

Application-layer locale signals

HTTP requests carry an Accept-Language header derived from the OS language settings. Browsers report a timezone via the JavaScript Intl.DateTimeFormat().resolvedOptions().timeZone API. Slack, Google Calendar, and Microsoft Outlook all sync a per-user timezone field that updates from the OS clock. Each of these is a shorthand for where the machine "thinks" it is.

None of them is derived from the network. All of them are visible to any web application. When they disagree with the network-layer geolocation (source IP says Tampa, browser timezone says Europe/Lisbon), the correlation is trivial and the flag is loud.

For deeper coverage of this specific layer see how your work apps reveal your timezone.

Home-IP relay coverage None. This is an OS and device configuration concern, not a network concern. Lock the OS timezone before travel; leave the OS language setting unchanged.
Signal 6

Latency profile and RTT measurements

Round-trip time between a client and a server is a physical measurement. It's constrained by the speed of light and by intermediate infrastructure. A client claiming to be in Tampa but consistently showing an 80-millisecond baseline round trip to a US-East datacenter (versus the ~20 milliseconds a real Tampa client would show) is inconsistent with its claimed location.

Latency-based location inference is well-studied academically. Recent surveys of geolocation techniques document RTT-based systems that resolve to the country level from a small number of measurement vantage points [7]. In practice, corporate risk engines rarely rely on latency alone. But when a session is already flagged by another signal, latency shows up as corroboration in the incident write-up.

For home-IP relays specifically, the tunnel adds one hop, so latency to any destination is the latency from the traveller's location to the home router plus the latency from home to the destination. A traveller in Lisbon relaying through a Tampa home will show Lisbon-to-Tampa latency added to Tampa-to-anywhere latency. That's a real observable, though few enterprise risk engines are tuned to it.

Home-IP relay coverage Partial. The relay path adds a measurable latency floor. That's a theoretical exposure. In practice, corporate stacks that trigger on latency alone are rare.

The four fully-covered signals, closed at the router.

Signals 1 through 4 are network-layer problems solved by an IP-and-DNS anchor at the customer's home. Signals 5 and 6 stay with the device operator. HomeLink is the network-side half.

Start your free trial โ†’
Why "correlated" is worse than "detected"

Correlation Turns Weak Signals Into Strong Ones

Any one of the six signals in isolation is defensible. Two of them disagreeing is not.

A worker in Portugal whose only signal disagreement is a browser timezone can plausibly say they were on a video call for a client in Europe and updated their local clock. A worker whose browser timezone, resolver country, and Accept-Language header all disagree with their source IP has produced a correlation pattern with no innocent explanation.

This is the practical reason a home-IP relay is structured to unify Signals 1, 2, 3, and 4 in a single move. A partial fix creates a correlation, and the correlation is louder than any single signal would be. A consumer VPN that changes the source IP but doesn't cover the DNS resolver creates exactly this pattern.

A one-signal disagreement is a bug report. A three-signal disagreement is an incident ticket.

For a treatment of how these correlations show up in end-to-end enterprise workflows see how your IT department actually tracks you, and for the network-versus-behavioral split see the four-layer location bubble.

The rule that fires most often

Impossible-Travel Is A Signal-1 Rule

Nearly every "caught by MFA" outcome in the wild ties back to Impossible-Travel or a peer detection. All of them read from Signal 1.

Microsoft's Impossible Travel detection is the single most-cited enterprise rule for cross-border work catches. Its input is the source IP's geolocation, its history is the account's recent sign-ins, and its output is a risk score that identity providers use to escalate the sign-in [2].

Two properties of the rule get missed in most conversations. The rule fires on transitions, not steady state. A laptop in Portugal for three months that only ever signs in from a Portuguese IP never trips Impossible Travel. What trips it is a US sign-in at 9am and a Portuguese sign-in at 10am on the same account. And Microsoft explicitly acknowledges that VPN and anonymous-proxy exits with unclear geolocation can produce false negatives when both sign-ins come from those exits [2].

The practical upshot is that the highest-risk moment for a network-signal detection is the transition itself. A worker who opens Slack from a Lisbon airport hotel before their home-IP relay is fully up produces the exact fact pattern Impossible Travel is designed to catch. Two hours later, once traffic is routing through home, the flag has already been raised.

Coverage summary

What Each Mitigation Actually Covers

Different mitigations cover different signals. A consumer VPN and a home-IP relay are not doing the same job.

A consumer datacenter VPN changes Signal 1 (source IP) but frequently leaves Signal 2 (DNS) partially uncovered, definitely leaves Signal 3 (WebRTC) uncovered unless the browser is specifically configured, and is itself detected by Signal 4 (VPN endpoint blocklists). It provides no coverage of Signals 5 or 6.

A home-IP relay (a router at home and a paired router that travels) covers Signals 1 through 4 as a single unit, because it terminates the LAN traffic at a residential ISP-assigned IP that is not on any blocklist. It does not cover Signals 5 or 6.

Locking OS-level configuration (timezone, language, keyboard layout) covers Signal 5 partially. It does not touch any of the network signals.

Nothing touches Signal 6 (latency) other than the physics of where the traveller actually is. It's rarely the trigger in practice.

Related reading: why consumer meshes and VPNs behave differently, and home-IP relay versus consumer VPN, structural comparison.

The system that shows you're home.

One router stays home, one goes with you. Every device you connect to the travel router looks home. No apps, no toggles, no VPN.

Start your free trial โ†’

Sources

  1. MaxMind, GeoIP2 Accuracy. Documents ~99.8% country-level and ~80% city-level accuracy on residential-IP lookups from the current GeoIP2 database. support.maxmind.com
  2. Microsoft Learn, Microsoft Entra ID Protection risk-based detections. Describes the Impossible Travel detection rule and its handling of VPN and anonymous-proxy exits. learn.microsoft.com
  3. Cloudflare, 1.1.1.1 privacy and DNS-based leak vectors. Explains how default browser resolver behavior can leak the ISP's local resolver country independent of the primary tunnel. blog.cloudflare.com
  4. Surfshark, VPN leak research 2025. Estimates ~23% of consumer VPN sessions leak the underlying real public IP through WebRTC. surfshark.com
  5. "One Leak Will Sink a Ship: WebRTC IP Address Leaks," arXiv:1709.05395 (2017). Formalizes the WebRTC/STUN leak mechanism and measures its prevalence across browsers. arxiv.org/abs/1709.05395
  6. MaxMind, GeoIP2 Anonymous IP database. Product description of the commercial feed used by risk engines to flag hosting-provider, VPN-exit, and TOR-exit IP addresses. maxmind.com
  7. "A Survey on IP Geolocation Techniques," arXiv:1906.05856 (2019). Peer-reviewed survey covering latency and RTT-based geolocation methods and their published accuracy bounds. arxiv.org/abs/1906.05856