Freifunk: Unterschied zwischen den Versionen

Aus d0b
Zur Navigation springenZur Suche springen
 
(18 dazwischenliegende Versionen desselben Benutzers werden nicht angezeigt)
Zeile 1: Zeile 1:
 +
[[Kategorie:Software]]
 +
[[Kategorie:Reallife]]
 +
[[Kategorie:Freifunk]]
 +
 +
[[Freifunk Mitmachseite]]
 +
 
== Node Shell Zeug ==  
 
== Node Shell Zeug ==  
 
Vorraussetzung für folgende Befehle sind eine Verbindung mit dem KBU Freifunk Netz sowie ein Terminal / Shell.  
 
Vorraussetzung für folgende Befehle sind eine Verbindung mit dem KBU Freifunk Netz sowie ein Terminal / Shell.  
 +
Vergesst nicht eth0 gegen die Bezeichnung eures Netzwerkinterfaces, welches am Freifunk hängt zu tauschen.
 +
Bei Macbooks via Wlan z.B. "en1" statt "eth0"!
  
 
IPv6 ping
 
IPv6 ping
 
<pre>
 
<pre>
ping6 <link local adress des node>
+
ping6 <link local adress des node>%eth0
 
</pre>
 
</pre>
  
Zeile 10: Zeile 18:
 
<pre>
 
<pre>
 
ssh root@<link local adress des node>%eth0
 
ssh root@<link local adress des node>%eth0
 +
</pre>
 +
 +
Firmware upgrade bei node mit uplink
 +
 +
<pre>
 +
ssh root@<link local adress des node>%eth0              // SSH Verbindung zum Node aufbauen
 +
cd ../tmp/                                              // in das Verzeichnis "tmp" wechseln
 +
free                                                    // Freien Speicher prüfen
 +
wget http://pfad/zur/firmware.bin                      // Firmware herunterladen oder
 +
sysupgrade -v firmware.bin                              // Firmwareupgrade durchführen
 +
</pre>
 +
 +
Firmware upgrade bei node ohne uplink
 +
<pre>
 +
scp -6 -v -r firmware.bin root@\[<linkloc%eth0\]:../tmp/ // Firmware auf den node schieben (md5 checken!)
 +
ssh root@<link local adress des node>%eth0
 +
cd ../tmp/ 
 +
sysupgrade -v firmware.bin 
 
</pre>
 
</pre>
  
Zeile 26: Zeile 52:
  
 
=== LAN Kopplung ===
 
=== LAN Kopplung ===
Hier wird über die alle 4 LAN Ports gemeshed, Mesh über WLAN ist aus! Folgende Config stammt von rampone/FF-KBU und wurde an 2 TL-WR841N v.8 getestet.
+
==== TL-WR841ND ====
 +
03/2014: Hier wird über die alle 4 LAN Ports gemeshed, Mesh über WLAN kann man optional noch ausschalten! Folgende Config stammt von rampone/FF-KBU und wurde an 2 TL-WR841N v.8 getestet.
 +
 
 +
''vim /etc/config/network'' - Folgende Änderungen wurden an der FF-Firmware 1.0 vorgenommen:
 +
#config interface 'freifunk' -> Hier haben wir eth0 aus "ifname" rausgenommen, damit kein ff aus dem eth0 (switch) rauskommt.
 +
#config interface 'mesh_lan' -> kompl. codeblock hinzugefügt, dieser bewirkt das über eth0 (switch) gemeshed wird.  
  
''vim /etc/config/network''
 
  
 
<pre>
 
<pre>
Zeile 55: Zeile 85:
  
 
config interface 'freifunk'
 
config interface 'freifunk'
option ifname 'bat0'
+
option ifname 'bat0' #LAN-Kopplung: ifname eth1 entfernt
 
option type 'bridge'
 
option type 'bridge'
 
option proto 'none'
 
option proto 'none'
Zeile 73: Zeile 103:
 
option macaddr '12:fe:ed:f2:53:84'
 
option macaddr '12:fe:ed:f2:53:84'
  
config interface 'mesh_lan'
+
config interface 'mesh_lan' #LAN-Kopplung: Codeblock mesh-lan hinzugefuegt
 
option ifname 'eth1'
 
option ifname 'eth1'
 
option proto 'batadv'
 
option proto 'batadv'
 
option mesh 'bat0'
 
option mesh 'bat0'
 
</pre>
 
</pre>
 +
 +
 +
''vim /etc/config/wireless'' - Hier wird der Codeblock, der für das Mesh über WLAN verantwortlich ist auskommentiert (optional)
 +
<pre>
 +
#config wifi-iface 'wifi_mesh'
 +
#      option device 'radio0'
 +
#      option network 'mesh'
 +
#      option mode 'adhoc'
 +
