Offene Methodik

Was wir messen.
Und was nicht.

Netzsperre Check untersucht DNS-Antworten in Schweizer Zugangsnetzen. Hier ist der gesamte Weg erklärt – von den amtlichen Sperrlisten über die App bis zur öffentlichen Statistik.

Das System

Drei Teile, ein nachvollziehbarer Datenfluss

Die App misst im Netz der Nutzerin oder des Nutzers. Das Backend prüft und speichert die Resultate. Die Webseite fasst sie zusammen, ohne aus einer einzelnen Messung voreilige Schlüsse zu ziehen.

01

App

Lädt Sperrlisten, erkennt den Anschlussprovider, beobachtet den DNS-Pfad und prüft jede eindeutige Domain.

02

Backend

Validiert den vollständigen Prüflauf und speichert ihn atomar in Netlify Blobs.

03

Webseite

Zeigt Sperrquoten, Providervergleiche, Listenwerte und abweichende DNS-Antworten.

Schritt für Schritt

So läuft eine vollständige Messung ab

  1. 1

    Daten synchronisieren

    Die App lädt die aktuellen Gespa- und ESBK-Listen sowie die ASN-Zuordnung der Internetanbieter aus Netlify Blobs. Ohne vollständige Daten startet kein Prüflauf.

  2. 2

    Verbindung prüfen

    Vor dem Test kontrolliert die App, ob sich das Gerät über eine Schweizer Verbindung im Internet befindet und ob ein System-Proxy aktiv ist. Ein abweichender Relay- oder DNS-Dienst wird im anschliessenden DNS-Dienst-Check erkannt. Ungeeignete Verbindungen starten keine Messung.

  3. 3

    Provider über ASN bestimmen

    Die ASN der öffentlichen Verbindung wird exakt einem hinterlegten Internetanbieter zugeordnet. Unbekannte ASN werden nicht automatisch in die verifizierte Statistik aufgenommen.

  4. 4

    DNS-Dienst bestätigen

    Die Messung verwendet immer die vom System vorgegebene DNS-Auflösung. Eine unabhängige Erkennung prüft unmittelbar vor und nach dem Lauf, ob der beobachtete DNS-Dienst zum Anschlussprovider gehört und unverändert bleibt. Öffentliche DNS-Dienste oder eindeutig erkanntes Private Relay führen zu keinem gültigen Providerresultat.

  5. 5

    Sperrmuster lernen

    Engine v5 fragt A in zufälligen Blöcken ab, bis ein Sperrmuster 500 unterschiedliche Domains erreicht. Als Muster kommen wiederkehrende Sperr-IPs, CNAME-Ziele, NXDOMAIN, NODATA oder REFUSED infrage. Erst dann beginnt die gezielte AAAA-Prüfung.

  6. 6

    Listen zusammenführen

    Gespa- und ESBK-Einträge werden nach normalisierter Domain gruppiert und zufällig sortiert. Eine Domain, die auf beiden Listen steht, erzeugt nur eine DNS-Abfrage; das Resultat wird danach beiden amtlichen Einträgen zugeordnet.

  7. 7

    A zuerst, AAAA gezielt

    Liefert A eine normale Ziel-IP, ist der Eintrag nicht gesperrt und AAAA wird nicht mehr benötigt. Bei erkanntem A-Sperrmuster oder einer nicht eindeutigen A-Antwort wird AAAA geprüft. «Gesperrt» gilt, wenn beide geprüften Familien ein Sperrmuster zeigen; A-Sperrmuster plus endgültiger AAAA-TIMEOUT gilt ebenfalls als gesperrt.

  8. 8

    DNS-Kanäle schonen

    Öffentliche DNS-Server verwenden je fünf Kanäle mit fünf parallelen Abfragen und 20 ms Abstand. Lokale Router-Forwarder verwenden je drei Kanäle mit drei parallelen Abfragen und 59 ms Abstand. Jeder Kanal wird nach seinem Limit geleert, 1,5 Sekunden pausiert und neu aufgebaut.

  9. 9

    Netzwerk stabil halten

    Die App überwacht den Netzwerkpfad laufend. Interfacewechsel, Verlust der Verbindung oder eine relevante IPv4-/IPv6-Änderung brechen sämtliche DNS-Abfragen ab und verwerfen den Run.

  10. 10

    Vollständig speichern

    Bei einem manuellen Lauf bleiben die Domainresultate bis zum Ende lokal und temporär. Hintergrundläufe dürfen im lokalen App-Speicher einen netzwerkgebundenen Checkpoint halten. An das Backend wird in beiden Fällen erst nach vollständiger Messung und abschliessender DNS-Dienst-Prüfung genau ein gültiger Run übertragen; Teilresultate gelangen nicht in die Statistik.

  11. 11

    Statistik aktualisieren

    Nur der erfolgreich gespeicherte vollständige Run erscheint in Statistik, Providervergleich und Domainhistorie.

iOS und Android

Was die Checker-App übernimmt

Teststart

Die App kontrolliert Land und Proxy, ordnet die Verbindung über die ASN einem Provider zu und bestätigt dessen DNS-Dienst.

