Änderungen

Zur Navigation springen Zur Suche springen
2.708 Bytes hinzugefügt ,  15:42, 25. Jul. 2007
K
Zeile 9: Zeile 9:  
** Bandbreite anstatt ETX-Wert visualisieren
 
** Bandbreite anstatt ETX-Wert visualisieren
 
** GPS-Daten miteinbeziehen
 
** GPS-Daten miteinbeziehen
 +
* Zum ausprobieren: http://entoro.homelinux.net/cgi-bin-map
 
<pre>
 
<pre>
 
#!/bin/sh
 
#!/bin/sh
Zeile 40: Zeile 41:  
   }}
 
   }}
 
   if($2=="Topology")s=1}END{print "}"}'
 
   if($2=="Topology")s=1}END{print "}"}'
 +
</pre>
 +
 +
===Massenmail aus Registrierung verschicken===
 +
* erstmal datei mit allen mails erzeugen, doppelte werden aussortiert
 +
<pre>
 +
cd /tmp
 +
awk '{printf("\n%s\n%s\n%s\n%s",$3,$5,$7,$9)}' /www/cgi-bin/registrator-db1.txt >email-adr-db1.txt
 +
awk '{printf("\n%s\n%s\n%s\n%s",$3,$5,$7,$9)}' /www/cgi-bin/registrator-db2.txt >email-adr-db2.txt
 +
awk '{printf("\n%s\n%s\n%s\n%s",$3,$5,$7,$9)}' /www/cgi-bin/registrator-db3.txt >email-adr-db3.txt
 +
cat email-adr-db1.txt email-adr-db2.txt email-adr-db3.txt | sort -n | uniq >email.txt
 +
* nun mails verschicken
 +
 
</pre>
 
</pre>
   Zeile 59: Zeile 72:  
===Bandbreite zu einem beliebigen Nachbarn feststellen===
 
===Bandbreite zu einem beliebigen Nachbarn feststellen===
 
* speichern als <tt>/www/cgi-bin-speed</tt> und einfach mal aufrufen
 
* speichern als <tt>/www/cgi-bin-speed</tt> und einfach mal aufrufen
 +
* test unter: http://entoro.homelinux.net/cgi-bin-speed
 
<pre>
 
<pre>
 
#!/bin/sh
 
#!/bin/sh
Zeile 68: Zeile 82:  
         echo "cgi-bin-speed            - diese Anleitung"
 
         echo "cgi-bin-speed            - diese Anleitung"
 
         echo "cgi-bin-speed?n          - OLSR-Nachbarn anzeigen"
 
         echo "cgi-bin-speed?n          - OLSR-Nachbarn anzeigen"
         echo "cgi-bin-speed?n=10.1.2.3  - Testdownload zu diesem Nachbarn"
+
         echo "cgi-bin-speed?n=10.1.2.3  - 10-Sekunden-Testdownload von diesem Nachbarn"
 
         echo "cgi-bin-speed?r          - Ausgabe der bisher generierten Resultate"
 
         echo "cgi-bin-speed?r          - Ausgabe der bisher generierten Resultate"
 +
        echo "cgi-bin-speed?s          - Quellcode anzeigen"
 
         echo
 
         echo
         echo "\$VER 0.1 - 2006okt7 - bastian bittorf - weimarnetz.de"
+
         echo "\$VER 0.2 - 2006nov10 - bastian bittorf - weimarnetz.de"
 
         exit
 
         exit
 +
fi
 +
 +
if [ "$QUERY_STRING" = "s" ]
 +
then
 +
cat $0
 +
exit
 
fi
 
fi
   Zeile 82: Zeile 103:  
         exit
 
         exit
 
fi
 
fi
 +
 +
WIFI_IP=$(nvram get wifi_ipaddr)
    
if [ "$QUERY_STRING" = "n" ]
 
if [ "$QUERY_STRING" = "n" ]
 
         then
 
         then
        WIFI_IP=$(nvram get wifi_ipaddr)
+
         wget -O - http://127.0.0.1:2006/neighbours|grep $WIFI_IP|grep "0.00"
         wget -O - http://127.0.0.1:2006/neighbours|grep $WIFI_IP
   
         exit
 
         exit
 
fi
 
fi
    
IFS=\&;set ${QUERY_STRING%%[^%&=+-:@-_a-z~]*};unset IFS;eval $*
 
IFS=\&;set ${QUERY_STRING%%[^%&=+-:@-_a-z~]*};unset IFS;eval $*
WIFI_IP=$(nvram get wifi_ipaddr)
+
WIFI_IF=$(nvram get wifi_ifname)
 +
 
 +
test -z $METRIK1 && METRIK1=$(ip route|grep "$n dev $WIFI_IF  scope"|cut -d' ' -f9)
 +
test -z $METRIK1 && METRIK1=$(ip route|grep "$n"|cut -d' ' -f8)
    
iptables -I INPUT -p tcp -s $n -d $WIFI_IP --sport 80 -j ACCEPT
 
iptables -I INPUT -p tcp -s $n -d $WIFI_IP --sport 80 -j ACCEPT
Zeile 98: Zeile 123:  
killall wget
 
killall wget
   −
ERGEBNIS=$(iptables -nxvL INPUT|grep $WIFI_IP)
+
test -z $METRIK2 && METRIK2=$(ip route|grep "$n dev eth1  scope"|cut -d' ' -f9)
 +
test -z $METRIK2 && METRIK2=$(ip route|grep "$n"|cut -d' ' -f8)
 +
 
 +
RAW="$(iptables -nxvL INPUT|grep $WIFI_IP)"
 +
