Passwortfreie-Infoseite: Unterschied zwischen den Versionen

Aus Weimarnetz Wiki
Zur Navigation springen Zur Suche springen
K (→‎Probleme: info speicherverbracuh)
Zeile 76: Zeile 76:
  
 
===Geplante Funktionen===
 
===Geplante Funktionen===
*IPs und Netzmasken auflisten
+
*schon integriert aber noch nicht auf dem Bild: Netzmasken+IPadressen LAN/WIFI,freemem,freedisk-speicher
 
*alle wege ins inet zeigen + ETX-Gesamtwerte dafuer aufsummieren
 
*alle wege ins inet zeigen + ETX-Gesamtwerte dafuer aufsummieren
 
*.ipk machen
 
*.ipk machen

Version vom 4. Januar 2006, 12:21 Uhr

Warum

Immerwieder hat man das Problem,das scheinbar ein Router falsch eingestellt ist,aber keine Kontaktmoeglichkeit zum Besitzer existiert. Um die Einstellungen auch ohne das Passwort zu kennen mal zu ueberpruefen wird eine neue Seite auf dem Webserver angelegt

Wie

  • auf dem Router wird eine Seite "/www/cgi-bin-info.html" angelegt.
  • in "/etc/init.d/S56saveklog" wird mit "dmesg >/tmp/dmesg.txt" der Kernellog direkt nach dem Routertstart gerettet
  • wegen
    • der besseren Uebersichtlichkeit
    • der einfacheren maschinellen Verarbeitung (Automatische Nodekarte!) und
    • der Kuerze
  • wird alles als reintext erzeugt (fast ohne HTML-Codes).

Lösung Programm

#!/bin/sh
echo "Content-type: text/html";echo;cat<<EOF
$(wl scan)<HTML><TITLE>$(nvram get wifi_ipaddr)/$(nvram get lan_ipaddr)</TITLE><BODY><PRE><b>WLAN</b>
$(a=$(wl noise | awk '{ print $3 }');b=$(wl rssi | awk '{ print $3 }');let c=b-a;echo SIGNALRAUSCHABSTAND: $c)
SSID: $(nvram get wl0_ssid)
$(echo KANAL/_real/mW/_real: $(nvram get wl0_channel)/$(wl assoc | grep Channel | awk '{ print $11 }')/$(
 nvram get ff_txpwr)/$(wl txpwr | awk '{ print $3 }'))
$(g="2";if [ "$(nvram get wl0_antdiv)" = "0" ];then g="L";fi
 if [ "$(nvram get wl0_antdiv)" = "1" ];then g="R";fi
  h="2";if [ "$(nvram get ff_txant)" = "0" ];then h="L";fi
 if [ "$(nvram get ff_txant)" = "1" ];then h="R";fi
  echo Empf/SendANT: $g/$h) 
$(h="BG";if [ "$(nvram get wl0_gmode)" = "0" ];then h="B";fi;if [ "$(nvram get wl0_gmode)" = "2" ];then h="G";fi
  echo MODE/_real: $h/$(if [ "$(wl assoc | grep "Supported" | awk '{ printf $15 }')" = "54" ]; then echo "G";else echo "B";fi))                                  
BASERATE: $(nvram get wl0_rateset)
RATE/_real: $(nvram get wl0_rate)/$(wl rate | awk '{ print $3 }')
CTS/BURST: $(nvram get wl0_gmode_protection)/$(nvram get wl0_frameburst)
FRAG/RTS/MTU: $(nvram get wl0_frag)/$(nvram get wl0_rts)/$(nvram get ff_mtu)
WEP/_real: $(nvram get wl0_wep)/$(if [ "$(wl assoc | grep WEP | awk '{ print $5 }')" = "WEP" ]; then echo "on";else echo "off";fi)
<b>KONTAKT</b>
MAIL: $(nvram get ff_adm_mail)
FON: $(nvram get ff_adm_tel)
ORT/GPSX/Y: $(nvram get ff_adm_loc)/$(nvram get gpsx)/$(nvram get gpsy)
<b>SYSTEM</b>
UP: $(cat /proc/uptime | awk '{ printf "%1.1f",$1/3600 }')h
vFFF/OLSRd: $(ipkg status | awk '{ if(index($0,"webadmin")>1) a++; if (a>0) {b++;if (b==4) print $2;break} }')/$(
 ipkg status | awk '{ if(index($0,"olsrd")>1) a++; if (a>0) {b++;if (b==5) print $2;break} }')
