Skip to content

Comparison

The address and what follows it

Changing where a connection comes out is the easy half. The hard half is that a site reads the country from that address and compares it with the clock and the language the browser reports, so the eight usual approaches are set here on that axis.

What an exit address decides

An exit address is not one answer. A site reads the address, the country looked up from it, and the time and language the browser volunteers on its own.

An address with no clock and no language behind it is worse than no address at all. A German exit that reports Tokyo time describes a person nobody has met.

  • The address

    Where the connection comes out, and the only part a proxy changes.

  • The country read from it

    Looked up from public registries, without anyone asking you.

  • The clock

    The time zone the browser reports, compared against that country.

  • The language list

    What the browser asks pages for, sent on every request.

Eight ways on one axis

Rows are the approaches, columns the questions this axis asks. A dash means the approach does not do that thing, not that it does it badly.

The last row is ours. Every cell in it comes from the launch path, and the files behind it are named at the bottom.

How the exit is setReach of one settingClock and language followSeparate exits at once
Ordinary browser, as it isThrough the system settingsEvery tab at onceOne
Incognito windowWhatever the browser around it usesEvery tab at onceOne
Browser profiles or containersShared with the browser around themEvery tab at onceOne
Spoofing extensionThrough the browser's own proxy settingEvery tab at onceDeclared in the page, after the startOne
VPNOne tunnel for the machineEvery application on the machineOne at a time
Virtual machine per accountSet inside the guest systemThat guest systemBy hand, inside the guestOne per machine you run
Separate device per accountIts own line or SIMThat deviceBy hand, on the deviceOne per device
Browser with the engine patchedA proxy attached to the profileThat profile aloneFor countries in its listOne per open profile

How the country is found

The app asks geolocation services through the proxy being measured rather than from your own connection. Asking any other way would measure the wrong machine.

The services are asked in turn and the first answer that parses is taken. That is a first answer rather than an agreed one, and it decides the clock.

  • Through the proxy

    The request leaves by the route the profile is about to use.

  • Over an encrypted connection

    A plain request could be rewritten on the way and name a false country.

  • Several services

    One busy service answering with a refusal must not decide an identity.

  • Remembered once

    The answer is kept on the profile and reused until the address changes.

One rule for every scheme

The proxy reaches the browser as one address, not as a rule for one kind of traffic. A rule written for plain traffic leaves secure traffic going out directly, and that is nearly all of it.

A proxy that is configured but cannot become a usable rule stops the launch. Leaving through your own address while the screen says otherwise is what this product exists to prevent.

  • One line, every scheme

    The same address applies to plain and to secure traffic.

  • No password on the command line

    Credentials travel through a bridge on this machine instead.

  • No side route around it

    Direct peer connections outside the proxy are switched off at launch.

  • An exit over your own server

    A tunnel is raised first, and a tunnel that fails ends in a refusal.

What the clock is built from

The country becomes a time zone and a list of languages from one table, and the first language in it is the one the browser names as its own. Both travel with the profile, in what a page reads and in the headers it never sees.

A few large countries keep a short list of zones of their own, and for those the zone is drawn from the profile's own seed. A hundred profiles on American addresses would otherwise share one clock and link themselves by it.

When the country stays unknown

A proxy whose country cannot be read leaves the profile without a matching clock, and the app says so instead of starting quietly. The country is not remembered and the next launch asks again. A country the table does not cover is the quieter case: no warning is raised, and the clock stays the one the fingerprint drew.

What this comparison does not claim

  • It does not claim that an exit address hides who you are. It moves where the connection appears to come from, and what you type and post stays yours.
  • It does not come with addresses. Until you attach a proxy, a profile leaves through your own connection.
  • It does not claim the clock follows the city or covers every country. The zone comes from the country, and outside the app's own table the profile keeps the clock its fingerprint drew.
  • It does not claim the country can never be wrong. It comes from outside services, and a service that answers wrongly makes the clock wrong too.
  • It does not measure other tools. The rows say what each kind of approach can do by its nature, and only the last row comes from code we can open.

How to check

Each line names the file that decides the behaviour and, where there is one, the stand that fails the build when it stops being true.

The exit country is asked through the proxy itself, encrypted, services in turn
apps/desktop/src/lib/exitGeo.js · apps/desktop/test/exit-geo.js
One proxy rule covers every scheme, plain and secure alike
apps/desktop/src/main/main.js · apps/desktop/test/proxy-covers-https.js
The clock and the language list are built from the exit country
packages/shared/src/index.js · apps/desktop/test/fingerprint-card-matches.js
An exit over your own server raises a tunnel first, and a failed tunnel refuses the launch
apps/desktop/src/lib/sshTunnel.js · apps/desktop/test/выход-по-ssh.js

Questions

Why ask the country through the proxy instead of from a server?
Because the question is what the world sees at the far end of that route. A server of ours would report the country of our own machine.
What happens when two services disagree?
They are asked in turn and the first answer that parses wins, so the later ones are never asked. An answer with no country in it is discarded.
Does the proxy cover secure traffic as well?
Yes. The address goes to the browser as one rule covering every scheme, and the stand builds that rule with the launch code rather than reading a setting.
Does my whole machine go through it?
No. Only that profile takes that route, so your mail client and your other windows keep your own connection. For the whole machine, that is what a VPN is for.

What your browser reveals about its route

The leak check reads what leaves your browser past the proxy and sends nothing anywhere.