#      option ssid '02:d1:11:37:fc:39'
 +
#      option bssid '02:d1:11:37:fc:39
 +
</pre>
 +
 +
 +
 +
 +
==== TL-WDR4300 ====
 +
Das gleiche nochmal für den 4300er
 +
 +
''vim /etc/config/network''
 +
<pre>
 +
config interface 'loopback'
 +
option ifname 'lo'
 +
option proto 'static'
 +
option ipaddr '127.0.0.1'
 +
option netmask '255.0.0.0'
 +
 +
config interface 'wan'
 +
option ifname 'eth0.2'
 +
option proto 'dhcp'
 +
option type 'bridge'
 +
option accept_ra '0'
 +
option auto '1'
 +
option macaddr 'a2:f3:c1:65:81:cd'
 +
 +
config switch
 +
option name 'eth0'
 +
option reset '1'
 +
option enable_vlan '1'
 +
 +
config switch_vlan
 +
option device 'eth0'
 +
option vlan '1'
 +
option ports '0t 2 3 4 5'
 +
 +
config switch_vlan
 +
option device 'eth0'
 +
option vlan '2'
 +
option ports '0t 1'
 +
 +
config interface 'freifunk'
 +
option ifname 'bat0' #LAN-Kopplung: ifname eth0.1 entfernt
 +
option type 'bridge'
 +
option proto 'none'
 +
option auto '1'
 +
option accept_ra '1'
 +
option macaddr 'a0:f3:c1:64:81:cc'
 +
 +
config interface 'mesh'
 +
option proto 'batadv'
 +
option mtu '1528'
 +
option mesh 'bat0'
 +
 +
config interface 'mesh_vpn'
 +
option ifname 'mesh-vpn'
 +
option proto 'batadv'
 +
option mesh 'bat0'
 +
option macaddr 'a2:f3:c1:65:81:cc'
 +
 +
config interface 'mesh_lan' #LAN-Kopplung: Codeblock mesh-lan hinzugefuegt
 +
        option ifname 'eth0.1'
 +
        option proto 'batadv'
 +
        option mesh 'bat0'
 +
 +
</pre>
 +
 +
=== Sonstiges ===
 +
Extern erreichbare ipv6
 +
<pre>
 +
ip address show br-freifunk
 +
 +
link/ether a0:f3:c1:64:81:cc brd ff:ff:ff:ff:ff:ff
 +
    inet6 2001:4dd0:2019:xxx:xxxx:xxxx:xxxx:xxxx/64 scope global dynamic
 +
      valid_lft 81269sec preferred_lft 9269sec
 +
    inet6 2001:67c:20a0:xxx:xxxx:xxxx:xxxx:xxxx/64 scope global dynamic
 +
      valid_lft 86395sec preferred_lft 14395sec
 +
    inet6 2001:67c:20a0:xxx:xxxx:xxxx:xxxx:xxxx/64 scope global dynamic
 +
      valid_lft 86395sec preferred_lft 14395sec
 +
    inet6 2001:67c:20a0:xxx:xxxx:xxxx:xxxx:xxxx/64 scope global dynamic
 +
      valid_lft 86395sec preferred_lft 14395sec
 +
</pre>
 +
 +
== FF KBU Website ==
 +
=== Jekyll Setup ===
 +
Nach diesen Kochrezept hab ich die IDE für OS 10.6.8 aufgesetzt, an der Stelle danke an ''gevatter'' für die Einführung!
 +
 +
Als erstes lege ich irgendwo ein Verzeichnis an, in dem ich die Seite ablegen möchte, um Sie zu bearbeiten. Anschliessend wechsele ich in das neu angelegte Verzeichnis.
 +
<pre>
 +
mkdir /verzeichnis/zur/website/
 +
cd /verzeichnis/zur/website/
 +
</pre>
 +
Nun werden die notwenigen Jekyll Komponenten installiert. Wer OS X User ist, sollte sich erstmal [[Macports]] besorgen. Ubuntu/ Debian Nutzer ersetzen das "port" gegen "aptitude".
 +
<pre>
 +
sudo port install ruby1.9 gem1.9 ImageMagick git-core Jekyll
 +
</pre>
 +
Aktuellen Source der Page clonen
 +
<pre>
 +
git clone https://github.com/ff-kbu/website.git 
 +
</pre>
 +
Jetzt installieren wir noch ''bundler''
 +
<pre>
 +
gem1.9 install bundler
 +
bundle install
 +
</pre>
 +
 +
Soweit so gut, jetzt können wir:
 +
<pre>
 +
jekyll build // die Seite bauen
 +
jekyll -w // uns Änderungen anzeigen lassen
 +
jekyll serve -w // Einen lokalen Server starten auf port 4000 (http://0.0.0.0:4000) auf dem wir eine Vorschau haben
 +
