Einen Algorithmus oder eine kleine Bibliothek finden, die nun Stück für Stück alle Polygone von hier herunterlädt und prüft, ob die Koordinaten darin liegen. Falls ja muss die Kennzahl der Domäne bzw. des Polygons irgendwie an uns übermittelt werden. Das könnte z. B. über einen internen Dienst per Post oder Get erfolgen.
Warum auf den Knoten? Aus Datenschutzgründen soll nur die diskrete Information der Domäne übermittelt werden, nicht die exakten Koordinaten.
Das ganze sollte wenige KB brauchen, damit es als Paket auf die Router aufgespielt werden kann.
Wer hätte Lust sich mal damit auseinander zu setzen? Es kann auch gerne in Lua oder irgendwas anderem kleinen geschrieben sein. Hauptsache es passt auf einen 841er. Und da ist nur verdammt wenig Platz drauf.
Sollte es nicht ausreichen dafür zu sorgen, dass die Koordinaten nicht exakt sind? Also entweder man rundet ausreichend viel oder man sorgt durch die Verwendung einer zufälligen Komponente für eine Streuung über bsplw. mehrere hundert Meter.
Das reduziert zum einen die Komplexität auf den Knoten und hat zum anderen weniger Probleme auf Knoten mit einer „wackeligen“ Anbindung.
(Ich persönlich halte es für weitaus bedenklicher, dass Google dann weiß wo die Knoten stehen, als, dass wir wissen wo die Knoten stehen.)
Dachte mir, dass das vielleicht einfacher ist als C und ein Lua-Interpreter ist eh drauf. Es gibt auch eine kleine Bib für JSON und der Algorithmus, den Michael rausgesucht hatte, wird unter Lua genauso gut funktionieren. Einziges Risiko sind eventuell zu stark gerundete Gleitkommazahlen. Und ich weiß nicht, ob der Algorithmus mit Ringen klarkommt, also wenn innen noch was ausgeschnitten ist, wie es z. B. in der Domäne 01 der Fall ist. Letztendlich ist das aber egal. Wenn es einen Treffer für zwei Domänen bzw. Polygone gibt, wird man hoffentlich mit gesundem Menschenverstand sagen können, wo er hingehört.
@Fungur hat uns einen kleinen HTTP-auf-HTTPS-Proxy geschrieben und das Skript ist soweit fertig. Ich habe es gerade mal auf einem Knoten getestet:
root@Freifunk-AS40:/tmp# lua find_polygon.lua
51.9788721
7.4134594
Dieser Knoten liegt im Polygon domaene02.geojson.
Dieser Knoten liegt im Polygon domaene47.geojson.
Der Knoten steht in Havixbeck, die Ausgabe ist also korrekt.
Bleibt noch es richtig zu verpacken und per Cron ungefähr zweimal die Woche auszuführen. Vermutlich am Besten zu verschiedenen Zeiten, weil es so Helden gibt, de ihren Router nachts immer ausschalten.