Services/Organisation/BaseMap: Unterschied zwischen den Versionen

Aus FunkFeuer Wiki
Zur Navigation springen Zur Suche springen
 
(3 dazwischenliegende Versionen von 2 Benutzern werden nicht angezeigt)
Zeile 21: Zeile 21:
==== Aufbereitung der Map-Daten ====
==== Aufbereitung der Map-Daten ====
Die Datenquelle für die Map liefert data.php: es verschneidet die OLSR-Topologie vom lokal laufenden olsrd (txtinfo-plugin) und verschneidet vorkommende IP-Adressen mit den Redeemer-Daten.  
Die Datenquelle für die Map liefert data.php: es verschneidet die OLSR-Topologie vom lokal laufenden olsrd (txtinfo-plugin) und verschneidet vorkommende IP-Adressen mit den Redeemer-Daten.  
Zusätzlich beachtet werden Einstellungen in config.mine.php (IP-Autologin, Definition Tunnel-Knoten, Ignorieren von Tunnellinks z.B. für Roofnodes) und [[#MapSpecialConfig|MapSpecialConfig]].


===== URL-Parameter von data.php =====
===== URL-Parameter von data.php =====
Zeile 26: Zeile 28:


* https://map.funkfeuer.at/wien/data.php?format=xml (default)
* https://map.funkfeuer.at/wien/data.php?format=xml (default)
* https://map.funkfeuer.at/wien/data.php?format=ip6
* https://map.funkfeuer.at/wien/data.php?format=kml
* https://map.funkfeuer.at/wien/data.php?format=nodeids
* https://map.funkfeuer.at/wien/data.php?format=ip6 liefert node/device/ip6/ip6type/nodeid
* https://map.funkfeuer.at/wien/data.php?format=nodeids liefert nodeid/lat/lon/nodename/status/ips|names von map-deaktivierten Knoten
* https://map.funkfeuer.at/wien/data.php?format=nodecsv liefert lat/lon/knoten_namen/status von Knoten mit validen Geokoordinaten, ohne Potential-Nodes
* https://map.funkfeuer.at/wien/data.php?format=visjs
* https://map.funkfeuer.at/wien/data.php?format=debug


==== Darstellung der Map ====
==== Darstellung der Map ====
Zeile 34: Zeile 40:
* Box "Nodes"
* Box "Nodes"
** "Link dieser Ansicht" öffnet ein Popup mit URI zum Kopieren. Aufruf dieser URI sollte die aktuelle Ansicht wiederherstellen: Zoomlevel, MapType, Location
** "Link dieser Ansicht" öffnet ein Popup mit URI zum Kopieren. Aufruf dieser URI sollte die aktuelle Ansicht wiederherstellen: Zoomlevel, MapType, Location
** Anzahl Nodes gesammt, Anzahl Nodes online (=zumindest eine aktive IP auf einem Node)  
** Download KML: Ermöglicht den Datenexport z.B. zum Öffnen in Google Earth
** Anzahl Nodes gesamt, Anzahl Nodes online (=zumindest eine aktive IP auf einem Node)  
** Liste der Nodes - entspricht der Auswahl aus der Box "Ansicht" und/oder dem Suchfeld. Ein Klick auf den Nodennamen scrollt an dessen Position und öffnet die InfoBox des Nodes
** Liste der Nodes - entspricht der Auswahl aus der Box "Ansicht" und/oder dem Suchfeld. Ein Klick auf den Nodennamen scrollt an dessen Position und öffnet die InfoBox des Nodes
** Suchfeld: Suche nach Nodenamen oder Node-ID
** Suchfeld: Suche nach Nodenamen oder Node-ID
Zeile 57: Zeile 64:


Zusätzlich zu den Node-Farben laut Box "Ansicht" können aktive Knoten folgende Farben haben:
Zusätzlich zu den Node-Farben laut Box "Ansicht" können aktive Knoten folgende Farben haben:
* grün: aktiver Knoten, der laut MapSpecialConfig als 5ghz-Node definiert ist. Seit 5ghz im Mesh quasi-standard ist, sind die Roofnode-Knoten als grüne Nodes verzeichnet, um diese schnell zu erkennenb
* grün: aktiver Knoten, der laut MapSpecialConfig als 5ghz-Node definiert ist. Seit 5ghz im Mesh quasi-standard ist, sind die Roofnode-Knoten als grüne Nodes verzeichnet, um diese schnell zu erkennen
* blau: Knoten mit aktivem OpenVPN-Link zum Tunnelserver
* blau: Knoten mit aktivem OpenVPN-Link zum Tunnelserver


Zeile 78: Zeile 85:
* Knotentyp: normal, 5ghz (grün), tunnel (blau)
* Knotentyp: normal, 5ghz (grün), tunnel (blau)
* Geokoordinaten
* Geokoordinaten
* Inhaber, Adresse des Inhaber-Users, e-Mailadresse
* Inhaber, Adresse des Inhaber-Users, E-Mail-Adresse
* Technischer Kontakt, e-Mailadresse
* Technischer Kontakt, E-Mail-Adresse


====== Devices ======
====== Devices ======
Zeile 103: Zeile 110:
** erstellt: datum
** erstellt: datum
** HNA: diese IP wird auf einem anderen Knoten als HNA angekündigt
** HNA: diese IP wird auf einem anderen Knoten als HNA angekündigt
* eventuelles Warnsymbol <!>: die IP und MID/HNA gehören zu unterschieldichen Knoten!
* eventuelles Warnsymbol <!>: die IP und MID/HNA gehören zu unterschiedichen Knoten!
* von einem olsr-Router abhängige Devices werden eingerückt:
* von einem olsr-Router abhängige Devices werden eingerückt:
** MID: die IP wird vom oslrd-Router auf einem sekundären Interface verwendet, für das olsr ebenfalls aktiv ist
** MID: die IP wird vom oslrd-Router auf einem sekundären Interface verwendet, für das olsr ebenfalls aktiv ist

Aktuelle Version vom 16. Juli 2020, 08:10 Uhr

Beschreibung

Die BaseMap war lange Zeit die Map des Funknetzes unter map.funkfeuer.at/wien. Diese Map zeigt nur IPv4-Adressen und olsrd(v1) Topologie. 4in6-IPv4-Adressen aus dem v642-Konzept (werden über olsrd2/IPv6 geroutet) zeigt die Map bei den zugeordneten Knoten nur an. Die nötigen Daten werden aus der Postgres-Datenbank des Redeemers und einer lokal laufenden olsrd-Instanz geholt und miteinander verschnitten. Die Darstellung erfolgt auf einer GoogleMaps Karte und ist in JavaScript umgesetzt.

Gehostet wird der Webservice im Rechnenzentrum von Nessus.

Maintainer

Funktionen

Login

Ohne Login kann die Map nur anonymisierte Knoten ohne IP-Adressen darstellen, deren Geokoordinaten sind gerastert/gerundet.

Ohne Login und aufgerufen von einer FunkFeuer-IP-Adresse kann man die exakten Locations der Knoten sehen und auch die Funktion "Show all Links" aktivieren. Ein Textbaustein "precise locations on" signalisiert diesen Zustand in der Login-Box.

Erst nach einem Login mit einem gültigem Redeemer-User können die kompletten Daten eingesehen werden, darunter Knotennamen und Inhaber/Betreiber-Kontaktdaten und IP-Adressen.

Mittels der Checkbox "Remember" bei den Login-Feldern kann der Login für 30 Tage über ein Browsercookie "behalten" werden. Bei jedem Map-Besuch fängt dieser 30-Tage-Zähler neu an. Ohne dieser Funktion wird der Login nach dem Auslaufen der Session innerhalb von 24min verworfen. Durch Ausloggen wird auch der AutoLogin im betroffenen Browser wieder verworfen. Eine Änderung des Redeemer-Passworts macht alle vorhandenen AutoLogin-Cookies ungültig.

Aufbereitung der Map-Daten

Die Datenquelle für die Map liefert data.php: es verschneidet die OLSR-Topologie vom lokal laufenden olsrd (txtinfo-plugin) und verschneidet vorkommende IP-Adressen mit den Redeemer-Daten.

Zusätzlich beachtet werden Einstellungen in config.mine.php (IP-Autologin, Definition Tunnel-Knoten, Ignorieren von Tunnellinks z.B. für Roofnodes) und MapSpecialConfig.

URL-Parameter von data.php

data.php kann auch als API für andere Dienste genutzt werden, sofern der Request mittels Login authorisiert ist. Über den url-parameter "format" kann der Output gewählt werden:

Darstellung der Map

  • Mögliche Ansichten: GoogleMaps -> Terrain (default), Roadmap, Satellite, Hybrid
  • Google Places Searchbox erlaubt schnelles Finden von Orten, Strassen, POIs
  • Box "Nodes"
    • "Link dieser Ansicht" öffnet ein Popup mit URI zum Kopieren. Aufruf dieser URI sollte die aktuelle Ansicht wiederherstellen: Zoomlevel, MapType, Location
    • Download KML: Ermöglicht den Datenexport z.B. zum Öffnen in Google Earth
    • Anzahl Nodes gesamt, Anzahl Nodes online (=zumindest eine aktive IP auf einem Node)
    • Liste der Nodes - entspricht der Auswahl aus der Box "Ansicht" und/oder dem Suchfeld. Ein Klick auf den Nodennamen scrollt an dessen Position und öffnet die InfoBox des Nodes
    • Suchfeld: Suche nach Nodenamen oder Node-ID
    • Daten neu laden: aktualisiert die Datenbasis aus OLSR und Redeemer
  • Box "Ansicht"
    • Filtern die gezeigten Nodes nach
      • Aktive (Nodes mit mindestens einer aktiven IP-Adresse)
      • Inaktive (Nodes, deren IP-Adressen alle offline sind, jedoch früher mal zumindest eine davon aktiv war)
      • Im Aufbau (Nodes, deren IP-Adressen alle offline sind und keine IP seit deren Anlage beim Node jemals aktiv war)
      • Interessiert (Nodes ohne angelegte IP-Adresse)
    • Zeige Speziallinks: ein/ausblenden der statisch verwalteten Links (siehe MapSpecialConfig)
    • Zeige alle Links: ein/ausblenden aller aktiven Verbindungen. Tunnel-Links werden in diesem Fall nicht gezeigt.
    • Zeige Nodenamen: ein/ausblenden der Nodenamen unterhalb der Marker ab einem gewissen Zoomlevel
    • Link threshold: blendet Links mit ETX schlechter als dieser Wert aus
  • Mausoptionen
    • Node hinzufügen
    • Messwerkzeig
Nodes

Die Map zeigt nur Knoten, die im Redeemer für die Map aktiviert sind und valide Geokoordinaten haben.

Zusätzlich zu den Node-Farben laut Box "Ansicht" können aktive Knoten folgende Farben haben:

  • grün: aktiver Knoten, der laut MapSpecialConfig als 5ghz-Node definiert ist. Seit 5ghz im Mesh quasi-standard ist, sind die Roofnode-Knoten als grüne Nodes verzeichnet, um diese schnell zu erkennen
  • blau: Knoten mit aktivem OpenVPN-Link zum Tunnelserver

Node-Marker werden in 3 unterschiedliche Größen dargestellt, um die Bedeutung im Mesh anhand der Anzahl aktiver, nodeübergreifender OLSR-Links zu zeigen. Je größer, desto mehr Nchbarn hat der Node:

  • klein: Knoten mit nur 1 (einen) oder keinem aktiven Link zu einem anderen Knoten
  • mittel: Konten mit 2 bis 4 Nachbarn
  • gross: Knoten mit 5 oder mehr Nachbarknoten

Bei überlappenden Nodemarkern werden aktive Knoten vor inaktiven gezeigt, kleinere vor größeren - um eine bestmögliche Klickbarkeit zu erlauben.

Bei MouseOver zu einem Nodemarker wird dessen Name (oder ohne Login: dessen NodeID) angezeigt und dessen Links eingeblendet.

Bei Klick auf einen Nodemarker öffnet sich dessen InfoBox. Es ist immer nur eine InfoBox gleichzeitig offen.

Node-InfoBox
  • Name (inkl. Link zur Mapansicht dieses Nodes)
  • Link zum Smokeping (falls für den Node zumindest bei einem Device aktiviert)
  • NodeID in dezimal (z.B. fürs Ableiten des Management-Netzwerks) und hexadezimal (z.B. fürs Ableiten des IPv6-Prefixes für den Userblock dieses Knotens)
  • Knotentyp: normal, 5ghz (grün), tunnel (blau)
  • Geokoordinaten
  • Inhaber, Adresse des Inhaber-Users, E-Mail-Adresse
  • Technischer Kontakt, E-Mail-Adresse
Devices

Devices (Anzahl aller registrierten IPv4-Adressen)

  • farbige Statusbox, signalisiert den Onlinezustand
    • grün: online - olsrd aktiv und verbunden
    • grün-hell: MID eines aktiven olsrd
    • grün-gelb: HNA eines aktiven olsrd
    • gelb: HNA subnet eines aktiven olsrd
    • orange: online ohne olsrd, ohne HNA, ohne MID
    • gelb: unbekannte HNA oder HNA als Subnet
    • rot: nicht erreichbar
    • grau: bisher nie online gewesen
  • Device-Name
    • MouseOver beschränkt die Links auf der Map auf jene dieses olsrd Routers
    • MouseOver zeigt die IP-Adresse des Devices als Title
    • Klick öffnet die URL laut FQDN
  • Hinweis in Klammern
    • online: olsrd aktiv und verbunden
    • Datum mit Uhrzeit: IP war zu diesem Zeitpunkt zuletzt erreichbar
    • Datum ohne Uhrzeit: IP ist nicht (mehr) erreichbar, am angegebenen Tag wurde diese IP als HNA angekündigt
    • erstellt: datum
    • HNA: diese IP wird auf einem anderen Knoten als HNA angekündigt
  • eventuelles Warnsymbol <!>: die IP und MID/HNA gehören zu unterschiedichen Knoten!
  • von einem olsr-Router abhängige Devices werden eingerückt:
    • MID: die IP wird vom oslrd-Router auf einem sekundären Interface verwendet, für das olsr ebenfalls aktiv ist
    • HNA: die IP wird vom olsrd-Router als Hostroute angekündigt.
    • HNA (gelb): die IP ist Teil eines angekündigten Subnets (nur /28 bis /31 werden aufgelöst)
    • >: IP gehört zum oberhalb genannten HNA-Subnet.
Links

Links werden gezählt:

  • Total: von jedem lokalen olsrd-Router zu jedem olsrd-Router eines Nachbarknotens
  • Nodes: von diesem Knoten zu einem Nachbarknoten
  • Knoteninterne Links werden nicht mitgezählt und auch nicht in der Map dargestellt.

Pro olsrd aktivem Device wird angezeigt:

  • Name des lokalen olsr Devices
  • in Klammer: Anzahl der Links zu Nachbarknoten-Devices
  • verlinktes Nachbarknoten-Device
    • MouseOver lässt den Link in der Map blinken
    • klick springt zum betroffenen Nachbarknoten und öffnet dessen InfoBox
  • ETX Costs numerisch und als farbige Box


Node hinzufügen

Wenn dieses Tool ausgewählt wurde, wird bei einem Klick auf die Map ein neuer Marker hinzugefügt. An dieser Position kann dann mittels "neuen Node registrieren..." einen neuen Konten im Redeemer erstellen: nötig ist nur nochmals der Redeemer-Login und der Knotenname.

Nach erfolgreichem Abspeichern wird die Anzeige von Knoten im Status "Interessiert" aktiviert und die Mapdaten neu geladen, sodass der neue Node sichtbar wird.

Messwerkzeug

Mittels zwei freien Klicks in die Map kann zwischen den zwei Positionen die Distanz und Windrichtung (in Grad und als Kürzel) dargestellt werden.

Doppelklick auf einen der beiden Mess-Marker entfernt die Anzeige und macht eine neuerliche Messung möglich.

URL-Parameter der BaseMap

MapSpecialConfig

Einige Zustände, die für die Darstellung relevant sind, können aus der Topologie nicht erkannt werden. Folgende Wiki-Page wird in der Datenaufbereitung für die Map als Spezial-Steuerung abgerufen: Regionen/Wien/MapSpecialConfig

Abhängigkeiten

Die Datenquelle der Map wird auch von anderen Applikationen genutzt.