Versione 13 del 2016-04-20 19:44:37

Nascondi questo messaggio
Italiano English
Modifica History Actions

Lombardia/Openwrt_batman

Come configurare batman-adv su openwrt

Prerequisiti

Assicurarsi che i seguenti pacchetti siano gia' presenti:

  • alfred
  • batctl
  • kmod-batman-adv

Configurazione di batman-adv

Il firmware attuale di openwrt non gestisce in modo completo l'inizializzazione di batman.

Il primo passo e' configurarlo nei file di configurazione di openwrt:

aggiungere in /etc/config/network:

config interface 'bat0'         
        option ifname 'bat0'    
        option proto 'static'   
        option mtu '1468'       
        option ipaddr '192.168.5.12'
        option netmask '255.255.255.0'
                                      
config interface 'mesh_wifi'          
        option mtu '1500'             
        option proto 'batadv'         
        option mesh 'bat0'            
                                      
config interface 'mesh_lan'           
        option ifname 'br-lan'        
        option proto 'batadv'         
        option mesh 'bat0'    

aggiungere in /etc/config/wireless (cambiando il bssid):

config wifi-iface
        option device   'radio0'
        option ifname   'mesh0'
        option network  'mesh-wifi'
        option mode     adhoc
        option ssid     'mesh'
        option bssid    '02:ca:fe:ca:ca:40'
        option encryption none

e verificare che la radio sia abilitata, commentando o cancellando la seguente riga:

       option disabled 1

Nota: questa parte potrebbe non essere piu' vera. Questa configurazione permette solo di aggiungere un interfaccia wifi alla mesh batman (vedere ad esempio) . Se si vuole configurare una qualsiasi interfaccia di rete, si puo' usare il seguente script, che va creato come /etc/init.d/batman:

#!/bin/sh /etc/rc.common

START=99
STOP=10

interfaces="br-antenna mesh0"

start() {        
        echo "Adding $interfaces to bat0 mesh"
        for i in $interfaces; do 
                batctl if add $i
        done
}   

stop() {
        echo "Removing $interfaces from bat0 mesh"
        for i in $interfaces; do
                batctl if del $i
        done
}

Mettere nella variabile interfaces, l'elenco delle interfaccie da includere nella mesh. E' consigliabile usare le interfaccie in bridge piuttosto che quelle fisiche. Per intenderci mettere br-lan, br-wan, invece che eth0 e simili.

Per abilitare al boot l'inizializzazione di batman, bisogna collegarsi in ssh, e dare i seguenti comandi:

/etc/init.d/batman enable
/etc/init.d/batman start

Configurazione di alfred

Per prima cosa bisogna abilitare alfred; modificare il file di configurazione:

  • /etc/config/alfred

e commentare la seguente riga che contiene disabled:

  config 'alfred' 'alfred'
          option interface 'br-lan'
          option mode 'master'
          option batmanif 'bat0'
          option start_vis '1'
          option run_facters '1'
  # REMOVE THIS LINE TO ENABLE ALFRED
  #       option disabled '1'

Abilitare poi il servizio alfred, in modo che parta in modo automatico, collegandosi con ssh, e lanciando questo comando:

/etc/init.d/alfred enable

seguito da questo comando, per farlo partire subito, senza riavviare:

/etc/init.d/alfred start