Sperrmuster

Sie erkennt IPv4- und IPv6-Sperrziele getrennt und wertet zusätzliche DNS-Sperrsignale aus.

Messung

Sie fragt ausschliesslich den System-DNS ab, gruppiert doppelte Domains und führt bis zu drei DNS-Durchgänge mit adaptiver Parallelität aus.

Übertragung

Sie sendet genau einen vollständig validierbaren Run und kann dessen Upload bei einem Fehler erneut versuchen.

Aktuell verfügbar: iOS und Android

Manuelle Engine-v5-Prüfungen stehen auf iPhone und Android zur Verfügung. Netzwerkhistorie, Hintergrund-Checkpoints und Benachrichtigungen sind derzeit iOS-Funktionen. macOS und watchOS sind für spätere Releases vorgesehen.

Was während des Laufs sichtbar ist

  • Fortschritt nach eindeutigen Domains
  • aktueller Durchgang, Parallelität und Zeitlimit
  • Anzahl der DNS-Abfragen je Durchgang
  • stärkstes erkanntes A- und AAAA-Sperrmuster
  • Resultate «Gesperrt» und «Nicht gesperrt»
  • Status der vollständigen Blob-Speicherung

Auswertung

Wie die Webseite die Messdaten darstellt

Die öffentliche Webseite zeigt keine Live-Abfrage einer einzelnen Domain. Sie bereitet bereits gespeicherte App-Messungen auf und trennt Übersicht, Statistik und Administration.

BereichAufgabeDatengrundlage
ÜbersichtZeigt Gesamtzahlen, letzten Messzeitpunkt und einen kompakten Providervergleich.Aggregierte Prüfläufe
StatistikBerechnet Sperrquote, Verteilung, Provider- und Listenvergleich sowie aktuelle Läufe.App-Prüfläufe und Listenwertungen
EinzelprüfungenZeigt nicht gesperrte Domains kompakt, alphabetisch und mit Sperrdatum; ein CSV-Download ist verfügbar.Bereinigte Einzelresultate
DatenverwaltungErlaubt der Administration, Provider, Listenstände und vollständige Runs zu kontrollieren.Netlify Blobs

Die Statistik berücksichtigt ausschliesslich vollständige und vom Backend unterstützte Engine-Runs. Abgebrochene, unvollständige oder nicht zweifelsfrei einem Provider-DNS zuordenbare Messungen werden nicht eingemischt.

Datensparsamkeit

Welche Daten gespeichert werden

Pro Prüflauf

  • zufällige Lauf- und pseudonyme Client-ID
  • Provider, ASN, Plattform und App-Version
  • maskierte öffentliche IP
  • DNS-Dienst und ASN am Anfang und Ende
  • verwendete System-DNS-Serveradressen
  • erkannte A-/AAAA-Sperrmuster
  • DNS-Health, Abfragezahlen und Parallelitätsverlauf
  • Start- und Endzeitpunkt

Pro eindeutiger URL

  • Zugehörigkeit zu Gespa, ESBK oder beiden
  • gemeinsames Endresultat
  • A- und AAAA-Status
  • zurückgegebene IP-Adressen
  • gemessene Antwortzeit
  • abschliessender DNS-Durchgang
Nicht Bestandteil der Messung

Es werden keine gesperrten Websites geöffnet und keine Seiteninhalte übertragen. Die öffentliche IP dient der ASN-Erkennung und wird ausschliesslich maskiert gespeichert: IPv4 als /24, IPv6 als /48.

Einordnung

Was die Resultate bedeuten

Gesperrt
A und AAAA zeigen je ein verifiziertes Sperrmuster – oder A zeigt ein verifiziertes Sperrmuster und AAAA endet nach allen Wiederholungen mit TIMEOUT.
Nicht gesperrt
Mindestens eine massgebende Antwort zeigt kein verifiziertes Sperrmuster, beispielsweise eine reale IP. Ausnahme: A zeigt ein Sperrmuster und AAAA endet mit TIMEOUT.

Am Ende gibt es genau zwei URL-Resultate. Der genaue DNS-Status bleibt separat für A und AAAA im Run erhalten.

Transparenz

Was eine Messung nicht beweist

  • Momentaufnahme: Ein Resultat beschreibt den DNS-Zustand des gemessenen Anschlusses zu einem bestimmten Zeitpunkt.
  • DNS, nicht Erreichbarkeit: Eine abweichende Antwort bedeutet nicht automatisch, dass eine Website über jeden technischen Weg erreichbar ist.
  • Providerinterne Unterschiede: Resolver, Regionen und Anschlussarten desselben Providers können unterschiedliche Resultate liefern.
  • Keine Rechtsbewertung: Die Messung zeigt technische Antworten. Sie beurteilt weder die Rechtmässigkeit einer Sperre noch den Inhalt einer Domain.
  • Sperrmuster: Antworten unterhalb der Schwelle von 500 unterschiedlichen Domains werden nicht als verifiziertes Sperrmuster behandelt.