UCI ist das Kommandozeilentool, welches in OpenWRT genutzt wird, um Einstellungen auszulesen oder zu ändern. Über das UCI lassen sich alle Einstellungen, die auch über die Konfigurationsoberfläche möglich sind, sowie einige weitere Einstellungen vornehmen.
Weitere Infos finden sich auch im freifunk.net Wiki – vollständige Information zum uci → https://openwrt.org/docs/guide-user/base-system/uci
Alle gesetzten Einstellungen auflisten:
uci show |
Eine bestimmte Einstellung anzeigen:
uci show [Einstellung] |
Beispiel:
uci show autoupdater.settings.enabled |
Oder für eine Einstellungsgruppe:
uci show autoupdater.settings |
uci set [Einstellung]=[Wert] |
Beispiel:
uci set autoupdater.settings.enabled=1 |
Wichtig: Wenn du Einstellungen via UCI gesetzt hast, müssen diese via uci commit
am Ende aktiviert werden!
Bevor man an Einstellungen herum fummelt kann es sinnvoll sein, diese zunächst zu sichern um sie problemlos wieder herzustellen.
Dies lässt sich für alle Einstellungen via uci export
oder auch nur für einen Abschnitt machen, wie im folgenden Beispiel:
uci export network > network.uci |
Und der Import geht dann so:
cat network.uci | uci import |
Grundsätzlich ist nach dem uci commit
ein Reboot des Router nötig, um die Änderungen zu aktivieren.
Wenn du die WAN-Schnittstelle nicht nur für einen Internetzugang verwenden möchtest, sondern über diese auch das Meshing-Protokoll aktivieren willst, um z.B. andere, evtl. langsamere Freifunk-Router mit dem Freifunk-Netz zu versorgen, gehst du wie folgt vor:
uci set network.mesh_wan=interface uci set network.mesh_wan.ifname=br-wan uci set network.mesh_wan.proto=batadv uci set network.mesh_wan.mesh=bat0 uci set network.mesh_wan.auto=1 uci commit |
uci set network.mesh_wan.auto=0 uci commit |
Wenn du möchtest, dass auf den LAN-Ports das Netzwerk raus fällt, das über WAN angeschlossen ist, kannst du folgende UCI-Befehle ausführen:
uci set network.client.ifname=bat0 uci set network.wan.ifname='eth0 eth1' uci commit |
Wenn Du an Deinem Internetrouter zuwenig freie Anschlüsse hast, kannst Du die Funktion des WAN-Ports und der LAN-Ports tauschen. Das Bedeutet, das dann einer der Gelben Anschlüsse mit dem Internet verbunden werden muss. Die gelben Anschlüsse sind per Switch untereinander verbunden und Du kannst sie benutzen, um weitere Geräte mit Deinem internen Netz zu verbinden. Der blaue Anschluss ist dann der Mesh-Port zur Vermaschung mit weiteren Freifunk-Routern.
Umgesetzt wird das wie folgt:
uci set network.wan.ifname='eth0' uci set network.mesh_lan.ifname='eth1' uci set network.client_lan.ifname='eth1' uci set simple-tc.example.ifname='eth1' uci set system.led_wan.dev='eth0' uci commit reboot |
Das Tauschen von eth0 und eth1 ist leider nicht upatefest!
Wenn du zusätzlich zu dem Freifunk-Netz auch dein eigenes WLAN ausstrahlen möchtest, kannst du dies durch folgende UCI-Befehle erreichen:
uci set wireless.wan_radio0=wifi-iface uci set wireless.wan_radio0.device=radio0 uci set wireless.wan_radio0.network=wan uci set wireless.wan_radio0.mode=ap uci set wireless.wan_radio0.encryption=psk2 uci set wireless.wan_radio0.ssid="$SSID" uci set wireless.wan_radio0.key="$KEY" uci set wireless.wan_radio0.disabled=0 uci commit |
Beim ändern des WLAN Kanals können in Deutschland die Kanäle 1 bis 13 genutzt werden.
Bei den Kanälen 12 und 13 kann es Probleme mit Geräten aus dem Auslad geben da diese Kanäle nicht in jedem Land erlaubt sind.
Beispiel für Kanal 11:
wireless.radio0.channel='11' |
client0 ist hier das jeweilige WLAN interface.
iwinfo client0 scan |
Die Koordinaten lassen sich mit unserer Karte bestimmen: https://karte.freifunk-muensterland.de/map/
Dazu muss auf der Karte mit dem Reißnagel auf den Routerstandort geklickt werden um die Geodaten zu sehen.
:nodes:ucibasics:geodaten1.jpg?direct&200|
Es erscheint ein Fenster mit den Daten 51.956194, 7.614577
:nodes:ucibasics:geodaten2.jpg?direct&200|
Diese Geodaten werden in den Folgenden Code eingefügt:
uci set gluon-node-info.@location[0]='location' uci set gluon-node-info.@location[0].share_location='1' uci set gluon-node-info.@location[0].latitude='51.956194' uci set gluon-node-info.@location[0].longitude='7.614577' uci commit gluon-node-info |
logread