Files
MeWeb/README.md
T
thepraandClaude Opus 5.5 aa031c6012
Build / Desktop, server and tools (push) Successful in 1m4s
Release / Every platform, the server, the release (push) Successful in 21m49s
"me-web?" 0.11.0: the name of the block your address belongs to
- The provider card now shows the address block your connection belongs to, as the RIPE Database names it, for
  example "MOBILE-USERS-BLOCK (IT)" on Iliad mobile or "FASTWEB-L3-PAT_NAT (IT)" on a Fastweb shared address. The
  path shows it under your provider too.
- No block is left out: the server keeps every block in the RIPE Database, small and unique ones included, and tells
  the app the block of the address it sees, never anyone else's. The app also carries about 430,000 of the larger
  blocks, for when the server can't be reached.
- Only each block's range, name and country are used, nothing about people. The data comes from the RIPE NCC's RIPE
  Database, used with the RIPE NCC's permission; it may lag behind the live database, and the "What this app
  contacts" sheet gives its date.
- The privacy page says that the server's answer now includes that block name; nothing new is stored or sent.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_012CzABvBkbcFqoHdmi8b9WB
2026-10-16 18:10:19 +02:00

100 lines
6.2 KiB
Markdown

# “me-web?”
**Can you run your own server from here?** “me-web?” checks your connection and your device and tells you, in plain
words, what you could host at home, what stands in the way, and what would fix it.
> Status: early development.
## What it checks
“me-web?” draws the path from this device to the internet one step at a time (this device, your router, any shared
exit of your provider, your provider, the internet), with the details it found for each, and groups what it checks
under the step it concerns:
- whether you are online, or behind a login page;
- how this device is connected, and the address your router gave it;
- your public IPv4 and IPv6 addresses, and which device holds them;
- your provider, found offline in a built-in map, with what is usual for it (shared IPv4, an address of your own,
IPv6, the mail port) and the source and date of each note;
- whether your router answers apps that ask it to open ports (UPnP, NAT-PMP, PCP), and which internet address it has;
- whether your provider shares your public IPv4 address with other customers (CGNAT) or there is a second router
in the way;
- how your router translates addresses for calls and games (easy or hard NAT), with two STUN servers, and how it
hands out ports, whether two devices behind it can reach each other, and how long it keeps an unused connection
open; behind a provider's shared address, how many customers may share it;
- on mobile data, the operator and the type of network (5G, 4G), read from the phone itself;
- only if you agree: whether the outside world can actually reach this device, over IPv4 and IPv6, with the ports
opened by your router for ten minutes and closed afterwards, and whether your own public address works from home
(hairpin);
- whether this connection can send mail directly: port 25, the reverse name (PTR) and the blocklists, asked through
your own name server;
- whether your name server checks signatures (DNSSEC) and answers honestly for names that don't exist;
- the speed and the round-trip time to the publisher's server, and whether this device makes a sensible server;
- which networks your provider reaches the internet through, and, with the test from outside, the route from the
publisher's server back to your address;
- how your public address has changed across your earlier checks.
It ends with what that means: a website, reaching home from outside, family photos and files, a game or voice
server, a fediverse or blog server, a mail server — possible, possible with a workaround (and which), or can't tell.
At the end you can choose to share your findings, after reading exactly what is sent, to improve the notes on
providers; you can delete them from the app at any time, and they are deleted after twelve months
(<https://meweb.arasaka.software/privacy>).
Planned: the builds for Mac announced once they have been tried on a real Mac.
## Platforms
Linux (deb, rpm), Windows, macOS and Android. Builds are published as releases of this repository.
## Privacy
“me-web?” sends nothing anywhere unless a check needs it, and lists every host it contacts ("What this app contacts"
in the app). It has no telemetry, no analytics and no crash reporting. Your checks are kept on your device only,
unless you choose to share them.
## Verifying the Android app
The APK is signed with the key whose certificate SHA-256 is
`5f:52:cf:f4:f5:2f:4e:0b:6d:a6:cd:04:4b:fc:ea:f7:8d:1d:42:db:24:f2:47:06:02:db:7f:19:cb:fd:f8:46`
(`apksigner verify --print-certs MeWeb-<version>-android.apk`). Every release also carries `SHA256SUMS.txt`.
## Credits
- Network data, refreshed on the publisher's server and embedded in every release (the release notes carry each
source's date and SHA-256):
- provider map: [iptoasn.com](https://iptoasn.com), Public Domain Dedication and License (PDDL 1.0);
- network names: IP to ASN Lite by [DB-IP](https://db-ip.com), Creative Commons Attribution 4.0 (CC BY 4.0);
- which networks each provider reaches the internet through: [RouteViews](https://www.routeviews.org), University
of Oregon, CC BY 4.0, from eight of its route collectors (Oregon, Ashburn, London, São Paulo, Johannesburg, Dubai,
Singapore, Sydney), so that each region of the world has its own view; only each network's most frequent
neighbours are kept. "With contributions from network operators and volunteers all over the world, RouteViews
collects BGP data by direct peering at Internet Exchange Points (IXPs) or multi-hop peering. Data are archived and
made publicly available for download at archive.routeviews.org, lg.routeviews.org, and api.routeviews.org.";
- mobile operators by network code: the Android Open Source Project's carrier list, Apache License 2.0;
- the name of the block of addresses a connection belongs to: the [RIPE Database](https://www.ripe.net/manage-ips-and-asns/db/)
of the RIPE NCC, used with the RIPE NCC's permission (16 October 2026) on condition that it is never put behind
a paywall or used to make money. Only each block's range, name and country are kept, nothing about people. The
apps carry every block of at least 2,048 IPv4 addresses or a /40 in IPv6, and the smaller ones, down to 256
addresses or a /48, whose name recurs; the server keeps every block and tells each app only the block of the
address it sees. The
data may lag behind the live database; the release notes give its date.
- Provider notes: each operator's own technical sheet (AGCOM 156/23 in Italy) and users' reports on
[FibraClick](https://forum.fibra.click), each cited in `data/isps/`; and, for any country, totals from findings
people chose to share (`data/observed.json`), published only after a person has reviewed them and only where at
least five different networks of a provider agree four times in five.
- Icons: [Lucide](https://lucide.dev), ISC licence.
- Typeface: Inter, SIL Open Font License.
## Building
See `CLAUDE.md`. .NET 10, Avalonia 12.
## Licence
GNU Affero General Public License v3.0 (`LICENSE`). © 2026 Arasaka di Hvozdikov Yevheniy.
Translations other than English and Italian are machine drafts until someone reviews them. Corrections are welcome
as issues on this repository. Nauruan and Palauan are missing: no draft good enough to ship could be written, and a
speaker's help would put them in.