Italiano English
Modifica History Actions

Kamikaze

Procedura Obsoleta. Uscite nuove release di Openwrt!

Kamikaze è l'ultima versione di OpenWRT.

Non includendo al suo interno l'interfaccia web, installazione sarà formata da più passi.

Kamikaze

Al momento l'ultima versione del firmware per il chipset è la 7.09 e può essere scaricata da qui.

Scegliere nell'elenco quella relativa al proprio router secondo questa tabella:

Firmware OpenWRT per router Linksys

Nome File

Modello Linksys

openwrt-wrt54g-2.4-squashfs.bin

WRT54G (e WRT54GL)

openwrt-wrt54gs-2.4-squashfs.bin

WRT54GS

openwrt-wrt54gs_v4-2.4-squashfs.bin

WRT54GS v4

Farne una copia con un nome più comodo da usare:

 Computer$ cp openwrt-wrt54g-2.4-squashfs.bin  o.bin

Calcolare l'MD5 del file con:

 Computer$ md5sum o.bin

Controllare che l'MD5 sia uguale a quello mostrato nella pagina md5sums cercando al suo interno la stringa di checksum MD5 restituita dal comando precedente.

Collegare un cavo Ethernet dal PC al Linksys e cambiare IP al PC con il comando:

 Computer$ sudo ifconfig eth0 192.168.1.2 up

TFTP

Usare il client TFTP che punti al router con:

 Computer$ tftp 192.168.1.1

all'interno della shell TFTP eseguire i seguenti comandi:

 tftp> binary

 tftp> rexmt 1

 tftp> timeout 60

 tftp> trace

Il prossimo (ultimo) comando avvia il trasferimento, va avviato sincronizzandolo con l'accensione del router, quindi premere invio SOLO una frazione di secondo DOPO aver alimentato il Linksys.

 tftp> put o.bin

Se tutto va bene, verrà mostrato il trasferimento del file con un output simile a questo:

 sent WRQ <file=o.bin, mode=octet>
 received ACK <block=0>
 sent DATA <block=1, 512 bytes>
 received ACK <block=1>
 sent DATA <block=2, 512 bytes>
 received ACK <block=2>
 ...
 ...
 sent DATA <block=3592, 512 bytes>
 received ACK <block=3592>
 sent DATA <block=3593, 32 bytes>
 received ACK <block=3593>
 Sent 1839136 bytes in 8.2 seconds

Finito il quale, il router flasherà il nuovo firmware autonomamente (impiegando circa un paio di minuti).

Sapremo che l'operazione sarà conclusa quando vedremo il led Power smettere di lampeggiare.

Uscire da TFTP con il comando:

 tftp> quit

Verifichiamo lo stato di raggiungibilità del router con il comando:

 Computer$ ping 192.168.1.1

tftp su Gentoo

Ci sono diversi ebuild che danno un client tftp su Gentoo

Quello che funziona bene è questo:

net-ftp/tftp-hpa

Cambio Password

Aprire una sessione Telnet sul router:

 Computer$ telnet 192.168.1.1

Cambiare la password di root:

 Router$ passwd

Riavviare il router:

 Router$ reboot

Sbracare il firewall maledetto

OpenWRT ha un firewall maledetto e paranoico, per sbracarlo completamente aggiungere in coda al file /etc/firewall.user :

iptables -P INPUT ACCEPT                                                        
iptables -P OUTPUT ACCEPT                                                       
iptables -P FORWARD ACCEPT                                                      
iptables -t nat -F                                                              
iptables -F 

Accesso a Internet per mezzo della precedente connessione

Può essere necessario configurare un Access Point per destinarlo alla connessione ad una rete diversa da Internet. Come ad esempio Ninux.

In questi casi può servire di far accedere temporaneamente ad Internet il nostro Access Point passando per il nostro computer.

Ad esempio può essere necessario per installare automaticamente i pacchetti del repository di X-Wrt, come vedremo sotto.

Questo presuppone che il nostro computer sia già collegato ad Internet.

Occorre abilitare il nostro PC allo smistamento dei pacchetti che riceve (IP forwarding). Ad esempio con Linux, ricordandoci di diventare superuser:

  Computer# echo 1 > /proc/sys/net/ipv4/ip_forward

Se si usa un Internet provider che non consente l'accesso da più di un IP, si può anche abilitare il masquerading

  Computer# iptables -t nat -I POSTROUTING -o <ethn> -j MASQUERADE

Nota: sostituire <ethn> con la propria interfaccia di rete collegata ad Internet.

Di seguito va informato il nostro Access Point su quale strada seguire per uscire e su dove cercare il DNS.

Aprire una shell in modalità SSH sul router:

 Computer$ ssh root@192.168.1.1

Nota:

  • Se in precedenza ci si è connessi ad un altro server SSH con lo stesso IP,

    il comando precedente restituirà il messaggio: WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED!

    • Niente Panico! :)

    Per ovviare al problema basterà rinominare il file ~/.ssh/known_hosts con il comando:

     Computer$ mv ~/.ssh/known_hosts ~/.ssh/known_hosts.bak

Inviare i seguenti comandi per impostare default gateway e DNS server.

 Router$ route add default gw 192.168.1.2
 Router$ echo "nameserver 151.99.125.2" >>/etc/resolv.conf

IPKG

Ipkg è un gestore pacchetti (stile apt-get di Debian) integrato in OpenWRT.

Permette di installare a run-time funzioni aggiuntive al router, senza esser costretti a ricompilare (e ri-flashare) il firmware ogni volta.

Collegare un secondo cavo ethernet con accesso ad internet nella presa omonima del router.

Aprire una shell in modalità SSH sul router:

 Computer$ ssh root@192.168.1.1

Modificare la lista dei repository con l'editor di testi (vi) integrato in OpenWRT:

 Router$ vi /etc/ipkg.conf

Spostare il cursore sotto l'ultima riga che inizia con "src"

Entrare in modalità inserimento di vi (tasto I) ed aggiungere una riga vuota

Incollarvi la seguente stringa: src X-Wrt http://downloads.x-wrt.org/xwrt/kamikaze/7.09/brcm-2.4/packages

Uscire dalla modalità inserimento di vi (tasto ESC)

Salvare ed uscire da vi (comando :wq)

Aggiornare la lista pacchetti di IPKG con il comando:

 Router$ ipkg update

WEBif

Installare il pacchetto dell'interfaccia WEB (webif) con il comando:

 Router$ ipkg install webif

Aprire la pagina http://192.168.1.1 con il proprio browser preferito

Username: root Password: (quella inserita con il comando passwd)

Configurare:

Menu: System --> Settings:

Menu: Network --> Wireless:

  • Radio: ON

  • Canale: 8

  • Network: none

  • Mode: Ad-Hoc

  • ESSID: ninux.org

  • Encryption Type: Disabled

Salvare ed applicare i cambiamenti.

OLSR

Installare il pacchetto OLSR con il comando:

 Router$ ipkg install olsrd

Configurarlo come segue

 Router$ vi /etc/olsrd.conf

Cercare UseHysteresis ed impostarlo a no

Cercare LinkQualityLevel ed impostarlo a 2

Cercare la stringa:# !!CHANGE THE INTERFACE LABEL(s) TO MATCH YOUR INTERFACE(s)!!

e cambiare Interface "XXX" "YYY" in Interface "wl0"

Salvare e chiudere (:wq)

Modificare /etc/config/network aggiungendo l'interfaccia wl0 di cui sopra con:

 Router$ vi /etc/config/network

Aggiungere in fondo al file le seguenti 8 righe di configurazione:

#### ADDED FOR NINUX.ORG
 config interface     "ninuxif"
       option ifname    "wl0"
       option proto     "static"
       option ipaddr    "172.16.CAP.1"
       option netmask   "255.255.0.0"
       option gateway   ""
       option dns       "160.80.2.5"

Sostituendo l'ottetto CAP in "172.16.CAP.1" con il Codice_di_Avviamento_Postale della vostra zona.

Il tutto, ovviamente, compatibilmente con due vincoli:

  1. Che sia compreso tra 0 e 254

  2. Aver ottenuto il via libera dagli altri utenti di Ninux.org (onde evitare conflitti di IP)

Ora avviare OLSR per verificare se si collega alla rete Ninux eseguendo:

 Router$ olsrd

Se tutto va bene vedremo (ripetendo il comando) aumentare le rotte di routing:

 Router$ route

Per configurare l'avvio automatico di OLSRd ad ogni reboot si può usare l'interfaccia web

Menu: System --> Startup:

Aggiungere in fondo al file:

  • olsrd

Oppure

 Router$ ln -s /etc/init.d/olsrd /etc/rc.d/S98olsrd

Riferimenti Esterni

(EN) Sito ufficiale di OpenWRT

(EN) Installare OpenWRT tramite TFTP