mullvad-closest


Namemullvad-closest JSON
Version 0.0.3 PyPI version JSON
download
home_pagehttps://github.com/Ch00k/mullvad-closest
SummaryFind Mullvad servers with the lowest latency at your location
upload_time2023-07-09 20:28:35
maintainer
docs_urlNone
authorAndrii Yurchuk
requires_python
licenseUnlicense
keywords
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            # mullvad-closest

*mullvad-closest* helps pick a server that would have the lowest latency at (and would usually be the closest to) your
current location.

Your current location is taken from the response of https://am.i.mullvad.net/json (the API that powers
https://mullvad.net/check).

List of Mullvad servers is provided by `relays.json`, a file that is bundled with Mullvad application. Depending on your
platform, it can be found in the following locations on the filesystem:

- Linux: `/var/cache/mullvad-vpn/relays.json`
- macOS: `/Library/Caches/mullvad-vpn/relays.json`
- Windows: `C:\ProgramData\Mullvad VPN\cache\relays.json`

The distance between your location and a Mullvad server is the [geodesic
distance](https://en.wikipedia.org/wiki/Geodesics_on_an_ellipsoid) in kilometers. By default only the servers within 500
km are shown.

The latency is the result of one ICMP request sent to the server's IP address.

## Installation

Install with [pipx](https://github.com/pypa/pipx):

```
$ pipx install mullvad-closest
```

## Usage
```
$ mullvad-closest --help
Usage: mullvad-closest [OPTIONS]

Options:
  -s, --server-type [openvpn|wireguard]
                                  Only show servers of a particular type
  -m, --max-distance INTEGER      Only show servers within this distance from myself  [default: 500]
  --help                          Show this message and exit.
```

Find all WireGuard servers within 300 kilometers:

```
$ mullvad-closest --max-distance 300 --server-type wireguard
Country      City        Type       IP              Hostname         Distance    Latency
-----------  ----------  ---------  --------------  -------------  ----------  ---------
Netherlands  Amsterdam   wireguard  193.32.249.70   nl-ams-wg-005     31.3219    18.8773
Netherlands  Amsterdam   wireguard  193.32.249.69   nl-ams-wg-004     31.3219    18.9524
Netherlands  Amsterdam   wireguard  193.32.249.66   nl-ams-wg-001     31.3219    20.0162
Netherlands  Amsterdam   wireguard  169.150.196.15  nl-ams-wg-202     31.3219    21.9269
Netherlands  Amsterdam   wireguard  185.65.134.83   nl-ams-wg-003     31.3219    22.2118
Netherlands  Amsterdam   wireguard  169.150.196.28  nl-ams-wg-203     31.3219    22.5372
Netherlands  Amsterdam   wireguard  169.150.196.2   nl-ams-wg-201     31.3219    22.8589
Netherlands  Amsterdam   wireguard  185.65.134.86   nl-ams-wg-006     31.3219    22.8741
Netherlands  Amsterdam   wireguard  185.65.134.82   nl-ams-wg-002     31.3219    22.9678
Germany      Dusseldorf  wireguard  185.254.75.5    de-dus-wg-003    150.785     24.272
Germany      Dusseldorf  wireguard  185.254.75.3    de-dus-wg-001    150.785     24.287
Luxembourg   Luxembourg  wireguard  92.223.89.181   lu-lux-wg-001    285.289     24.3261
Luxembourg   Luxembourg  wireguard  92.223.89.165   lu-lux-wg-002    285.289     24.3518
Germany      Dusseldorf  wireguard  185.254.75.4    de-dus-wg-002    150.785     25.2352
Belgium      Brussels    wireguard  91.90.123.2     be-bru-wg-101    149.609     25.6422
Netherlands  Amsterdam   wireguard  92.60.40.209    nl-ams-wg-102     31.3219    25.7621
Netherlands  Amsterdam   wireguard  92.60.40.239    nl-ams-wg-104     31.3219    26.2949
Netherlands  Amsterdam   wireguard  92.60.40.194    nl-ams-wg-101     31.3219    26.3009
Netherlands  Amsterdam   wireguard  92.60.40.224    nl-ams-wg-103     31.3219    26.3679
Belgium      Brussels    wireguard  194.110.115.34  be-bru-wg-102    149.609     28.5451
Belgium      Brussels    wireguard  194.110.115.2   be-bru-wg-103    149.609     28.6839

```

            

Raw data

            {
    "_id": null,
    "home_page": "https://github.com/Ch00k/mullvad-closest",
    "name": "mullvad-closest",
    "maintainer": "",
    "docs_url": null,
    "requires_python": "",
    "maintainer_email": "",
    "keywords": "",
    "author": "Andrii Yurchuk",
    "author_email": "ay@mntw.re",
    "download_url": "https://files.pythonhosted.org/packages/8b/9a/995d24a0729c67bf19328c27d4814200071b61c4df7e4a4bb5b848470162/mullvad-closest-0.0.3.tar.gz",
    "platform": null,
    "description": "# mullvad-closest\n\n*mullvad-closest* helps pick a server that would have the lowest latency at (and would usually be the closest to) your\ncurrent location.\n\nYour current location is taken from the response of https://am.i.mullvad.net/json (the API that powers\nhttps://mullvad.net/check).\n\nList of Mullvad servers is provided by `relays.json`, a file that is bundled with Mullvad application. Depending on your\nplatform, it can be found in the following locations on the filesystem:\n\n- Linux: `/var/cache/mullvad-vpn/relays.json`\n- macOS: `/Library/Caches/mullvad-vpn/relays.json`\n- Windows: `C:\\ProgramData\\Mullvad VPN\\cache\\relays.json`\n\nThe distance between your location and a Mullvad server is the [geodesic\ndistance](https://en.wikipedia.org/wiki/Geodesics_on_an_ellipsoid) in kilometers. By default only the servers within 500\nkm are shown.\n\nThe latency is the result of one ICMP request sent to the server's IP address.\n\n## Installation\n\nInstall with [pipx](https://github.com/pypa/pipx):\n\n```\n$ pipx install mullvad-closest\n```\n\n## Usage\n```\n$ mullvad-closest --help\nUsage: mullvad-closest [OPTIONS]\n\nOptions:\n  -s, --server-type [openvpn|wireguard]\n                                  Only show servers of a particular type\n  -m, --max-distance INTEGER      Only show servers within this distance from myself  [default: 500]\n  --help                          Show this message and exit.\n```\n\nFind all WireGuard servers within 300 kilometers:\n\n```\n$ mullvad-closest --max-distance 300 --server-type wireguard\nCountry      City        Type       IP              Hostname         Distance    Latency\n-----------  ----------  ---------  --------------  -------------  ----------  ---------\nNetherlands  Amsterdam   wireguard  193.32.249.70   nl-ams-wg-005     31.3219    18.8773\nNetherlands  Amsterdam   wireguard  193.32.249.69   nl-ams-wg-004     31.3219    18.9524\nNetherlands  Amsterdam   wireguard  193.32.249.66   nl-ams-wg-001     31.3219    20.0162\nNetherlands  Amsterdam   wireguard  169.150.196.15  nl-ams-wg-202     31.3219    21.9269\nNetherlands  Amsterdam   wireguard  185.65.134.83   nl-ams-wg-003     31.3219    22.2118\nNetherlands  Amsterdam   wireguard  169.150.196.28  nl-ams-wg-203     31.3219    22.5372\nNetherlands  Amsterdam   wireguard  169.150.196.2   nl-ams-wg-201     31.3219    22.8589\nNetherlands  Amsterdam   wireguard  185.65.134.86   nl-ams-wg-006     31.3219    22.8741\nNetherlands  Amsterdam   wireguard  185.65.134.82   nl-ams-wg-002     31.3219    22.9678\nGermany      Dusseldorf  wireguard  185.254.75.5    de-dus-wg-003    150.785     24.272\nGermany      Dusseldorf  wireguard  185.254.75.3    de-dus-wg-001    150.785     24.287\nLuxembourg   Luxembourg  wireguard  92.223.89.181   lu-lux-wg-001    285.289     24.3261\nLuxembourg   Luxembourg  wireguard  92.223.89.165   lu-lux-wg-002    285.289     24.3518\nGermany      Dusseldorf  wireguard  185.254.75.4    de-dus-wg-002    150.785     25.2352\nBelgium      Brussels    wireguard  91.90.123.2     be-bru-wg-101    149.609     25.6422\nNetherlands  Amsterdam   wireguard  92.60.40.209    nl-ams-wg-102     31.3219    25.7621\nNetherlands  Amsterdam   wireguard  92.60.40.239    nl-ams-wg-104     31.3219    26.2949\nNetherlands  Amsterdam   wireguard  92.60.40.194    nl-ams-wg-101     31.3219    26.3009\nNetherlands  Amsterdam   wireguard  92.60.40.224    nl-ams-wg-103     31.3219    26.3679\nBelgium      Brussels    wireguard  194.110.115.34  be-bru-wg-102    149.609     28.5451\nBelgium      Brussels    wireguard  194.110.115.2   be-bru-wg-103    149.609     28.6839\n\n```\n",
    "bugtrack_url": null,
    "license": "Unlicense",
    "summary": "Find Mullvad servers with the lowest latency at your location",
    "version": "0.0.3",
    "project_urls": {
        "Homepage": "https://github.com/Ch00k/mullvad-closest"
    },
    "split_keywords": [],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "8b9a995d24a0729c67bf19328c27d4814200071b61c4df7e4a4bb5b848470162",
                "md5": "5e6b6a6ffd304753e25af9c5f6aa70d4",
                "sha256": "0c14aa85b92769ecca48146608af7e0dd799e048c0884a535ecce88a4c86d012"
            },
            "downloads": -1,
            "filename": "mullvad-closest-0.0.3.tar.gz",
            "has_sig": false,
            "md5_digest": "5e6b6a6ffd304753e25af9c5f6aa70d4",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": null,
            "size": 5811,
            "upload_time": "2023-07-09T20:28:35",
            "upload_time_iso_8601": "2023-07-09T20:28:35.966498Z",
            "url": "https://files.pythonhosted.org/packages/8b/9a/995d24a0729c67bf19328c27d4814200071b61c4df7e4a4bb5b848470162/mullvad-closest-0.0.3.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2023-07-09 20:28:35",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "Ch00k",
    "github_project": "mullvad-closest",
    "travis_ci": false,
    "coveralls": false,
    "github_actions": false,
    "requirements": [],
    "lcname": "mullvad-closest"
}
        
Elapsed time: 0.10242s