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 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

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

Split delle porte lan

Sui router casalinghi come ad esempio il tp-link wr841-n, le porte lan (quelle gialle nel router in questione) sono normalmente in modalita' bridge. Nota bene che gli esempi di configurazione sono riferiti a questo modello; i modelli diversi potrebbero cambiare i parametri.

E' possibile far diventare ciascuna porta una porta indipendente dalle altre. Per farlo bisogna modificare le impostazioni dello switch interno del router. Per chi vuole approfondimenti puo' guardare la seguente https://wiki.openwrt.org/doc/uci/network/switch.

Per prima cosa va modificato il file /etc/config/network, la parte riguardante lo switch nel seguente modo:

config switch                                  
        option name 'switch0'                  
        option reset '1'                       
        option enable_vlan '1'                 
                                               
config switch_vlan                             
        option device 'switch0'                
        option vlan '4'                        
        option ports '1 0t'           
                                      
config switch_vlan                    
        option device 'switch0'       
        option vlan 3                 
        option ports '2 0t'           
                                      
config switch_vlan                    
        option device 'switch0'       
        option vlan 2                 
        option ports '3 0t'           
                                      
config switch_vlan                    
        option device 'switch0'       
        option vlan 1                 
        option ports '4 0t'

In questo modo ogni porta dello switch e' configurato internamente su una vlan diversa. Dato che sul wr841n la numerazione delle porte sullo switch e' invertito rispetto alla numerazione scritta sull'esterno del router, l'associazione vlan - porta switch e' anch'essa invertita, in modo che vlan1 corrisponda poi alla porta 1, e cosi' via.

Fatto questo si possono poi configurare le singole porte:

config interface 'lan1'                        
        option type 'bridge'                   
        option ifname 'eth0.1'                 
        option proto 'static'                  
        option ipaddr '192.168.1.88'           
        option netmask '255.255.255.0'         
        option ip6assign '60'                  
        option network 'mesh_wifi'    

In questo modo la vlan1 dello switch, che ha come nome interfaccia eth0.1, dove ".1" indica la vlan, viene configurata. L'interfaccia di rete creata sara br-lan1. Il prefisso "br-" e' perche' e' stata definita di tipo bridge.

Se si vuole poi che la porta sia associata anche alla mesh batman, la configurazione sara' la seguente:

config interface 'mesh_lan1'
        option ifname 'br-lan1'
        option proto 'batadv'              
        option mesh 'bat0'

In alternativa si puo' mettere:

       option ifname 'eth0.1'

ma SOLO se eth0.1 non e' stato associato ad un bridge, come nell'esempio precedente del 'interface lan1'. Se lo fate la porta non funzionera' piu' correttamente.

A questo punto si puo' ripetere allo stesso modo per le altre porte, cambiando dove serve il numero di vlan.