The checks engine, the path and the cards: me-web? 0.1 reads the connection
MeWeb.Core runs seven checks concurrently and reports each as it settles:
online or behind a login page, this connection, the public IPv4 and IPv6
seen from v4./v6.meweb, the provider from a built-in map, the router
(UPnP IGD, NAT-PMP and PCP, read-only), address sharing (router WAN
against the echo, TTL hops only as a hint), and the history kept on the
device. The app draws the path from this device to the internet and lights
it node by node, with a card per check and a sheet listing every host it
contacts.
The provider map is iptoasn's table compressed to 2.1 MB by
tools/knowledge.cs and built before every app release; eleven Italian
provider profiles carry each fact with who said it, the source and the
month. The server gains a download page (en, it) and /download/{platform}
from the latest Gitea release.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_012CzABvBkbcFqoHdmi8b9WB
This commit is contained in:
1 parent
16a1cecaae
commit
0dffbc27d6
61 files changed
+3750
-149
No files matched your search
@@ -3,21 +3,25 @@
|
||||
**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 (0.1). Nothing is released yet.
|
||||
> Status: early development. Version 0.1 is the first release.
|
||||
|
||||
## What it checks
|
||||
|
||||
- whether you are online, or behind a login page;
|
||||
- your public address, and whether your provider shares it with other customers (CGNAT) or puts more than one
|
||||
router between you and the internet;
|
||||
- whether your router lets an app open a port, and whether the outside world can actually reach you, over IPv4 and
|
||||
IPv6;
|
||||
- whether you can send mail directly, whether your address is on a residential blocklist, and what its reverse name
|
||||
says;
|
||||
- your DNS, your speed, and whether this device is a sensible server.
|
||||
Version 0.1 checks, and draws as a path from this device to the internet:
|
||||
|
||||
Each check ends with what it means: a website at home, reaching home from outside, a mail server, a game server,
|
||||
family photos and files — possible, possible with a workaround, or not possible from here.
|
||||
- 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 public address has changed across your earlier checks.
|
||||
|
||||
Planned for later versions, not in 0.1: whether the outside world can actually reach you, over IPv4 and IPv6; the
|
||||
kind of NAT; sending mail, residential blocklists and the reverse name; DNS; speed; whether this device is a sensible
|
||||
server; and sharing your findings to improve the provider map.
|
||||
|
||||
## Platforms
|
||||
|
||||
@@ -25,9 +29,8 @@ Linux (deb, rpm), Windows, macOS and Android. Builds are published as releases o
|
||||
|
||||
## Privacy
|
||||
|
||||
me-web? sends nothing anywhere unless a check needs it, and lists every host it contacts. It has no telemetry. At
|
||||
the end you can choose to share your findings to improve the next release's map of providers; you see exactly
|
||||
what is sent first, and you can delete it afterwards.
|
||||
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.
|
||||
|
||||
## Verifying the Android app
|
||||
|
||||
@@ -35,6 +38,15 @@ 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
|
||||
|
||||
- Provider map: [iptoasn.com](https://iptoasn.com), Public Domain Dedication and License (PDDL 1.0), fetched for
|
||||
every release; the release notes carry its date and SHA-256.
|
||||
- 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/`.
|
||||
- Icons: [Lucide](https://lucide.dev), ISC licence.
|
||||
- Typeface: Inter, SIL Open Font License.
|
||||
|
||||
## Building
|
||||
|
||||
See `CLAUDE.md`. .NET 10, Avalonia 12.
|
||||
|
||||
Reference in new issue
Block a user