Anleitungen: Unterschied zwischen den Versionen

Aus Freifunk Franken
Wechseln zu:Navigation, Suche
(WAN Port feste IP)
(→‎SSH: Kommando pre-formatiert)
 
(141 dazwischenliegende Versionen von 21 Benutzern werden nicht angezeigt)
Zeile 1: Zeile 1:
{{Entwurf}}
__TOC__
__TOC__


== Wie flashe ich meinen Router? ==
== Der wichtigste Hinweis zuerst ==
<div style="clear:both;margin:30px;" align="center">
<youtube>aFMLIP6gABs</youtube>
</div>


Weitere Infos zum Flashen oder aktualisieren der Freifunk Firmware gibt es [[Portal:Firmware|hier]].
<div style="margin-bottom:1em; padding:1em 1em 0.5em 1em; border:2px solid #dc0067;color:#000;">
Einen Freifunk-Router stellt man nicht einfach hin und überlässt ihn sich selbst (Wie es eigentlich für sämtliche am Internet angeschlossene Geräte gilt, wenn es auch oft genug nicht beachtet wird). Sondern man übernimmt langfristig Verantwortung, v.a. was regelmäßige Updates und Übernahme größerer Änderungen im Netzwerk angeht. Diese werden mit hinreichend großem Vorlauf angekündigt. Wenn diese trotzdem nicht beachtet werden läuft man Gefahr, dass der Router irgendwann nicht mehr funktioniert oder, wenn er Störungen im Netz produziert, gesperrt wird. Das gilt gerade auch für Freifunk-Router, wo eigene Modifikationen (die wir explizit unterstützen, solange sie das Netz nicht stören und kompatibel zu unseren Netz sind) vorgenommen wurden.


== Wie ist meine MAC? ==
'''Der Routeraufsteller/Betreiber ist für seinen Router verantwortlich. Dies gilt auch für die Einstellungen wie z.b. Sendeleistung.'''
Um zu sehen, wie die MAC vom Router ist, schaust du auf der Rückseite
nach der "MAC" / "MAC ID" / "Hardware Adresse". Diese sieht in etwa so
aus:


<tt>00:1E:58:C2:F1:95</tt> (Manchmal sind die Doppelpunkte nicht dabei.)
Auch sollte man zumindest grundlegendes Interesse an der Technik mitbringen. Aber keine Panik: Freifunk-Router sind im Allgemeinen sehr pflegeleicht.


