Asus wl-500gp v2 e dd-wrt: nas, print server e altro (prima parte)

wl-500gpv2Ero da tempo alla ricerca di un oggetto che mi permettesse di trasformare un hard disk usb in un nas e allo stesso tempo funzionasse come print server, in più avrebbe dovuto avere il cuore linux per potere sperimentare altre applicazioni e naturalmente doveva essere economico e con un basso consumo elettrico. Uno dei possibili candidati era sicuramente il Linksys NSLU2 sul quale è possibile fare girare Debian. Un altro candidato era l’Asus wl-500gp, un router wireless il cui hardware simile all’NSLU2 prometteva anche qui di potere fare girare Dabian. La scelta è caduta proprio su quest’ultimo (rispetto al primo ha anche la parte wifi che anche se per ora riamane inutilizzata non fa mai male) nella versione 2. nslu2Purtroppo a oggi non sono riuscito nell’intento di farci girare Debian, ho seguito diverse guide, la maggior parte delle quali però sembrano riferirsi alla versione 1 del router.

Alcuni link di riferimento per quanto riguarda Debian su Asus wl-500gp:

Se qualcuno è riuscito nel intento mi farebbe molto piacere avere un aiuto a riguardo.

Qui sotto riporto le specifiche tecniche più rilevanti di questo router:

  • Architettura: MIPS
  • Vendor: Broadcom
  • Bootloader: CFE
  • Cpu: Broadcom BCM5354 a 240 Mhz
  • Flash: 8MiB (Macronix 29LV64’DB, 64K sector size
  • Ram: 32Mib
  • Wireless: BCM5354 802.11b/g
  • Ethernet Switch: 4 lan port +  1 wan port
  • Usb: 2 porte USB 2.0
  • Interfaccia seriale: interna

Non essendo stato in grado di fare funzionare Debian ho optato per l’installazione di DD-WRT, con il quale è comunque possibile installare software aggiuntivo a quello fornito con questo sistema. E’ bene chiarire che il wl-500gV2 viene fornito da Syslink con un firmware basato su Linux che già offre funzioni di nas, print server e quant’altro ma purtroppo il sistema è chiuso e non si riesce ad accedere alla shell e ad installare software aggiuntivo, in più il sistema di nas gestisce soltanto partizioni fat32 e su protocollo samba, volendo andare su qualcosa di pià evoluto o alternativo non è possibile.

Come dicevo prima la scelta è caduta su DD-WRT, per la scelta della versione del firmware, come spiegato su http://www.dd-wrt.com/wiki/index.php/USB_on_ASUS_WL500GPV2 è andata sulla ramo portato avanti da Eko che include alcune patch che migliorano il supporto usb. Nel wiki precedentemente indicato viene suggerito l’utilizzo di alcune versioni V24-sp2 tra cui la mega bulid 10404, io ho optato per questa ma in un’incarnazione più recente ovvero la 11461 del 17/01/2009. Questa versione offre, in più di quella menzionata nel wiki, il software proftp server già installato e la possibilità di alcune automazioni su l’usb quali l’automount delle partizioni presenti sul disco usb che collegheremo. Esistono anche versioni più recenti, ma quelle provate da me avevano problemi nella funzione di print server, infatti il kernel non creava il device lp0 nel momento della connessione di una stampante all’interfaccia usb.

Installazione DD-WRT

L’installazione può essere eseguita come suggerito nel wiki ufficiale http://www.dd-wrt.com/wiki/index.php/Installation#Asus_WL500G_Premium_V2 oppure come ho fatto io eseguendo i seguenti passi.

Naturalmente non mi assumo nessuna responsabilità su eventuali malfunzionamento che quanto indicato potrebbe causare, fate tutto a vostro rischio e pericolo.

Le seguenti operazioni sono eseguite su un pc con sistema operativo Ubuntu Linux 8.10.

  • Installare tftp:
    sudo apt-get install tftp
  • Con i seguenti comandi scaricare il firmware nella versione mini nel formato trx e nella versione mega in formato bin:
    wget http://www.dd-wrt.com/dd-wrtv2/downloads/others/eko/V24_TNG/svn11461/dd-wrt.v24-11461_NEWD_mini_asus.trx
    wget http://www.dd-wrt.com/dd-wrtv2/downloads/others/eko/V24_TNG/svn11461/dd-wrt.v24-11461_NEWD_mega.bin
  • Se il network manager è attivo cliccare con il tasto destro sulla propria icona e disabilitare la rete togliendo il simbolo di spunta su “abilita rete”.
  • Assegnare manualmente l’indirizzo 192.168.1.100 all’interfaccia di rete cablata con un comando simile a questo:
    sudo ifconfig eth0 192.168.1.100 up
  • Collegare un cavo di rete dall’interfaccia di rete del pc allo switch posto sul retro del WL-500gpV2.
  • Staccare l’alimentazione al WL500-gpV2 e attendere circa 20 secondi
  • Premere il pulsante di reset posto sulla parte posteriore e tenendolo premuto ricollegare il cavo di alimentazione, il pulsante deve essere tenuto premuto fin che la spia che indica l’alimentazione non inizia a lampeggiare. In questo modo il router si mette in modalità di riprogrammazione ed è visibile sul indirizzo 192.168.1.1.
  • Collegarsi al router con tftp e impartire i comandi per caricare il firmware mini dd-wrt.v24-11461_NEWD_mini_asus.trx:
    tftp 192.168.1.1

    a questo punto compare il prompt di tftp ed è possibile impartire gli altri comandi

    mode binary
    trace
    put dd-wrt.v24-11461_NEWD_mini_asus.trx

    se tutto stà andando nel verso giusto vedremo diverse scritte scorrere a video che stanno indicando lo stato di avanzamento di scrittura del firmware sulla flash del router.

  • terminato il caricamento del firmware ricomparirà il prompt di tftp e a questo punto è possibile uscire con il comando quit. Attendere 5 minuti circa dopo di che riavviare il router scollegando il cavo di alimentazionie per circa 20 secondi e ricollegandolo.
  • Dopo alcuni secondi dall’accenzione il WL500-gpV2 è pronto ed è possibile raggiungere il pannello di amministrazione puntando con un browser all’indirizzo 192.168.1.1
  • Dopo avere inserito l’utente root e la password admin viene richiesto di cambiare dati di autenticazione. Fatto ciò caricare il firmaware mega posizionandosi su Amministrazione/Aggiornamento firmware, scegliere il file dd-wrt.v24-11461_NEWD_mega.bin e cliccare su Aggiornamento, a questo punto inizierà il caricamento che potrebbe durare anche alcuni minuti, una volta finito il router si riavvierà e verrà ricaricato il pannello di controllo.

naps-load-firmware

Terminati i punti sopra indicati se tutto è andato per il verso giusto dd-wrt sarà pronto e funzionante sul nostro router.

Configurazione iniziale

Dato che sul router non mi serve la parte wireless ho provveduto a disabilitarla impostando a “Disabilitato” la voce “Modalità di rete wireless” dal menu “Wireless/Impostazioni di base”. Per cercare di risparmiare più ram possibile ho disattivato la maggiorparte dei servizzi non indispensabili: syslogd, telnet, ttraff daemon (sotto Services/Services), firewall (sotto Services/Firewall).

Ho invece abilitato l’ssh server (sotto Services/Services) per accedere alla shell.

ddwrt-sshInoltre ho abilitato la partizione jffs che servirà per installare software aggiuntivo direttamente sulla flash del router. Per fare questo dal menu “Amministrazione/Gestione” abilitare la voce “JFFS2”, salvare e applicare le modifiche, dopo di chè abilitare la voce “Pulisi JFFS2” e applicare le modifiche per formattare la parizione su flash. Riavviando il router la partizine dovrebbe essere creata e mostrare lo spazio disponibile.

ddwrt-jffs

Supporto USB e funzioni NAS fornite da DD-WRT

Posizionandoci su “Services/USB” possiamo configurare l’interfaccia usb nelle sue parti.

ddwrt-usb

E’ possibile abilitare l’usb 1.1 e/o 2.0 in base alle periferiche in nostro possesso, il supporto per le stampanti usb e lo storage usb per collegare chiavette o hard disk esterni. Proprio per quest’ultimo caso possiamo avere il supporto ext2/ext3 o fat, fare gestire l’automount (in modo che appena inserito il disco ,dd-wrt lo monta in automatico), il punto di montaggio e addirittura si può indicare uno script da lanciare nel momento in cui avviene il mount. La configurazione da me scelta è quella indicata nell’immagine qui sopra e come si può vedere l’automount è disattivato, questo perché richiesto da HDSamba come vedremo in un prossimo articolo.

Dalla sezione “Services/NAS” è possibile configurare il server ProFTPD presente su DD-WRT, questo darà l’accesso tramite protocollo ftp all’eventuale hard disk usb collegato al router. Come è possibile vedere dall’immagine possiamo anche le credenziali da utilizzare per accedere al servizio, l’utente deve essere separato con uno spazio dalla password scritta in chiaro.

ddwrt-nas

Per ora è tutto, nei prossimi articoli vedremo come implementare la funzione di print server, i protocolli samba e nfs per la gestione del Nas e optware che aprirà la strada all’installazione di pacchetti software aggiuntivi.

14 pensieri su “Asus wl-500gp v2 e dd-wrt: nas, print server e altro (prima parte)

  1. […] Asus wl-500gp v2 e dd-wrt: nas, print server e altro (prima parte) Author: admin | Categoria Linux Ero da tempo alla ricerca di un oggetto che mi permettesse di trasformare un hard disk usb in un nas e allo stesso tempo funzionasse come print server, in più avrebbe dovuto avere il cuore linux per potere sperimentare altre applicazioni e naturalmente doveva essere economico e con un basso consumo elettrico. Uno dei possibili […] Vai alla Fonte […]

  2. Asus wl-500gp v2 e dd-wrt: nas, print server e altro…

    Ecco una guida che permette di trasformare un hard disk usb in un nas e allo stesso tempo funzionare come print server, il tutto con un cuore linux….

  3. Ciao! Ero interessato anch’io all’acquisto di questo router da moddare ovviamente con dd-wrt… ma le prestazioni in lettura/scrittura su disco a quanto sono? Perchè nel wiki di dd-wrt parlava di 3-400 kByte/s… molto pochi, non bastano manco per una 7mbit :/

  4. Effettivamente le peformance non sono il massimo.

    Ho fatto alcune prove su un file circa 400MB in download che upload dal disco usb collegato al wl-500gp, questi sono i risultati:

    trasferimento con samba
    download: 1,66MB/sec
    upload: 1,43MB/sec

    trasferimento con nfs
    download: 2,28MB/sec
    upload: 2,25MB/sec

    trasferimento con ftp
    download: 2,46MB/sec
    upload: 3,05MB/sec

    Spero di esserti stato utile.
    Ciao.

  5. ciao ma secondo te io ke ho un’adsl da 640 kbp/s avrei problemi di velocità di trasferimento?
    come faccio a capire sel mio hard disk esterno è compatibile?

  6. @Federico
    Toricamente se utilizzi tutta la banda con una 640kb dovresti scaricare a circa 70 KByte, quindi direi che da questo punto di vista non ci sono problemi.
    Invece il discorso è diverso quando vai interagire con il router dalla rete locale, li il limite dell’usb è evidente.

  7. @lejubila
    io userò come route l’alice gate 2 datomi da telecom, dici ke avvertirei tanti rallentamente in fase di download? tu qnt file mettevi a scaricare?
    ah un’altra cosa ma la wlan per nella condivisione lan è abbastanza veloce per vedere un film? (con pc lontano dal router collegato ad esso tramite wifi)

  8. @Federico
    Io non tenevo sempre amule attivo, ma quando lo era avevo circa una quindicina di download attivi. Il sistema swappava in continuazione perché l’altro collo di bottiglia del wl500gp v2 è anche la ram, solo 16MB. E’ anche per questo che ho deciso di abbandonarlo.
    Senza amule attivo, riproducevo un file divx senza problemi, raramente si notava qualche interruzione.

    Ciao.

  9. Ciao.
    Io per rissparmiare spazio ho messo su la eko mini usb.
    Il print server gira che è una meraviglia, ma ho problemi con la procedura per mettere su HDsamba2.
    TASK 3: Confirming presence of 3 HD partitions….
    cat: can’t open ‘/proc/scsi/usb-storage-0/0’: No such file or directory
    cat: can’t open ‘/proc/scsi/usb-storage-0/0’: No such file or directory
    ERROR: Failed to detect a USB Storage Device at usb-storage-0/0
    ERROR: Please double check how you’ve partitioned and formatted your HD…
    ERROR: Is the correct HD plugged in???
    ERROR: Is it turned on???
    TERMINATING SCRIPT IMMEDIATELY
    ls: /dev/discs/disc0/: No such file or directory
    ERROR: Failed to detect /part1 /part2 /part3
    ERROR: Please double check how you’ve partitioned your HD…
    ERROR: If you’re sure you partitioned correctly, try rebooting the router…
    TERMINATING SCRIPT IMMEDIATELY

    Ecco la schermata
    Calcola che la chiavetta usb è stata formattata con knoppix live e create le tre partizioni con gparted.
    Idee?
    Grazie, Marco

  10. @Marco
    Ciao, premetto che non uso più l’Asus wl500gp v2 e quindi non saprei fare verifiche sul campo.
    Comunque l’errore che ti da indica che non vengono riconosciute le partizioni sulla chiavetta usb o addirittura non viene vista tutta la chiavetta (non sono sicuro su quale delle due ipotesi).
    Ti ricordo che questa versione di dd-wrt supporta partizioni del tipo ext2/ext3 e FAT. Quindi se hai formattato le partizioni con un filesystem dverso queste non verranno riconosciute. Personalmente ti consiglio ext3 che è poi quello che avevo usato io.

    Spero di esserti stato di aiuto.
    Tienimi aggiornato.

    Ciao.

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *