OpenWrt

Da WikiLilis.

Introduzione

OpenWrt è un firmware embedded basato su linux orientato in particolar modo ai dispositivi wireless, come hotspot, switch etc. Esso permette di "liberare" il tuo hardware e fornirlo di capacità avanzate normalmente non presenti nei firmware rilasciati dal produttore.

OpenWrt è anche un 'framework' corredato da SDK e gestore di pacchetti ipkg, che permettono di personalizzarlo a proprio piacimento, e può essere utilizzato come base per creare la propria distribuzione firmware. Addirittura openwrt "gira" anche sul FreeRunner di OpenMoko, o sul ben nanonote.

Il sito di riferimento del progetto è http://www.openwrt.org

Releases

Ci sono due release:

  • White Russian
  • Kamikaze

La prima è la distribuzione "legacy", oramai deprecata e basata su kernel 2.4, la seconda invece è basata su kernel 2.6, se il proprio dispositivo è supportato conviene utilizzare quest'ultima.

Installazione

L'installazione di OpenWrt dipende molto dall'hw supportato, e quindi si invita a far riferimento al sito madre, sebbene su questo wiki veranno pubblicate le procedure tradotte in italiano ed arricchite dagli esiti degli esperimenti condotti sull'hardware in nostro possesso.

Su dispositivi atheros l'installazione si effettua lanciando una serie di comandi dal bootloader, in questo caso RedBoot.

Guida alla configurazione

Prima di iniziare a configurare il proprio router deve essere ben chiaro l'obiettivo che si vuole raggiungere, openwrt è estremamente configurabile, e permette di realizzare network-appliance molto sofisticati, vediamo ad esempio dei casi d'uso:

  • bridge semplice fra wifi e wired network
    si tratta di usare l'apparato come un semplice bridge fra la rete cablata e quella wireless, permettendo ad esempio di collegare laptop, cellulari etc alla propria rete
  • hotspot
    attraverso la rete wired l'apparato si collega ad internet ed accetta clients sulla rete wifi ai quali viene rilasciato ip e per i quali fa da router
  • wifi gateway
    l'apparato si collega ad internet attraverso la rete wifi ed accetta clients sulla rete wired ai quali viene rilasciato ip e per i quali fa da router
  • wifi bridge repeater
    l'apparato si collega ad una rete wifi, e fa da ap per un'altra rete wifi, i pacchetti vengono passati dall'una all'altra rete in modo trasparente, utili per estendere la portata di una rete senza usare cavi
  • wifi routed repeater
    come sopra, ma non vi è bridging, sulle due reti ci sono classi di indirizzamento diverse e l'apparato rilascia indirizzi ip per i quali fa da router
  • wds
    protocollo speciale per l'estensione di reti wireless
  • tutto quello che vi viene in mente ;)

Una volta individuato l'obiettivo si procede alla configurazione, poi magari vi scriverete una serie di batch file per passare da un profilo all'altro :)

Attenzione, si presuppone che kamikaze sia stato correttamente installato e che vi si possa accedere attraverso telnet o ssh.

Guida per gli sviluppatori

Lo sviluppo avviene cross-compilando su sistemi linux tradizionali.