</pre>
 +
 +
Wenn die Änderungen eingearbeitet sind, wird diese in euer eigenes Repository gepusht, von hier können die Admins die Änderungen einsehen  und ggf. einarbeiten in die produktive Seite.
 +
 +
Wer einen Account auf github hat, kann so von der Shell auf ein neues Repo erstellen:
 +
<pre>
 +
touch README.md
 +
git init
 +
git add README.md
 +
git commit -m "first commit"
 +
git remote add origin https://github.com/username/repo-name.git
 +
git push -u origin master
 +
</pre>
 +
 +
==== Troubleshooting ====
 +
<pre>
 +
error: undefined method `size' for nil:NilClass. Use --trace to view backtrace
 +
</pre>
 +
sollte mal prüfen ob ImageMagick installiert ist. Bei OS X ist es default nicht dabei!
 +
<pre>
 +
sudo port install ImageMagick
 +
</pre>
 +
 +
== Sonstiges ==
 +
Link Local Adresse = fe80::

Aktuelle Version vom 14. November 2014, 00:13 Uhr


Freifunk Mitmachseite

Node Shell Zeug

Vorraussetzung für folgende Befehle sind eine Verbindung mit dem KBU Freifunk Netz sowie ein Terminal / Shell. Vergesst nicht eth0 gegen die Bezeichnung eures Netzwerkinterfaces, welches am Freifunk hängt zu tauschen. Bei Macbooks via Wlan z.B. "en1" statt "eth0"!

IPv6 ping

ping6 <link local adress des node>%eth0

IPv6 ssh - Hinter der link local Adresse "%" + "Netzwerk Interface an eurer Kiste"

ssh root@<link local adress des node>%eth0

Firmware upgrade bei node mit uplink

ssh root@<link local adress des node>%eth0              // SSH Verbindung zum Node aufbauen
cd ../tmp/                                              // in das Verzeichnis "tmp" wechseln
free                                                    // Freien Speicher prüfen
wget http://pfad/zur/firmware.bin                       // Firmware herunterladen oder
sysupgrade -v firmware.bin                              // Firmwareupgrade durchführen

Firmware upgrade bei node ohne uplink

scp -6 -v -r firmware.bin root@\[<linkloc%eth0\]:../tmp/ // Firmware auf den node schieben (md5 checken!)
ssh root@<link local adress des node>%eth0 
cd ../tmp/  
sysupgrade -v firmware.bin  

Links

Config Zeug

Hostname ändern

vim /etc/config/system

config system
        option hostname 'Freifunk-10feeda0507c'    #Hostname = Nodename
        option timezone 'CET-1CEST,M3.5.0,M10.5.0/3'


LAN Kopplung

TL-WR841ND

03/2014: Hier wird über die alle 4 LAN Ports gemeshed, Mesh über WLAN kann man optional noch ausschalten! Folgende Config stammt von rampone/FF-KBU und wurde an 2 TL-WR841N v.8 getestet.

vim /etc/config/network - Folgende Änderungen wurden an der FF-Firmware 1.0 vorgenommen:

  1. config interface 'freifunk' -> Hier haben wir eth0 aus "ifname" rausgenommen, damit kein ff aus dem eth0 (switch) rauskommt.
  2. config interface 'mesh_lan' -> kompl. codeblock hinzugefügt, dieser bewirkt das über eth0 (switch) gemeshed wird.


config interface 'loopback'
	option ifname 'lo'
	option proto 'static'
	option ipaddr '127.0.0.1'
	option netmask '255.0.0.0'

config interface 'wan'
	option ifname 'eth0'
	option proto 'dhcp'
	option type 'bridge'
	option accept_ra '0'
	option auto '1'

config switch
	option name 'switch0'
	option reset '1'
	option enable_vlan '1'

config switch_vlan
	option device 'switch0'
	option vlan '1'
	option ports '0 1 2 3 4'

config interface 'freifunk'
	option ifname 'bat0'		#LAN-Kopplung: ifname eth1 entfernt
	option type 'bridge'
	option proto 'none'
	option auto '1'
	option accept_ra '1'
	option macaddr '10:fe:ed:f1:53:84'

config interface 'mesh'
	option proto 'batadv'
	option mtu '1528'
	option mesh 'bat0'

config interface 'mesh_vpn'
	option ifname 'mesh-vpn'
	option proto 'batadv'
	option mesh 'bat0'
	option macaddr '12:fe:ed:f2:53:84'

config interface 'mesh_lan'		#LAN-Kopplung: Codeblock mesh-lan hinzugefuegt
	option ifname 'eth1'
	option proto 'batadv'
	option mesh 'bat0'


vim /etc/config/wireless - Hier wird der Codeblock, der für das Mesh über WLAN verantwortlich ist auskommentiert (optional)

#config wifi-iface 'wifi_mesh'
#       option device 'radio0'
#       option network 'mesh'
#       option mode 'adhoc'
#       option ssid '02:d1:11:37:fc:39'
#       option bssid '02:d1:11:37:fc:39



TL-WDR4300

Das gleiche nochmal für den 4300er

vim /etc/config/network

config interface 'loopback'
	option ifname 'lo'
	option proto 'static'
	option ipaddr '127.0.0.1'
	option netmask '255.0.0.0'

config interface 'wan'
	option ifname 'eth0.2'
	option proto 'dhcp'
	option type 'bridge'
	option accept_ra '0'
	option auto '1'
	option macaddr 'a2:f3:c1:65:81:cd'

config switch
	option name 'eth0'
	option reset '1'
	option enable_vlan '1'

config switch_vlan
	option device 'eth0'
	option vlan '1'
	option ports '0t 2 3 4 5'

config switch_vlan
	option device 'eth0'
	option vlan '2'
	option ports '0t 1'

config interface 'freifunk'
	option ifname 'bat0'		#LAN-Kopplung: ifname eth0.1 entfernt
	option type 'bridge'
	option proto 'none'
	option auto '1'
	option accept_ra '1'
	option macaddr 'a0:f3:c1:64:81:cc'

config interface 'mesh'
	option proto 'batadv'
	option mtu '1528'
	option mesh 'bat0'

config interface 'mesh_vpn'
	option ifname 'mesh-vpn'
	option proto 'batadv'
	option mesh 'bat0'
	option macaddr 'a2:f3:c1:65:81:cc'

config interface 'mesh_lan'		#LAN-Kopplung: Codeblock mesh-lan hinzugefuegt
        option ifname 'eth0.1'
        option proto 'batadv'
        option mesh 'bat0'

Sonstiges

Extern erreichbare ipv6

ip address show br-freifunk

link/ether a0:f3:c1:64:81:cc brd ff:ff:ff:ff:ff:ff
    inet6 2001:4dd0:2019:xxx:xxxx:xxxx:xxxx:xxxx/64 scope global dynamic 
       valid_lft 81269sec preferred_lft 9269sec
    inet6 2001:67c:20a0:xxx:xxxx:xxxx:xxxx:xxxx/64 scope global dynamic 
       valid_lft 86395sec preferred_lft 14395sec
    inet6 2001:67c:20a0:xxx:xxxx:xxxx:xxxx:xxxx/64 scope global dynamic 
       valid_lft 86395sec preferred_lft 14395sec
    inet6 2001:67c:20a0:xxx:xxxx:xxxx:xxxx:xxxx/64 scope global dynamic 
       valid_lft 86395sec preferred_lft 14395sec

FF KBU Website

Jekyll Setup

Nach diesen Kochrezept hab ich die IDE für OS 10.6.8 aufgesetzt, an der Stelle danke an gevatter für die Einführung!

Als erstes lege ich irgendwo ein Verzeichnis an, in dem ich die Seite ablegen möchte, um Sie zu bearbeiten. Anschliessend wechsele ich in das neu angelegte Verzeichnis.

mkdir /verzeichnis/zur/website/
cd /verzeichnis/zur/website/

Nun werden die notwenigen Jekyll Komponenten installiert. Wer OS X User ist, sollte sich erstmal Macports besorgen. Ubuntu/ Debian Nutzer ersetzen das "port" gegen "aptitude".

sudo port install ruby1.9 gem1.9 ImageMagick git-core Jekyll

Aktuellen Source der Page clonen

git clone https://github.com/ff-kbu/website.git  

Jetzt installieren wir noch bundler

	
gem1.9 install bundler
bundle install

Soweit so gut, jetzt können wir:

jekyll build 	// die Seite bauen
jekyll -w	// uns Änderungen anzeigen lassen
jekyll serve -w	// Einen lokalen Server starten auf port 4000 (http://0.0.0.0:4000) auf dem wir eine Vorschau haben 

Wenn die Änderungen eingearbeitet sind, wird diese in euer eigenes Repository gepusht, von hier können die Admins die Änderungen einsehen und ggf. einarbeiten in die produktive Seite.

Wer einen Account auf github hat, kann so von der Shell auf ein neues Repo erstellen:

touch README.md
git init
git add README.md
git commit -m "first commit"
git remote add origin https://github.com/username/repo-name.git
git push -u origin master

Troubleshooting

error: undefined method `size' for nil:NilClass. Use --trace to view backtrace

sollte mal prüfen ob ImageMagick installiert ist. Bei OS X ist es default nicht dabei!

sudo port install ImageMagick

Sonstiges

Link Local Adresse = fe80::