Libre Mesh: Unterschied zwischen den Versionen

Aus Vosp.info
Wechseln zu:Navigation, Suche
(Script)
 
(6 dazwischenliegende Versionen von 2 Benutzern werden nicht angezeigt)
Zeile 1: Zeile 1:
 +
Router: [[Openwrt]] | [[LEDE]] | [[Libre Mesh]] | [[qMp]]
 +
 
* http://libremesh.org/
 
* http://libremesh.org/
 
* https://github.com/libremesh/lime-sdk
 
* https://github.com/libremesh/lime-sdk
Zeile 280: Zeile 282:
 
          
 
          
 
done
 
done
 +
</source>
 +
 +
 +
== fehlerhafte problematische Einstellungen ==
 +
 +
 +
=== channels bei 2 GHz ===
 +
* nicht funktioniert hat auf dem wdr4300 channel 13
 +
 +
=== channels bei 5 GHz ===
 +
 +
* mesh hat nicht funktioniert bei den channels 64 oder 100
 +
* funktioniert haben 36, 44
 +
 +
* lime/lime-sdk/communities/.../.../etc/config/lime-defaults
 +
<source >
 +
# ....
 +
config lime 'wifi'
 +
        option channel_5ghz '36'
 +
# ...
 +
</source>
 +
 +
 +
=== mesh_id mit sonderzeichen ===
 +
 +
folgende mesh hat nicht funktioniert:
 +
 +
FRITZ!Box 7590 XD
 +
 +
* lime/lime-sdk/communities/.../.../etc/config/lime-defaults
 +
<source >
 +
# ....
 +
config lime 'wifi'
 +
        option ieee80211s_mesh_id meshssid
 +
# ...
 
</source>
 
</source>

Aktuelle Version vom 20. April 2020, 09:10 Uhr

Router: Openwrt | LEDE | Libre Mesh | qMp

Installation

  • auf dem Laptop
# https://lede-project.org/docs/guide-developer/install-buildsystem#examples_of_package_installations
apt-get install build-essential libncurses5-dev gawk git subversion libssl-dev gettext unzip zlib1g-dev file python

git clone  https://github.com/libremesh/lime-sdk
cd lime-sdk

# schau nach welche Profile existieren
./cooker --profiles=ar71xx/generic

# kompiliere und erstelle eine image vom profile tl-wdr4300-v1 der Architektur  ar71xx/generic
./cooker -c ar71xx/generic --flavor=lime_default --profile=tl-wdr4300-v1
# ...........
Collected errors:
 * opkg_install_cmd: Cannot install package lime-full.
Makefile:140: recipe for target 'package_install' failed
make[2]: *** [package_install] Error 255
make[2]: Leaving directory '17.01.2/ar71xx/generic/ib'
Makefile:110: recipe for target '_call_image' failed
make[1]: *** [_call_image] Error 2
make[1]: Leaving directory '17.01.2/ar71xx/generic/ib'
Makefile:196: die Regel für Ziel „image“ scheiterte
make: *** [image] Fehler 2
make: Verzeichnis „17.01.2/ar71xx/generic/ib“ wird verlassen

-> Firmware not cooked, something wrong happened on the ImageBuilder compilation process

# noch mal nur mit einem prozessor thread (J=1) und im Verbose Mode (V=s)
V=s J=1 ./cooker -c ar71xx/generic --flavor=lime_default --profile=tl-wdr4300-v1

# ....
-> Firmware for target ar71xx/generic, profile PROFILE=tl-wdr4300-v1 and flavor lime_default cooked!
Find the binaries in output/ar71xx/generic/tl-wdr4300-v1/lime_default directory


# verschiedene "Gerüche" zum kompilieren/kochen
more  flavors.conf

# danach schau in output/ ... 
# * wichtig factory für leere router und sysupgrade für vorinstallierte lede/qmp 
cd output/ar71xx/generic/tl-wdr4300-v1/lime_default/

# starte simple webserver
python -m SimpleHTTPServer 8001


# auf dem router
mount_root


