[Berlin-wireless] olsrinfo scripts, olsr monitoring - was: Scan-Tool fuer Arme

Marco Tidow martidow
So Feb 5 19:43:05 CET 2006


On Thu, Oct.13. 02:57 +0200, Marco Tidow wrote:
> stattdessen könnten die link-quality Werte des OLSR-daemons stations- resp.
> verbindungs-bezogene info für die Antennen-Justierung liefern.
> Ist bloß mühsam, jedesmal den button auf der Statusseite zu drücken, und
> die richtige Zeile wiederzufinden.

moinmoin @all,

ist zwar schon etwas her aber nicht vergessen.
das erwähnte script war schon im Oktober anhand eines test-dumps des httpinfo-moduls
(Danke, Marek!) schnell gefixt;  ein "n" hat gefehlt, hatte aber noch eins im Regal.

Da es in der Zwischenzeit (der noch "vor-fisheye inkl. httpinfo-Modul-fixed" Phase)
eben mit dem httpinfo regelmäßig trouble bis hin zum Abschmieren des olsrd-daemons
gab', wollte ich das "olsrinfo" script, das auf httpinfo aufsetzt, nicht in Umlauf
bringen.  Mittlerweile und seit gestern auch mit einem "user-inface" versehen, habe
ich das Zeug mal als beta auf einigen nodes abgelegt, s.u.

U.a. die Darstellung der "neighbour-hood", also 2-hops info und die
 "olsrd-kernel routes" fehlen noch, ansonsten ist's schon brauchbar.


Worum es hier geht :-)

Wenn man auf dem Dach mit beiden Händen an einer Antenne zerrt, dabei die
httpinfo-page per web-browser abrufen will, fehlt irgendwie die dritte Hand.
Hinzu kommt, das es bei >200 Knoten doch etwas mühsam wird, gezielt die LQX eines
bestimmten links wiederzufinden, man verbiegt sich die Sehorgane.

"olsrinfo" ist ein shell-tool, das die Info's (Linkquality, Topology, etc.) der
httpinfo-Seite in der Text-console darstellt, ggfs. im monitor-modus zyklisch
alle paar Sekunden aktualisiert, und dabei erlaubt, gezielt die LQ, MID, HNA
usw. Einträge bestimmter nodes oder node-Gruppen nach IP-Adresse(n)
herauszufiltern.

Beispielsweise:

  aktuelle Link-info (LQX) aller lokalen links anzeigen:

    olsrinfo -L

  dasselbe, zyklisch nach 6 Sekunden wiederholen (zum Antennen-tuning):

    olsrinfo -L -s 6

  nochmal, diesmal alle außer HDL etc.

    olsrinfo -L -s 6  -n 104.0.

  oder nur den zu Rapuncell

    olsrinfo -L -s 6  104.129.29.29

oder

  alle httpinfo-Einträge anzeigen, in denen BLO nodes oder eastland erwähnt werden :

    olsrinfo '.132.24.' '.131.0.'

  alle HNA's (lokal + remote);       dito, aber nur die default-gateways

    olsrinfo -H ;                    olsrinfo -H 0.0.0.0

  alle "Identitäten" (MID's, interfaces) der node 104.129.29.29 :

    olsrinfo -M 104.129.29.29

usw.

Standardmäßig wird die info vom localhost abgerufen,
per
    "-r <ip>"       oder
    "-r <hostname>"

geht's auch von anderen, sofern deren access-rights im olsrd dies gestatten;
typischerweise sollte es aber aus dem LAN heraus klappen (von unix-Rechnern aus,
sofern wget + (g)awk installeriert sind und /bin/sh eine Bourne-artige shell ist)
(getestet mit bash/GAWK auf debian-GNU/Linux)


Zum Test derzeit zu beziehen/auf FF-routern oder Linux zu installieren geht via:

  wget -O - http://104.130.1.14/olsrinfo-0.04.tar.gz |tar -xpzvf - -C /
  wget -O - http://104.132.24.1/olsrinfo-0.04.tar.gz |tar -xpzvf - -C /
  wget -O - http://104.132.24.3/olsrinfo-0.04.tar.gz |tar -xpzvf - -C /


per "olsrinfo -h" gibt's die auch unten drangehängte online-help.

Auf alten, pre-1.1 FFF bzw. pre-fisheye-1.0.x greift lokal ggfs. ein simpler test
und verhindert bei >150 Einträgen in der routing-table das Abrufen vom httpinfo;
der Test funktioniert allerdings nicht remote, man sollte also vorher wissen,
ob der betreffende Knoten die Abfrage "aushält".  Anders gesagt, auf nodes mit
einem zu altem olsrd, die mehr oder weniger connect zu den größeren Funk-Wolken
in F'hain, HSH/WS etc. haben, ist olsrinfo i.d.R. nutzlos, ein update zumindest
des olsrd dringend angesagt.  Immerhin birgt mit zu altem olsrd auch jede manuelle
(lokal+remote) Abfrage der httpinfo-page via web-browser die Option, den olsrd
abzuschießen...

ipk wird gebaut, sobald genannte Teile ebenfalls drin sind,

vV, marco


P.S. (wenn das Interesse besteht) wie und wo legt man sowas am Besten auf
     "olsrexperiment.de" ab?


snapshot der inline-help:
----------------------------------------------------------------------------
~# olsrinfo -h
-- olsrinfo 0.04 (mt - martidow at web dot de)-- usage:
  olsrinfo [-r <hostname> ] [ -s <sleep-sec> ] [-L|-T|-H|-M|-N|-c]
           [[-n] ipv4glob [...]]|[-e awk-regexp]

  -r : fetch httpinfo (port 8080) from hostname (default: localhost)
  -s : monitor-(loop-)mode, sleep after each run
  -{L,T,H,M,N} : show only Links, Topology, HNA, MID, Neighbour sections
                 (default: all)
  filter output (default: show all entries if no pattern given)
   -by "ipv4glob-pattern" : like  IPv4 ~ (pos || ...) && not (neg || ...)
      write glob-pattern as
        104.130.1.14  : exact ip mentioned
        104.130.      : any ip in 104.130.0.0/16
        104.130.1.1?  : ip´s like 104.130.1.10 ... 104.130.1.19
        104.129.29.*  : any ip in 104.129.29.0/24
        104.130.*.1*  : ip´s like 104.130.x.1  104.130.y.14 104.130.z.123
        .1.14         : any ip ending as ~
        .131.11.      : any ip matching 2nd and 3rd octed
        .11.*         : any ip containing ".11." in 3rd octet
        .11.*.*       : any ip containing ".11." in 2nd octet
   -else, if "-e" w/ single argument given
      take arg literal as AWK-regexp pattern to match IPv4-addr´s
    !!! if using patterns, do not forget to enclose patterns in single-quotes
        (tick-characters) each,  to protect against shell´s own expansion !!!


_______________________________________________
Berlin mailing list
Berlin at olsrexperiment.de
https://www.olsrexperiment.de/cgi-bin/mailman/listinfo/berlin





Mehr Informationen über die Mailingliste Berlin