$(cat /tmp/dmesg.txt|awk '{ if($1=="CPU:"){printf $0;exit}}')$(cat /proc/loadavg|awk '{printf "/";printf "%3.0f",$3*100}';
 cat /proc/cpuinfo|awk '{ if($1=="cpu")printf "%% / "$4"-"$5;if($1=="BogoMIPS"){print " / "$3"bmips";exit}}')
BOARDrev/type/num/flags/2: $(nvram get boardrev|awk '{printf $0"/"}';
 nvram get boardtype|awk '{printf $0"/"}';
 nvram get boardnum|awk '{printf $0"/"}'; 
 nvram get boardflags|awk '{printf $0"/"}'; 
 nvram get boardflags2|awk '{printf $0}')
<b>OLSR</b>
$(cat /etc/olsrd.conf | awk '{ if($1=="LinkQualityWinSize") a=$2; if($1=="HelloInterval") b=$2
 if($1=="HelloValidityTime") {c=$2;d="!=";if (c-(a*b)==0) d="=";print "HEIn*WSize=HEVal?:",b" x "a,d,c;exit} }')
FILTER: $(nvram get ff_ign)
DHCP: $(nvram get ff_wldhcp)
HNA4: $(nvram get ff_hna4)
LQ: $(nvram get ff_lqmult)
PLUGIN: $(cat /etc/olsrd.conf | awk '{ if($1=="LoadPlugin") printf $2"/" }')
<b>CLIENTS</b>
$(cat /etc/resolv.conf | awk '{if($1=="nameserver")printf "DNSSERVER: "$2"/"}')$(
 cat /etc/dnsmasq.conf|awk -F "=" '{if(index($0,"server=")>0){print $2;exit}}')
$(cat /var/run/dhcp.leases | awk '{print $2,$3,$4}')
<b>INETGATES</b>
$(wget -O - http://127.0.0.1:8080/nodes|awk -F "<" '{if(substr($0,1,40)=="<tr><td>0.0.0.0</td><td>0.0.0.0</td><td>")print substr($7,4)}')
<b>ETX/NACHBARN</b>
$(wget -O - http://127.0.0.1:8080/nodes|awk '{if($0=="</table>")exit;a++;if(a>21){split($0,b,"</td><td>");
 c=substr(b[8],1,length(b[8])-10);if(c>99)c="99.99";printf "%5.2f ",c;print "-",b[2]}}'|sort)
<b>SIGNALRAUSCHABSTAND/SSID/KANAL</b>
$(wl scanresults|awk '{if($1=="SSID:")d=$2;a=index($0,"RSSI:");if(a>0){b=substr($0,a+6,3);c=substr($0,a+21,3);e=b-c;
 if(e<0)e=0;printf"%2.0f ",e;print d,substr($0,a+38)} }'|sort)
</HTML>
EOF

Lösung Browserausgabe

Die Ausgabe im Browser sieht dann so aus:
Infoseite-pwfrei.png

Geplante Funktionen

  • schon integriert aber noch nicht auf dem Bild: Netzmasken+IPadressen LAN/WIFI,freemem,freedisk-speicher
  • alle wege ins inet zeigen + ETX-Gesamtwerte dafuer aufsummieren
  • .ipk machen

Probleme

  • Probleme auf dem SE505,WAP54g etc. mit nur 8mb RAM
  • kurzzeitig hoher Speicherbedarf waehrend der Laufzeit (~600kb)
    • Loesung?

Kontakt

Wer machts? Der hier: fries43 16:07, 2. Jan 2006 (CET)