cd /tmp/
wget 192.168.1:8001:/***sysupgrade.bin
sysupgrade -n ***sysupgrade.bin
 


./cooker --communities
cd communities/
git pull

cd ../
V=s J=1 ./cooker -c ar71xx/generic --flavor=lime_default --profile=tl-wdr4300-v1 --community=klimacamp/common
  • auf dem Router
    • router aus und kabel rausmachen
    • starten
    • reset beim blinken bis ganz schnell blinkt
    • kabel reinmachen
    • statische ip 192.168.1.* vergeben am laptop
telnet 192.168.1.1
cd /tmp/
wget http://192.168.1.79:8001/lede-17.01.2-klimacamp-common-ar71xx-generic-tl-wdr4300-v1-squashfs-sysupgrade.bin
sysupgrade -n lede-17.01.2-klimacamp-common-ar71xx-generic-tl-wdr4300-v1-squashfs-sysupgrade.bin




Hardware

wdr4300

Notizen

  • ein kompiliertes image mit einer mac kommen auf alle router, so wird gewährleistet das für die clients das roaming möglich ist
  • intranet
    • netzwerkkabel router stecker (wdr4300 gelb) sind wie die wlan connectens
    • wlan für clients
    • wlan (vlan/hidden) fürs mesh



Encrypted Mesh

Problem ist zur Zeit das beim lime-sdk das konfigurieren des verschlüsselten Mesh nicht funktioniert (AP und Mesh laufen beide standardmäßig auf 2ghz & 5ghz als workaround haben wir es getrennt 
  • Für unseren TP WDR 43000:
    • communities/nc/iee80211s-hotfix-tp/etc/config/lime-defaults


config lime system
	option hostname 'NC-%M4%M5%M6'
	option domain 'mesh.nc.local'
	option keep_on_upgrade 'libremesh base-files-essential /etc/sysupgrade.conf'

config lime network
	option primary_interface eth0
	option main_ipv4_address '10.5.0.0/21'
	option main_ipv6_address '2801:01e8:2::/64'
	option bmx6_mtu '1500'
	list protocols ieee80211s
	list protocols lan
	list protocols anygw
	list protocols batadv:%N1
	list protocols bmx6:13
	list protocols olsr:14
	list protocols olsr6:15
	list protocols olsr2:16
	list resolvers 4.2.2.2   # b.resolvers.Level3.net
	list resolvers 141.1.1.1 # cns1.cw.net
	list resolvers 2001:470:20::2 # ordns.he.net
	option bmx6_over_batman false
	option bmx6_pref_gw none
	option bmx7_over_batman false
	option anygw_mac "aa:aa:aa:%N1:%N2:aa"

config lime wifi
        option channel_2ghz '11'
        option channel_5ghz '48'
        option htmode_5ghz 'HT40'
        list modes 'ap'
        list modes 'ieee80211s'
        option ap_ssid 'OpenAP'
        option ap_encryption 'psk2+ccmp'
        option ap_key 'password'
        option ieee80211s_mesh_fwding '0'
        option ieee80211s_mesh_id 'Mesh'
        option ieee80211s_encryption 'psk2+ccmp'
        option ieee80211s_key 'otherpassword'
    • communities/nc/iee80211s-hotfix-tp/etc/uci-defaults/99-nchotfix-wireless
#!/bin/sh
sed -i "/config wifi-iface 'lm_wlan1_ap_radio1'/a \ \ \ \ option disabled '1'" /etc/config/wireless
sed -i "/config wifi-iface 'lm_wlan0_mesh_radio0'/a \ \ \ \ option disabled '1'" /etc/config/wireless
wifi down 
wifi up


    • communities/nc/iee80211s-hotfix-tp/
lime_nc="lime-full lime-debug  -dnsmasq -wpad-mini wpad-mesh"
    • cooker
 V=s J=1 ./cooker -c ar71xx/generic --flavor=lime_nc --profile=tl-wdr4300-v1 --community=nc/iee80211s-hotfix-tp


  • Für unseren ubnt-unifiac-lite:

wie TP WDR 43000 ausser:

communities/nc/iee80211s-hotfix-uq/etc/uci-defaults/99-nchotfix-wireless
#!/bin/sh
sed -i "/config wifi-iface 'lm_wlan0_ap_radio0'/a \ \ \ \ option disabled '1'" /etc/config/wireless
sed -i "/config wifi-iface 'lm_wlan1_mesh_radio1'/a \ \ \ \ option disabled '1'" /etc/config/wireless
 wifi down 
 wifi up
    • cooker
 V=s J=1 ./cooker -c ar71xx/generic --flavor=lime_nc --profile=ubnt-unifiac-lite --community=nc/iee80211s-hotfix-uq

Download

https://chef.altermundi.net/ls/libre-mesh/r44952/1509/ar71xx/



Packete Zum Kompelieren hinzufügen die noch nicht zur verfügung stehen

In das Repository wechseln z.B.

cd lime-sdk/

cp feeds.conf.default feeds.conf.default.local

ändern auf Masterbranch

vim feeds.conf.default.local 
#src-git libremesh https://github.com/libremesh/lime-packages.git;17.06
src-git libremesh https://github.com/libremesh/lime-packages.git;master


cp libremesh.sdk.config libremesh.sdk.config.local

Hinzufügen des Paketes

vim  libremesh.sdk.config.local
CONFIG_PACKAGE_lime-smart-wifi=m

cd feeds/libremesh

git status 
$ Auf Branch 17.06
$ Ihr Branch ist auf demselben Stand wie 'origin/17.06'.

git checkout master

Kompilieren

./cooker -b ar71xx/generic



Script

Script um endbenutzer auf meshnodes anzuzeigen

#!/bin/bash

#variablen
ncLocalMeshNode='10.5.0.1'


ncSsh='ssh -o StrictHostKeyChecking=no '
#lösche bekannte kennung des entfernten nodes
ssh-keygen -f ~/.ssh/known_hosts -R "$ncLocalMeshNode"


#endlosschleife, 
while [ true ] ; do

        #speicher datum in variable
        d=$(date +%Y-%m-%d_%H:%M:%S)

        echo
        echo $d

        #sende und empfange pakete an host und ip
        ping -c 1   heise.de | grep ttl
        ping -c 1   8.8.8.8 | grep ttl

        #frage meshrouter im meshnetzwerk ab
        for node  in `$ncSsh root@$ncLocalMeshNode bmx7  -c s=o  | grep : | awk '{print $2}'  | grep [a-z]`
        do
                echo $node

                #zeige anzahl der verbundenen endgeräte auf dem jeweiligen node                
                $ncSsh root@$node cat /tmp/dhcp.leases | wc -l
        done        
        
done


fehlerhafte problematische Einstellungen

channels bei 2 GHz

  • nicht funktioniert hat auf dem wdr4300 channel 13

channels bei 5 GHz

  • mesh hat nicht funktioniert bei den channels 64 oder 100
  • funktioniert haben 36, 44
  • lime/lime-sdk/communities/.../.../etc/config/lime-defaults
# ....
config lime 'wifi'
        option channel_5ghz '36'
# ...


mesh_id mit sonderzeichen

folgende mesh hat nicht funktioniert:

FRITZ!Box 7590 XD
  • lime/lime-sdk/communities/.../.../etc/config/lime-defaults
# ....
config lime 'wifi'
        option ieee80211s_mesh_id meshssid
# ...