=== MAC zu IPv6 wandeln ===
Das [https://wiki.freifunk-franken.de/w/PicoPeeringAgreement PicoPeeringAgreement] solltest du auch schon mal gelesen haben.
</div>


Zur einfachen Umwandlung gibt es ein Skript das einem das "Kippen des Bits" und die manuelle Wandlung/Zusammensetzung erspart. Wer aber wissen will wie man es selbst berechnen findet die Informationen unter "manuelle Wandlung/Berechnun".
== Wie flashe (= installiere) ich meinen Router? ==


Das einfachste ist aber wohl nachdem man einen Router übernommen hat ca. 10 Minuten zu warten und auf die Seite des Routers zu schauen. Im Abschnitt "Netzwerkinterfaces" steht die MAC, sowie die IPv6-Adresse.
[[Portal:Firmware|Anleitung zum Flashen]] oder Aktualisieren der Freifunk Firmware.


[[Datei:Gs00338.jpg|border]]
== Wie ist meine MAC Adresse? ==
Die MAC-Adresse des Routers steht auf der Unterseite des Routers
unter "MAC" / "MAC ID" / "Hardware Adresse" (je nach Modell auch wo anders, z.b. hinter eine Kappe, auf den Karton o.ä.). Diese sieht in etwa so
aus:


==== Verwenden des Skripts ====
<tt>00:1E:58:C2:F1:95</tt> (Manchmal sind keine Doppelpunkte dabei.)


Gib deine MAC in folgendes Skript ein und klicke auf "Calc": [https://ssl.mastersword.de/~reddog/ll.php https://ssl.mastersword.de/~reddog/ll.php]
== Node Firmware konfigurieren ==
[[Anleitungen/Node_Firmware|Node Firmware konfigurieren]]


==== manuelle Wandlung/Berechnung ====
== Monitoring ==
Angenommen du hast folgende MAC: <tt>00:1E:58:C2:F1:95</tt>
Um die IPv6 aus der MAC zu berechnen, kippst du vom ersten Byte das
zweite Bit:


<tt>02:1E:58:C2:F1:95</tt>
* [https://monitoring.freifunk-franken.de '''FFF Monitoring''']
* [[Monitoring|Doku zur Monitoring-Map]]


Dann entfernst du die Doppelpunkte:
Damit der Router dir in deinem Account zugeordnet wird, musst du dich auf der Website [https://monitoring.freifunk-franken.de FFF Monitoring] mit der gleichen Mailadresse registrieren, die du schon im Webinterface des Routers angegeben hast oder die du auf dem Router hinterlegt hast. Dies ist keine Pflicht um den Router zu betreiben, die Konfiguration geschieht einzig und alleine auf dem Webinterface des Routers.
<tt>021E58C2F195</tt>


Nun fügst du an den Anfang: <tt>fe80::</tt>, in die Mitte: <tt>ff:fe</tt> an:
== Wie ändere ich das Passwort für den Router? ==
<tt>fe80::021E58ff:feC2F195</tt>


Alle vier Zeichen wird nun ein Doppelpunkt gesetzt:
Geht ab sofort über das Webinterface (WebUI). Das Standardpasswort ist weiterhin "ffol" was für '''FreiFunkOnLine''' steht. Das Passwort gilt auch für das WebUI mit dem Benutzernamen '''root'''.
<tt>fe80::021E:58ff:feC2:F195</tt>


== Wie kann ich mich auf den Router einloggen? ==
== Zugriff auf den Router ==
Zunächst musst du seine IP-Adresse kennen. Der Router ist ausschließlich
über seine IPv6-Link-Local-Adresse über das WLAN-Interface zu erreichen, d.h. man muss per WLAN mit dem Router verbunden sein.


Die IPv6-Adresse kannst du anhand der MAC berechnen, siehe dazu den vorherigen Abschnitt.
=== Adresse herausfinden ===
[[Datei:BrmeshImMonitoring.PNG|right|thumb|300px|Die IPv6 Adresse eines Beispielrouters im Monitoring]]
Ein Router mit Freifunk Firmware hat mehrere IP-Adressen, unter denen er erreichbar ist:
* IPv6 Link Local (fe80::/64)
* fdff::1
* IPv6 ULA (fd43:5602:29bd::/48)


Da es sich hierbei "nur" um eine Link-Local-Adresse handelt, ist sie ohne die Scope-ID – das ausgehende Interface – nutzlos.
Wenn der Router schon im Monitoring aufgetaucht ist, kann man diese Adressen leicht im Monitoring herausfinden.
Ist das nicht der Fall, gibt es mehrere Möglichkeiten.


Bei SSH wird die Scope-ID wie folgt angegeben:
Auf den Client Ports (meistens die zwei vom WAN-Port am weitesten entfernen) sollte immer die '''fdff::1''' funktionieren (Apple Geräte haben leider einen Bug, siehe [[Anleitungen:macOS]]).
<tt>1234::5678:9012:3456:7890%wlan0</tt>
Damit kann man sich am leichtesten und schnellsten mit einem direkt verbundenem Freifunk-Router verbinden.


=== Vorgehen mit Linux ===
Unter '''Linux''' logt man sich mit folgendem Befehl ein:
<tt>ssh root@<ipv6%iface></tt>


Beispiel(Wlan): <tt>ssh root@fe80::fad1:11ff:fe90:3592%wlan0</tt>
Auf allen Ports funktioniert immer die Link-Local Adresse, die sich aber zwischen den Ports unterscheiden kann.
Am leichtesten kriegt man diese über einen [[Anleitungen#Link_Local_Adresse_per_Multicast_Ping_herausfinden|Multicast Ping]] heraus. Unter Windows funktioniert dies leider nicht.
Beispiel(Lan): <tt>ssh root@fe80::fad1:11ff:fe90:3592%eth0</tt>
Mit der Link Local Adresse lässt sich auch das Webinterface nicht nutzen, weil Browser nicht richtig mit der Scope-ID umgehen können.


Beim ersten Einloggen sollte unbedingt das Passwort des Routers geändert werden.
=== Webinterface ===
[[Datei:WebUIimMonitoring.PNG|right|thumb|Die IPv6 Adresse eines Beispielrouters im Monitoring]]
Gebt in euren Browser die IPv6 Adresse von oben inklusive der eckigen Klammern ein, z.B. <code>[fdff::1]</code>


=== Vorgehen mit Mac OS ===
Auch könnt ihr im [https://monitoring.freifunk-franken.de/ Monitoring]  euren Router auswählen und den Link "Web-UI" benutzen.


Analog zu Linux, nur das hier die Netzwerk-Interfaces den Prefix ''en'' haben.
=== SSH ===


Beispiel: <tt>ssh root@fe80::fad1:11ff:fe90:3592%en1</tt>
Über die IPv6 Adresse kann man sich direkt mit SSH mit dem Router verbinden.<br />
Das Kommandozeilen-Interface (Konsole) des Routers erreicht man via ssh (unter Windows z.B. mittels [http://www.chiark.greenend.org.uk/~sgtatham/putty/download.html PuTTY]). Per SSH kann nun über jede [[Anleitungen#Adresse_herausfinden|Adresse]] zugegriffen werden, diese sind im Monitoring auch auf der Routerseite unter Interfaces beim br-mesh zu finden. Die Locallink-Adresse funktioniert aber auch weiterhin.
Wird das Passwort per SSH geändert, wird es im WebUI erst nach einen Neustart des Routers übernommen, wird es im WebUI geändert wirkt es sofort.


Eine Übersicht der vorhandenen Interfaces bekommt man mit dem Befehl <tt>ifconfig</tt>.
Per Linux sieht das Kommando zum Beispiel so aus:


=== Vorgehen mit Windows ===
<pre>ssh root@fdff::6872:5136:1083</pre>
Unter '''Windows''' (es wird Windows Vista oder höher benötigt) haben die Interfaces anstatt Namen Nummern, welche sich mit <tt>ipconfig /all</tt> bestimmen lassen. Dazu auf "Start" -> "Ausführen" -> <tt>cmd</tt> [Enter] -> <tt>ipconfig /all</tt> [Enter]. Dann erscheint eine lange Liste, aus der man sich den Eintrag mit <tt>freifunk-franken.de</tt> heraussucht:


[[Datei:Gs00339.jpg]]
Man muss für die fdff:: Adressen natürlich in der gleichen Hood sein, damit dies funktioniert.


Die gesuchte Interface-Nummer ist in diesem Fall <tt>%37</tt>, was man einfach an die IPv6-Adresse des Routers anhängt. Wie man die bekommt, steht [https://wiki.freifunk-franken.de/w/Anleitungen#MAC_zu_IPv6_wandeln einen Abschnitt weiter oben]. Man erhält so z.B.: <tt>fe80::6a73:51ff:fe2c:f46f%37</tt>
== Link Local Adresse per Multicast Ping herausfinden ==
Jedes Interface weißt sich automatisch selbst eine IPv6 Link Local Adresse aus fe80::/64 zu. Dabei wird der Interface Identifier (die hinteren 64bit) aus der MAC-Adresse generiert.


Als SSH-Programm ist [http://www.chiark.greenend.org.uk/~sgtatham/putty/download.html PuTTY] in einer aktuellen Version zu empfehlen. Hat man PuTTY gestartet, gibt man als IP-Adresse die gerade zusammengesetzte Zeichenfolge mit vorangestelltem <tt>root@</tt> ein, klickt auf "SSH" und dann auf "Open".
Diese Adresse ist nur auf einem Link gültig (hat also "link scope"), daher muss
* Jedes Gerät, mit dem man reden möchte, direkt per Ethernet (direkt, über einen Switch, über eine Bridge, ..) verbunden sein.
* Zusätzlich zur Adresse muss eine "Zone ID" angegeben werden, also das Interface, auf dem man reden möchte.
** Dies wird mit '''%interface''', also z.B. fe80::1%eth0 angegeben.


[[Datei:Gs00343.jpg]]


Die Verbindung dauert meist ca. eine Minute. Beim ersten Verbinden wird man gefragt ob man dem Gerät vertraut, dies muss man bestätigen.
Mithilfe diverser Multicast-Adresse kann man mehrere (oder alle) Nachbarn auf einem Link erreichen. Dazu zählen:
* ff02::1 erreicht alle link-lokalen Nachbarn, also alles, was direkt verbunden ist.
* ff02::2 erreicht alle link-lokalen Router.
* Eine vollständige Übersicht gibts auf den Seiten der [https://www.iana.org/assignments/ipv6-multicast-addresses/ipv6-multicast-addresses.xhtml IANA].


[[Datei:Gs00342.jpg]]


Daraufhin wird man nach dem Passwort gefragt. Das Default-Passwort lautet <tt>ffol</tt>
Sendet man also einen ping an eine dieser Multicast Adressen, erhält man eine Antwort von allen Hosts, die sich darunter angesprochen fühlen (und ICMPv6 nicht blockieren, shame on you Windows..).


Unmittelbar nach dem ersten Einloggen sollte '''unbedingt''' das Passwort des Routers geändert werden.
Die erste Antwort kommt dabei normalerweise vom eigenen Rechner, der auf den Ping am schnellsten antworten kann. Ist man also direkt mit einem anderen Gerät verbunden, sieht man 2 Ping-Antworten.


== Wie ändere ich das Passwort für den Router? ==
Das sieht dann etwa so aus:
Auf dem Router ist nur der <tt>root</tt>-User aktiv, das Default-Passwort ist <tt>'''ffol'''</tt>.
<pre>
Das Passwort sollte '''in jedem Fall''' mit dem Befehl <tt>passwd</tt> geändert werden, da der Zugriff auf den Router über das gesamte Freifunk-Netz möglich ist. Schreibe das Passwort '''immer''' direkt beim Ändern auf einen Aufkleber (Klebeband) und klebe es auf den Router! Dort ist es sicher und kann nicht verloren gehen. Wenn es verloren gegangen ist, ist das Flashen einer neuen Firmware nur noch mit großem Aufwand möglich.
~$ ping ff02::1%eth0
 
PING ff02::1%eth0(ff02::1%eth0) 56 data bytes
Das Passwort lässt dich im eingeloggten zustand mit folgenden Befehl ändern.
64 bytes from fe80::803:cb9c:dd14:7af%eth0: icmp_seq=1 ttl=64 time=0.030 ms
<pre>passwd</pre>
64 bytes from fe80::5054:ff:fe13:21c9%eth0: icmp_seq=1 ttl=64 time=1.266 ms (DUP!)
Nach der Eingabe von passwd muss man das ganze mit der Enter-Taste bestätigen.
64 bytes from fe80::5054:ff:fe28:3d79%eth0: icmp_seq=1 ttl=64 time=1.321 ms (DUP!)
im Anschluss wird man per
64 bytes from fe80::f29f:c2ff:fe61:baca%eth0: icmp_seq=1 ttl=64 time=1.355 ms (DUP!)
<pre>New password:</pre>
[..]
aufgefordert, das neue Passwort einzugeben.
</pre>
 
Im Anschluss wird man mit
<pre>Retype password:</pre>
aufgefordert das Passwort zur Bestätigung ein zweites mal einzugeben.


== Aufbau des Dateinamens der Firmware ==
In den beiden Varianten gibt es viele Dateien. Sie unterscheiden sich:
: a) nach dem Gerätetyp des Routers
: b) nach der Version des Routers
: c) nach der Version und dem Releasedatum der Firmware
: d) nach dem Verwendungzweck der Firmware
Bitte genau lesen und die richtige Firmware für das richtige Gerät verwenden
zu d) Verwendungszweck:


'''Hinweis:''' Bei der Eingabe eines Passworts unter PuTTY werden die einzelnen eingegebenen Zeichen aus Sicherheitsgründen '''nicht''' angezeigt, man schreibt sozusagen blind.
{| class="wikitable"
! Dateityp || Verwendungszweck
|-
| *-factory.bin || Ausschließlich zur Installation in der Originalfirmware des Herstellers
|-
| *.sha256 || sha56 Prüfsumme, mit der geprüft werden kann, ob die Firmware korrekt heruntergeladen wurde
|-
| *-sysupgrade.bin || Zur Installation der Firmware in OpenWrt oder einer älteren Freifunkfirmware.
|-
| initramfs || bei manchen Geräten muss man zuerst ein initramfs flashen
|}


== Wie kann ich die Routerzeit automatisch synchronisieren? ==
Grundsätzlich gilt, bitte die [[Portal:Firmware|Installationsanleitung]] beachten, da sollte für jedes Gerät beschrieben sein, welche Datei benötigt wird.
Die Uhr des Routers kann automatisch über das <tt>ntp-Protokoll</tt> synchronisiert werden. Dafür muss lediglich ein ensprechender Absatz zu <tt>/etc/config/system</tt> hinzugefügt werden:
 
Zuerst sollte die Zeit einmal manuell synchronisiert werden:
<tt>
ntpd -q -p 0.de.pool.ntp.org
</tt>
Dieser Schritt muss wiederholt werden, wenn der Router längere Zeit offline war oder die Routerzeit sehr stark abweicht.
 
Nun konfiguriert man den automatischen Start des ntp clients:
<tt>
vi /etc/config/system
</tt>
Und fügt folgendes hinzu:
<tt>
config 'timeserver' 'ntp'
        list 'server'    '0.de.pool.ntp.org'
        list 'server'    '1.de.pool.ntp.org'
        list 'server'    '2.de.pool.ntp.org'
        list 'server'    '3.de.pool.ntp.org'
        option enable_server 0
</tt>
 
Die Servernamen sind hier nur ein Vorschlag, es können beliebige erreichbare Zeitserver eingetragen werden. Beim nächsten Reboot sollte ntp-client automatisch gestartet werden.
Weitere Informationen erhält man unter: [http://wiki.openwrt.org/doc/howto/ntp.client openwrt: ntp client]
 
Bitte beachte, daß die Zeit aus dem Internet nur dann abgeholt werden kann, wenn der Router selbst eine VPN Verbindung aufbaut, sprich selbst am Internet hängt. Ein Router der sich nur im Freifunk Netz befindet, z.B. per BATMAN, kann die öffentlichen NTP Server nicht erreichen.


== Wie kann ich die Sendeleistung anpassen? ==
== Wie kann ich die Sendeleistung anpassen? ==
Wenn bei den Routern die mitgelieferten Antennen (mit 5&nbsp;dBi) gegen solche mit höherem Gewinn ausgetauscht wird (mit z.B. 9&nbsp;dBi), muss (rein rechtlich) die Sendeleistung des Routers reduziert werden, um die maximal abgestrahlte Leistung von 100 mW nicht zu überschreiten.
Wenn bei einem Router die mitgelieferten Antennen (z.B. mit 5&nbsp;dBi) gegen solche mit höherem Gewinn ausgetauscht werden (mit z.B. 9&nbsp;dBi), muss (rein rechtlich) die Sendeleistung des Routers reduziert werden, um die maximal abgestrahlte Leistung von 100 mW nicht zu überschreiten.


Die Angabe der Leistung erfolgt in [https://de.wikipedia.org/wiki/Leistungspegel#dBm dBm], somit wären 100 mW entsprechend 20 dBm als maximal zulässige Leistung. Dieser Wert ergibt sich vereinfacht aus der Summe der Sendeleistung des Routers und dem Antennengewinn, die Leistungsdämpfung durch Kabel und Steckverbindungen wäre theoretisch abzuziehen. Bei den gelieferten Rundstrahlantennen der Router-Hersteller liegt der Antennengewinn bei ca. 3-5 [https://de.wikipedia.org/wiki/Antennengewinn#Einheit dBi]. Die Dämpfung kann ungefähr mit 2-3 dB beziffert werden.
Die Angabe der Leistung erfolgt in [https://de.wikipedia.org/wiki/Leistungspegel#dBm dBm], 100 mW entsprechen 20 dBm als maximal zulässige Leistung. Dieser Wert ergibt sich vereinfacht aus der Summe der Sendeleistung des Routers und dem Antennengewinn, die Leistungsdämpfung durch Kabel und Steckverbindungen kann noch abgezogen werden. Bei den standardmäßig mitgelieferten Rundstrahlantennen der Router-Hersteller liegt der Antennengewinn meist bei ca. 3-5 [https://de.wikipedia.org/wiki/Antennengewinn#Einheit dBi]. Die Dämpfung kann ungefähr mit 2-3 dB beziffert werden.


=== Berechnung ===
=== Berechnung ===
Somit ergeben sich folgende Formeln:
Somit ergeben sich folgende Formeln:
<pre>
<pre>
Zeile 156: Zeile 148:
<pre>Sendeleistung = 20 dBm + 3 dB - 8 dBi = 15 dBm</pre>
<pre>Sendeleistung = 20 dBm + 3 dB - 8 dBi = 15 dBm</pre>


=== Anpassung am Router ===
=== Anpassung am Router per SSH ===


Die folgenden Befehle beziehen sich auf die Ausführung in der SSH-Konsole des Routers.
Die folgenden Befehle nach Anmeldung in der SSH-Konsole des Routers verwendet.


'''Werte ermitteln'''
'''Werte ermitteln'''


<pre>iwconfig</pre>
<pre>iw dev</pre>
 
bzw.
 
<pre>iw dev w2ap info</pre>
 
oder
 
<pre>iw dev w5ap info</pre>




Resultat (Beispiel mit '''19 dBm''' Sendeleistung)
Resultat (Beispiel mit '''16 dBm''' Sendeleistung)


<pre>
<pre>
w2ap      IEEE 802.11bgn  Mode:Master  Tx-Power=19 dBm 
Interface w5ap
          RTS thr:off  Fragment thr:off
ifindex 119
          Power Management:off
wdev 0x16
addr 64:66:b3:aa:bb:cc
ssid irgendein.freifunk
type AP
wiphy 0
channel 36 (5180 MHz), width: 20 MHz, center1: 5190 MHz
txpower 16.00 dBm
</pre>
</pre>


Zeile 176: Zeile 182:
'''Werte anpassen'''
'''Werte anpassen'''
(beispielsweise für eine Antenne mit 8 dBi Zugewinn, liegt die Sendeleistung bei '''15 dBm''')
(beispielsweise für eine Antenne mit 8 dBi Zugewinn, liegt die Sendeleistung bei '''15 dBm''')
Bei mehreren Radios (z.B. 5 GHz und 2,4 GHz muss vorher das richtige Radio ausgesucht werden, siehe '''/etc/config/wireless''')


<pre>
<pre>
uci set wireless.radio0.txpower=15
uci set wireless.radio0.txpower=15
uci commit
uci commit wireless
wifi
reload_config
</pre>
</pre>


== Router taucht in Netmon nach Benutzerlöschung nicht mehr auf ==
== Router als Switch ==
Entweder den Router [[Portal:Firmware#Firmware_Update|neu flashen]] oder per [[Anleitungen#Wie_kann_ich_mich_auf_den_Router_einloggen.3F|SSH einloggen]] und folgendes ausführen:
https://wiki.freifunk-franken.de/w/Router_als_Switch
 
<code>
cp /rom/etc/config/configurator /etc/config/configurator
</code>


== Beim Update ging etwas komplett schief ==
== Beim Update ging etwas komplett schief ==
Wenn der Router sich nach dem Update nicht mehr meldet bzw. etwas schief gegangen ist (weil z.B. die Stromzufuhr unterbrochen wurde), kann eventuell diese Anleitung helfen, das Gerät wieder funktionsfähig zu bekommen. Es wird dabei dir Firmware über die serielle Schnittstelle neu geflasht. Dieses Vorgehen nennt man auch ''unbrick'', da aus dem "Backstein" wieder ein funktionierender Router wird.
Bitte hier weiterlesen: https://wiki.freifunk-franken.de/w/Unbricken_ohne_serielle_Schnittstelle
 
Ihr benötigt allerdings hierfür:
* einen Rechner mit einem seriellen Anschluss (RS232) oder
* ein USB-to-Serial-Adapterkabel, wie es diese zum Beispiel für Handys gibt
 
Weiterhin braucht ihr einen Lötkolben und etwas Erfahrung im Umgang mit diesem. Um die Verbindung herzustellen ist außerdem ein Programm wie PuTTY, Hyperterminal oder cutecom (Linux) notwendig. Zusätzlich muss auf dem Rechner ein TFTP-Server installiert werden und die zu flashende Firmware muss sich im Rootverzeichnis des Servers befinden. Anschließend geht ihr am besten nach folgender [http://dev.wlan-si.net/wiki/Routers/TP-LINK/WR741ND Anleitung] vor.
 
Eine schrittweise Anleitungen zum Wiederbeleben eines defekten Routers, der nicht mehr durchstartet, gibt es auch hier:
 
https://wiki.freifunk-franken.de/w/Unbricken_eines_TP-Link_1043ND
 
Bei einem gebrickten Ubiquiti-Router war tftp von der Kommandozeile per ethernet erfolgreich. Man benötigt dazu natürlich das factory binary.
 
Unter Windows:
 
Ethernet-Schnittstelle auf 192.168.1.1 setzen, mit dem Ubiquiti verbinden, im stromlosen Zustand den Resetknopf drücken und halten, Gerät bestromen, ca. 20-30 Sekunden die Taste gedrückt halten, bis die LEDs alle wild und bunt blinken, die obersten beiden im Wechsel.
 
Jetzt unter Windows von der Kommandozeile aus dem Ordner, in dem auch das factory binary liegt:
 
tftp -i 192.168.1.20 put openwrt-ar71xx-generic-ubnt-nano-m-squashfs-factory.bin
 
Während der Übertragung flackert die zweite LED von unten, dann beginnt bissl wilde Lichtorgel in wechselnden Mustern, irgendwann macht der Router 'n reboot und ist wieder im normalen Freifunk-Betrieb aktiv.
 
Die Linuxianer wissen sicher eh, wie das geht bzw. unter Linux umzusetzen ist.
 
Jedenfalls benötigt man so keinerlei tftp-Server, keinerlei RS232-Kabel, muß auch nicht erst mit wireshark irgendwelche Adressen rauskriegen, daher ist das wohl einen Versuch wert, vor man tiefer einsteigt :)
 
== Wie kann ich dem WAN Port eine feste IP geben ==
Um dem Freifunk-Router im privaten oder Firmennetz eine feste IP zu geben, folgende Befehle nach dem Login per SSH eingeben:
 
* uci set network.wan.proto=static (Umschaltung dynamische IP >> statisch)
* uci set network.wan.ipaddr=192.168.178.1 (hier die zugewiesene IP eintragen)
* uci set network.wan.netmask=255.255.255.0 (Eingabe der Netzmaske)
* uci set netowrk.wan.gateway=192.168.178.1 (Gateway)
* uci commit network
* reboot
 




[[Kategorie:EinstiegsInformationen]]
[[Kategorie:Technik]]
[[Kategorie:Firmware]]
[[Kategorie:node]]

Aktuelle Version vom 23. Juli 2022, 17:53 Uhr

Der wichtigste Hinweis zuerst

Einen Freifunk-Router stellt man nicht einfach hin und überlässt ihn sich selbst (Wie es eigentlich für sämtliche am Internet angeschlossene Geräte gilt, wenn es auch oft genug nicht beachtet wird). Sondern man übernimmt langfristig Verantwortung, v.a. was regelmäßige Updates und Übernahme größerer Änderungen im Netzwerk angeht. Diese werden mit hinreichend großem Vorlauf angekündigt. Wenn diese trotzdem nicht beachtet werden läuft man Gefahr, dass der Router irgendwann nicht mehr funktioniert oder, wenn er Störungen im Netz produziert, gesperrt wird. Das gilt gerade auch für Freifunk-Router, wo eigene Modifikationen (die wir explizit unterstützen, solange sie das Netz nicht stören und kompatibel zu unseren Netz sind) vorgenommen wurden.

Der Routeraufsteller/Betreiber ist für seinen Router verantwortlich. Dies gilt auch für die Einstellungen wie z.b. Sendeleistung.

Auch sollte man zumindest grundlegendes Interesse an der Technik mitbringen. Aber keine Panik: Freifunk-Router sind im Allgemeinen sehr pflegeleicht.

Das PicoPeeringAgreement solltest du auch schon mal gelesen haben.

Wie flashe (= installiere) ich meinen Router?

Anleitung zum Flashen oder Aktualisieren der Freifunk Firmware.

Wie ist meine MAC Adresse?

Die MAC-Adresse des Routers steht auf der Unterseite des Routers unter "MAC" / "MAC ID" / "Hardware Adresse" (je nach Modell auch wo anders, z.b. hinter eine Kappe, auf den Karton o.ä.). Diese sieht in etwa so aus:

00:1E:58:C2:F1:95 (Manchmal sind keine Doppelpunkte dabei.)

Node Firmware konfigurieren

Node Firmware konfigurieren

Monitoring

Damit der Router dir in deinem Account zugeordnet wird, musst du dich auf der Website FFF Monitoring mit der gleichen Mailadresse registrieren, die du schon im Webinterface des Routers angegeben hast oder die du auf dem Router hinterlegt hast. Dies ist keine Pflicht um den Router zu betreiben, die Konfiguration geschieht einzig und alleine auf dem Webinterface des Routers.

Wie ändere ich das Passwort für den Router?

Geht ab sofort über das Webinterface (WebUI). Das Standardpasswort ist weiterhin "ffol" was für FreiFunkOnLine steht. Das Passwort gilt auch für das WebUI mit dem Benutzernamen root.

Zugriff auf den Router

Adresse herausfinden

Die IPv6 Adresse eines Beispielrouters im Monitoring

Ein Router mit Freifunk Firmware hat mehrere IP-Adressen, unter denen er erreichbar ist:

  • IPv6 Link Local (fe80::/64)
  • fdff::1
  • IPv6 ULA (fd43:5602:29bd::/48)

Wenn der Router schon im Monitoring aufgetaucht ist, kann man diese Adressen leicht im Monitoring herausfinden. Ist das nicht der Fall, gibt es mehrere Möglichkeiten.

Auf den Client Ports (meistens die zwei vom WAN-Port am weitesten entfernen) sollte immer die fdff::1 funktionieren (Apple Geräte haben leider einen Bug, siehe Anleitungen:macOS). Damit kann man sich am leichtesten und schnellsten mit einem direkt verbundenem Freifunk-Router verbinden.


Auf allen Ports funktioniert immer die Link-Local Adresse, die sich aber zwischen den Ports unterscheiden kann. Am leichtesten kriegt man diese über einen Multicast Ping heraus. Unter Windows funktioniert dies leider nicht. Mit der Link Local Adresse lässt sich auch das Webinterface nicht nutzen, weil Browser nicht richtig mit der Scope-ID umgehen können.

Webinterface

Die IPv6 Adresse eines Beispielrouters im Monitoring

Gebt in euren Browser die IPv6 Adresse von oben inklusive der eckigen Klammern ein, z.B. [fdff::1]

Auch könnt ihr im Monitoring euren Router auswählen und den Link "Web-UI" benutzen.

SSH

Über die IPv6 Adresse kann man sich direkt mit SSH mit dem Router verbinden.
Das Kommandozeilen-Interface (Konsole) des Routers erreicht man via ssh (unter Windows z.B. mittels PuTTY). Per SSH kann nun über jede Adresse zugegriffen werden, diese sind im Monitoring auch auf der Routerseite unter Interfaces beim br-mesh zu finden. Die Locallink-Adresse funktioniert aber auch weiterhin. Wird das Passwort per SSH geändert, wird es im WebUI erst nach einen Neustart des Routers übernommen, wird es im WebUI geändert wirkt es sofort.

Per Linux sieht das Kommando zum Beispiel so aus:

ssh root@fdff::6872:5136:1083

Man muss für die fdff:: Adressen natürlich in der gleichen Hood sein, damit dies funktioniert.

Link Local Adresse per Multicast Ping herausfinden

Jedes Interface weißt sich automatisch selbst eine IPv6 Link Local Adresse aus fe80::/64 zu. Dabei wird der Interface Identifier (die hinteren 64bit) aus der MAC-Adresse generiert.

Diese Adresse ist nur auf einem Link gültig (hat also "link scope"), daher muss

  • Jedes Gerät, mit dem man reden möchte, direkt per Ethernet (direkt, über einen Switch, über eine Bridge, ..) verbunden sein.
  • Zusätzlich zur Adresse muss eine "Zone ID" angegeben werden, also das Interface, auf dem man reden möchte.
    • Dies wird mit %interface, also z.B. fe80::1%eth0 angegeben.


Mithilfe diverser Multicast-Adresse kann man mehrere (oder alle) Nachbarn auf einem Link erreichen. Dazu zählen:

  • ff02::1 erreicht alle link-lokalen Nachbarn, also alles, was direkt verbunden ist.
  • ff02::2 erreicht alle link-lokalen Router.
  • Eine vollständige Übersicht gibts auf den Seiten der IANA.


Sendet man also einen ping an eine dieser Multicast Adressen, erhält man eine Antwort von allen Hosts, die sich darunter angesprochen fühlen (und ICMPv6 nicht blockieren, shame on you Windows..).

Die erste Antwort kommt dabei normalerweise vom eigenen Rechner, der auf den Ping am schnellsten antworten kann. Ist man also direkt mit einem anderen Gerät verbunden, sieht man 2 Ping-Antworten.

Das sieht dann etwa so aus:

~$ ping ff02::1%eth0
PING ff02::1%eth0(ff02::1%eth0) 56 data bytes
64 bytes from fe80::803:cb9c:dd14:7af%eth0: icmp_seq=1 ttl=64 time=0.030 ms
64 bytes from fe80::5054:ff:fe13:21c9%eth0: icmp_seq=1 ttl=64 time=1.266 ms (DUP!)
64 bytes from fe80::5054:ff:fe28:3d79%eth0: icmp_seq=1 ttl=64 time=1.321 ms (DUP!)
64 bytes from fe80::f29f:c2ff:fe61:baca%eth0: icmp_seq=1 ttl=64 time=1.355 ms (DUP!)
[..]

Aufbau des Dateinamens der Firmware

In den beiden Varianten gibt es viele Dateien. Sie unterscheiden sich:

a) nach dem Gerätetyp des Routers
b) nach der Version des Routers
c) nach der Version und dem Releasedatum der Firmware
d) nach dem Verwendungzweck der Firmware

Bitte genau lesen und die richtige Firmware für das richtige Gerät verwenden

zu d) Verwendungszweck:


Dateityp Verwendungszweck
*-factory.bin Ausschließlich zur Installation in der Originalfirmware des Herstellers
*.sha256 sha56 Prüfsumme, mit der geprüft werden kann, ob die Firmware korrekt heruntergeladen wurde
*-sysupgrade.bin Zur Installation der Firmware in OpenWrt oder einer älteren Freifunkfirmware.
initramfs bei manchen Geräten muss man zuerst ein initramfs flashen

Grundsätzlich gilt, bitte die Installationsanleitung beachten, da sollte für jedes Gerät beschrieben sein, welche Datei benötigt wird.

Wie kann ich die Sendeleistung anpassen?

Wenn bei einem Router die mitgelieferten Antennen (z.B. mit 5 dBi) gegen solche mit höherem Gewinn ausgetauscht werden (mit z.B. 9 dBi), muss (rein rechtlich) die Sendeleistung des Routers reduziert werden, um die maximal abgestrahlte Leistung von 100 mW nicht zu überschreiten.

Die Angabe der Leistung erfolgt in dBm, 100 mW entsprechen 20 dBm als maximal zulässige Leistung. Dieser Wert ergibt sich vereinfacht aus der Summe der Sendeleistung des Routers und dem Antennengewinn, die Leistungsdämpfung durch Kabel und Steckverbindungen kann noch abgezogen werden. Bei den standardmäßig mitgelieferten Rundstrahlantennen der Router-Hersteller liegt der Antennengewinn meist bei ca. 3-5 dBi. Die Dämpfung kann ungefähr mit 2-3 dB beziffert werden.

Berechnung

Somit ergeben sich folgende Formeln:

Gesamtleistung = Sendeleistung - Dämpfung + Antennengewinn
Sendeleistung = Gesamtleistung + Dämpfung - Antennengewinn


Beispiel für die maximale Gesamtleistung von 20 dBm, einer Dämpfung von 3 dB und einem Antennengewinn von 8 dBi - die Sendeleistung des Routers dürfe somit 15 dBm betragen:

Sendeleistung = 20 dBm + 3 dB - 8 dBi = 15 dBm

Anpassung am Router per SSH

Die folgenden Befehle nach Anmeldung in der SSH-Konsole des Routers verwendet.

Werte ermitteln

iw dev

bzw.

iw dev w2ap info

oder

iw dev w5ap info


Resultat (Beispiel mit 16 dBm Sendeleistung)

Interface w5ap
	ifindex 119
	wdev 0x16
	addr 64:66:b3:aa:bb:cc
	ssid irgendein.freifunk
	type AP
	wiphy 0
	channel 36 (5180 MHz), width: 20 MHz, center1: 5190 MHz
	txpower 16.00 dBm


Werte anpassen (beispielsweise für eine Antenne mit 8 dBi Zugewinn, liegt die Sendeleistung bei 15 dBm)

Bei mehreren Radios (z.B. 5 GHz und 2,4 GHz muss vorher das richtige Radio ausgesucht werden, siehe /etc/config/wireless)

uci set wireless.radio0.txpower=15
uci commit wireless
reload_config

Router als Switch

https://wiki.freifunk-franken.de/w/Router_als_Switch

Beim Update ging etwas komplett schief

Bitte hier weiterlesen: https://wiki.freifunk-franken.de/w/Unbricken_ohne_serielle_Schnittstelle