KB=$(echo $RAW|while read A B A;do let d=B/10/1024;echo $d;done)
 +
ERGEBNIS="$KB $METRIK1 $METRIK2 $RAW"
 
iptables -D INPUT -p tcp -s $n -d $WIFI_IP --sport 80 -j ACCEPT
 
iptables -D INPUT -p tcp -s $n -d $WIFI_IP --sport 80 -j ACCEPT
 +
 +
echo "Kilobyte/s | Metrik vorher | nachher | Pakete | Bytes | Testnachbar | Testrouter - 10 Sekunden Testdownload"
 +
echo
 
echo "$ERGEBNIS"
 
echo "$ERGEBNIS"
 
echo >>$FILE "$ERGEBNIS"
 
echo >>$FILE "$ERGEBNIS"
Zeile 114: Zeile 147:  
</pre>
 
</pre>
   −
===M18 Webcam zum laufen bekommen====
+
===M18 Webcam zum laufen bekommen===
    
modprobe spca5xx
 
modprobe spca5xx
 
/var/www/webcam.sh
 
/var/www/webcam.sh
 +
 +
===NVRAM-Befehl auf Fonera nachbilden / nvram wrapper bzw. simulator===
 +
* am besten nach <tt>/usr/sbin/nvram</tt> kopieren und mit <tt>chmod 777 nvram</tt> ausfuehrbar machen
 +
 +
<pre>
 +
#!/bin/sh
 +
 +
FILE="/etc/init.d/nvram-variablen-simulation.txt"
 +
TEMP="/etc/init.d/nvram-variablen-simulation.txt2"
 +
 +
if [ "$1" = "get" ]
 +
then             
 +
grep $2"=" $FILE|sed "s/$2=//;s/\"//;s/[\"]*$//"
 +
exit           
 +
fi 
 +
 +
if [ "$1" = "set" ]
 +
then             
 +
grep -v $2"=" $FILE >$TEMP
 +
cat  >$FILE $TEMP       
 +
NEWSTRING=$(echo $2|sed 's/=/="/')
 +
echo >>$FILE $NEWSTRING"\""     
 +
exit                     
 +
fi 
 +
 +
if [ "$1" = "show" ]
 +
then             
 +
cat $FILE
 +
exit   
 +
fi 
 +
 +
if [ "$1" = "commit" ]
 +
then               
 +
echo "nvram_commit(): start"
 +
sleep 1                   
 +
echo "nvram_commit(): end"
 +
exit                     
 +
fi
 +
</pre>
    
===Dienst aus dem internen Kabelnetz auf den Dachrouter forwarden===
 
===Dienst aus dem internen Kabelnetz auf den Dachrouter forwarden===
Zeile 127: Zeile 199:     
iptables -t nat -I PREROUTING -p tcp --dport $PORT -i $IEXT -j DNAT --to $ZIEL:$PORT
 
iptables -t nat -I PREROUTING -p tcp --dport $PORT -i $IEXT -j DNAT --to $ZIEL:$PORT
 +
</pre>
 +
 +
===OLSR-Traffic (nur drahtlos) messen===
 +
<pre>
 +
eval $(netparam)
 +
 +
iptables -I INPUT  -p udp -i $WIFIDEV --dport 698 -j ACCEPT
 +
iptables -I OUTPUT -p udp -o $WIFIDEV --sport 698 -j ACCEPT
 +
 +
OLSR_REIN=$(iptables -nxvL INPUT |sed -e '/udp dpt:698/!d'|while read A B A;do echo $B;done)
 +
OLSR_RAUS=$(iptables -nxvL OUTPUT|sed -e '/udp spt:698/!d'|while read A B A;do echo $B;done)
 +
 +
echo $OLSR_REIN
 +
echo $OLSR_RAUS
 
</pre>
 
</pre>
   Zeile 212: Zeile 298:     
===MAC-Adressenliste im ganzen Netz aktualisieren:===
 
===MAC-Adressenliste im ganzen Netz aktualisieren:===
 +
 +
<pre>
 +
ALT:
 
awk 'BEGIN{for(;c<249;){c++;system("wget -O - http://10.63."c".1/cgi-bin-info.html?b")}}'
 
awk 'BEGIN{for(;c<249;){c++;system("wget -O - http://10.63."c".1/cgi-bin-info.html?b")}}'
 +
 +
NEU:
 +
awk 'BEGIN{for(;c<249;){c++;system("wget -qO - http://10.63."c".1/cgi-bin-info.html?b=10.63.41.1")}}'
 +
</pre>
    
===von allen Routern im Netz den Hardwareindex-zeigen:===
 
===von allen Routern im Netz den Hardwareindex-zeigen:===
Zeile 221: Zeile 314:     
===von allen routern im netz mac adressen einsammeln -klauschweine===
 
===von allen routern im netz mac adressen einsammeln -klauschweine===
 +
 
<pre>
 
<pre>
for I in $(ip route|awk '{if(substr($0,1,5)=="10.63")print $1}'|grep -v /);do echo $I;wget -O - http://$I/cgi-bin-info.html?h|grep perm_ether;done
+
for I in $(ip route|awk '{if(substr($0,1,5)=="10.63")print $1}'|grep -v /);do echo $I;wget -q -O - http://$I/cgi-bin-status.html|awk >/tmp/macs.txt -v i=$I '/MAC/{print substr($0,11,17),i;exit}';done
 
  −
und ordnen:
  −
 
  −
awk '/x/ {print $4,$1}' macs.txt|sort
   
</pre>
 
</pre>
  

Navigationsmenü