[Progetto] Gestione del router via UPnP (incluso modifica porte mappate)

Iniziative e progetti della comunità legati a Ubuntu.
Regole della sezione
Questa sezione ha lo scopo di raccogliere le iniziative/progetti della nostra Comunità legati ad Ubuntu. I progetti ospitati nascono da iniziative degli utenti o gruppi di utenti. In futuro i progetti potrebbero rimanere iniziative "personali" o essere integrate nella distribuzione, sponsorizzate da Ubuntu o da Canonical a discrezione dei responsabili. All'interno di essa sarà possibile inserire delle discussioni che hanno la funzione di pubblicizzare avvenimenti, iniziative e progetti software su Ubuntu e GNU/Linux in generale. Sarà inoltre possibile per gli utenti proporre lo sviluppo di nuovi software e in questo caso la discussione di richiesta avrà la funzione di generare un requisito funzionale del prodotto da sviluppare.

Sezione I - Iniziative
  • Fanno parte di iniziative, ad esempio, le seguenti categorie: corsi, progetti editoriali, libri.
  • La segnalazione di un'iniziativa avviene creando una discussione con l'annuncio.
  • Una volta effettuata la segnalazione, la discussione viene chiusa dal Gruppo Forum.
  • Se l'iniziativa esposta comporta un costo di adesione o fruizione, questo deve essere esplicitamente riportato all'interno della discussione.
  • È obbligatorio segnalare all'interno della discussione i riferimenti per poter contattare/partecipare all'iniziativa.
Sezione II - Progetti
  • La segnalazione di un progetto software, come per le iniziative, avviene e si sviluppa all'interno di una singola discussione.
  • Sarà consentito l'inserimento di software solo se rilasciati sotto licenza GPL (in tutte le sue versioni) o equivalente FOSS, tale da garantire agli utenti l'utilizzo del prodotto senza restrizioni e agli sviluppatori la proprietà intellettuale del codice prodotto.
  • Nell'oggetto della discussione dovrà essere riportata la categoria (es. [Iniziativa], [Progetto] o [Proposta]) e una semplice descrizione del progetto.
  • Se il progetto ha già un sito che lo ospita sarà a discrezione del Gruppo Forum chiuderla come segnalazione o lasciarla aperta.
  • Se il progetto non ha un sito che lo ospita si potranno aprire due discussioni, una per proporre modifiche/implementazioni (dove nel titolo occorre specificare [sviluppo]) ed una per segnalare problemi (e nel titolo dovrà comparire [supporto]).
  • Non è consentita l'apertura di nuove discussioni in riferimento a versioni superiori o modificate di un prodotto già riportato in precedenza.
  • Se il software oggetto del progetto ha una dimensione non superiore ai 128 kB, per prodotti che non hanno un sito che li ospita, sarà possibile allegarlo alla discussione.
Sezione III - Proposte
  • Una proposta deve essere eseguita e si svilupperà all'interno di una singola discussione.
  • Le proposte dovranno essere inserite direttamente nella sezione "Progetti della Comunità".
  • Dovranno essere specificate le funzionalità che devono essere sviluppate.
  • Non dovranno essere riportate diciture tipo "...deve fare come questo software...", ma indicare nel miglior modo possibile i requisiti.
  • Una volta segnalata la discussione resterà aperta per consentire uno scambio di idee su come sviluppare il codice o finché gli sviluppatori non forniranno una soluzione (da pubblicizzare poi, come visto prima, nella sezione Progetti) che ne soddisfi il requisito.
Per quanto non esposto sopra, si fa comunque riferimento al Regolamento del forum ed al Codice di Condotta della Comunità.
Avatar utente
DnaX
Prode Principiante
Messaggi: 237
Iscrizione: domenica 7 ottobre 2007, 23:47
Desktop: GNOME Shell
Distribuzione: Ubuntu 12.04 LTS 32bit
Località: Pisa
Contatti:

[Progetto] Gestione del router via UPnP (incluso modifica porte mappate)

Messaggio da DnaX »

Salve a tutti, quello che vi presento oggi è un semplice applicativo per ricevere alcune informazioni da proprio router tramite il protocollo UPnP, quello usato da molte applicazioni per aprire automaticamente le porte. Lo stato dell'applicazione è embrionale, la GUI non è ancora fissata e cerco anche suggerimenti a riguardo ed anche le funzionalità non sono del tutto presenti. Lato codice devo sempre implementare build system per compilare tutto automaticamente controllando le dipendenze di compilazione, ma la mia scelta sarà verso waf come già uso per la versione in sviluppo di Ircp Tray.
Immagine
Le informazioni che è possibile ricevere:
  • Nome del router (non sempre però corrisponde al modello esatto)
  • Informazioni sul produttore (via tooltip)
  • Stato della connessione WAN (anche se pare sia quantomeno inutile con i router + modem)
  • IP esterno
  • URL della pagina di configurazione via web
  • Velocità di download e upload del router stesso
  • Le eventuali porte impostate via UPnP dalle applicazioni
  • Altre informazioni sono disponibili solo tramite la shell, se vedrò che sono rilevanti le metterò nella GUI
Interazioni possibili:
  • Rimozione di una porta mappata
  • Aggiunta di una porta mappata
Per installare se siete su Maverick vi basterà andare a trovare l'applicazione dall'Ubuntu Software Center o dare "sudo apt-get install upnp-router-control". Altrimenti dovrete scaricare il pacchetto relativo al programma dal mio PPA. Se volete rimanere aggiornati basta inserire il mio PPA tra le vostre sorgenti software, sulla pagina c'è scritto come fare.

Per compilare il tutto servono le versioni -dev di queste librerie, libgtk e libgupnp (e libdownload dalla revisione 60).

Per scaricare il codice attuale occorre installare Bazaar:

Codice: Seleziona tutto

sudo apt-get install bzr
Quindi per scaricare il programma dall'ultima versione di sviluppo digitare questo:

Codice: Seleziona tutto

bzr branch lp:upnp-router-control
Dalla cartella appena creata per compilare digitare questi comandi in sequenza (ovviamente fermatevi se qualcuno di essi ritorna un errore).

Codice: Seleziona tutto

./waf configure
./waf build
sudo ./waf install
Fatemi sapere come vi funziona!
Così posso implementare altre caratteristiche senza che si accavallino bug su bug.
Problemi noti:
  • Con il router Netgear DG834 non sarà possibile visualizzare alcuni dati a causa di un bug nel server UPnP del router stesso.
Ultima modifica di DnaX il sabato 4 settembre 2010, 17:12, modificato 1 volta in totale.
Avatar utente
cristian_c
Accecante Asceta
Accecante Asceta
Messaggi: 23422
Iscrizione: lunedì 29 ottobre 2007, 11:31

Re: [Progetto] Gestione del router via UPnP (incluso modifica porte mappate)

Messaggio da cristian_c »

credo che sia una bellissima iniziativa che serviva, complimenti. Sarà utile a molti possessori di router che non sono molto pratici  (good)
UP! Unreal Project: il futuro inizia qui. Crusade è tra noi
È scienza!
Avatar utente
DnaX
Prode Principiante
Messaggi: 237
Iscrizione: domenica 7 ottobre 2007, 23:47
Desktop: GNOME Shell
Distribuzione: Ubuntu 12.04 LTS 32bit
Località: Pisa
Contatti:

Re: [Progetto] Gestione del router via UPnP (incluso modifica porte mappate)

Messaggio da DnaX »

Grazie, beh vedo che molti alle volte per impostare delle porte fanno i salti mortali e soprattutto le interfacce web sono tutte diverse!
Avatar utente
cristian_c
Accecante Asceta
Accecante Asceta
Messaggi: 23422
Iscrizione: lunedì 29 ottobre 2007, 11:31

Re: [Progetto] Gestione del router via UPnP (incluso modifica porte mappate)

Messaggio da cristian_c »

DnaX ha scritto: Grazie, beh vedo che molti alle volte per impostare delle porte fanno i salti mortali e soprattutto le interfacce web sono tutte diverse!
Sapessi quanti post vengono aperti per problemi di questo tipo con i router!  :-[
UP! Unreal Project: il futuro inizia qui. Crusade è tra noi
È scienza!
Avatar utente
DnaX
Prode Principiante
Messaggi: 237
Iscrizione: domenica 7 ottobre 2007, 23:47
Desktop: GNOME Shell
Distribuzione: Ubuntu 12.04 LTS 32bit
Località: Pisa
Contatti:

Re: [Progetto] Gestione del router via UPnP (incluso modifica porte mappate)

Messaggio da DnaX »

Uppato il progetto su Launchpad e aggiornato il codice. Voglio sentire le vostre opinioni! Testatelo su più modelli di router che potete!!! In particolare quelli che danno una interfaccia web per configurarli (roba della Alice e la nuova Vodafone station).
demitex
Prode Principiante
Messaggi: 11
Iscrizione: giovedì 4 giugno 2009, 18:44

Re: [Progetto] Gestione del router via UPnP (incluso modifica porte mappate)

Messaggio da demitex »

Da giorni stavo cercando un programma simile per configurare il router...ma purtroppo sono nuovo in Ubuntu e non so come farlo funzionare...ho scaricato Bazaar ma poi non so piu cosa fare....
Avatar utente
DnaX
Prode Principiante
Messaggi: 237
Iscrizione: domenica 7 ottobre 2007, 23:47
Desktop: GNOME Shell
Distribuzione: Ubuntu 12.04 LTS 32bit
Località: Pisa
Contatti:

Re: [Progetto] Gestione del router via UPnP (incluso modifica porte mappate)

Messaggio da DnaX »

C'è tutto scritto all'inizio del topic. Cosa è che non ti è chiaro?
demitex
Prode Principiante
Messaggi: 11
Iscrizione: giovedì 4 giugno 2009, 18:44

Re: [Progetto] Gestione del router via UPnP (incluso modifica porte mappate)

Messaggio da demitex »

ti copio quello che sto facendo sul terminale:

casa@ubuntu:~$ sudo apt-get install bzr
[sudo] password for casa:
Lettura della lista dei pacchetti in corso... Fatto
Generazione dell'albero delle dipendenze in corso     
Lettura informazioni sullo stato... Fatto       
bzr è già alla versione più recente.
0 aggiornati, 0 installati, 0 da rimuovere e 11 non aggiornati.
casa@ubuntu:~$ bzr branch lp:upnp-port-mapper
You have not informed bzr of your Launchpad ID, and you must do this to
write to Launchpad or access private data.  See "bzr help launchpad-login".
bzr: ERROR: Target directory "upnp-port-mapper" already exists.               
casa@ubuntu:~$

Quindi a quel punto non so cosa fare...sempre nel terminale che cosa devo digitare?
sentinella86

Re: [Progetto] Gestione del router via UPnP (incluso modifica porte mappate)

Messaggio da sentinella86 »

Molto utile!!
Potrebbe fare in modo che, quando ci si disconnette, al successivo riavvio il programma apra automaticamente le porte già impostate? Ovviamente nel caso di un router che utilizza un ip dinamico.
Avatar utente
DnaX
Prode Principiante
Messaggi: 237
Iscrizione: domenica 7 ottobre 2007, 23:47
Desktop: GNOME Shell
Distribuzione: Ubuntu 12.04 LTS 32bit
Località: Pisa
Contatti:

Re: [Progetto] Gestione del router via UPnP (incluso modifica porte mappate)

Messaggio da DnaX »

demitex ha scritto: ti copio quello che sto facendo sul terminale:

casa@ubuntu:~$ sudo apt-get install bzr
[sudo] password for casa:
Lettura della lista dei pacchetti in corso... Fatto
Generazione dell'albero delle dipendenze in corso       
Lettura informazioni sullo stato... Fatto       
bzr è già alla versione più recente.
0 aggiornati, 0 installati, 0 da rimuovere e 11 non aggiornati.
casa@ubuntu:~$ bzr branch lp:upnp-port-mapper
You have not informed bzr of your Launchpad ID, and you must do this to
write to Launchpad or access private data.  See "bzr help launchpad-login".
bzr: ERROR: Target directory "upnp-port-mapper" already exists.               
casa@ubuntu:~$

Quindi a quel punto non so cosa fare...sempre nel terminale che cosa devo digitare?
Prova ad entrare nella cartella upnp-port-mapper, se ci sono dei file prova a compilare, forse dà quel messaggio solo per informarti che non potrai scrivere nel progetto (e ci mancherebbe!).
demitex
Prode Principiante
Messaggi: 11
Iscrizione: giovedì 4 giugno 2009, 18:44

Re: [Progetto] Gestione del router via UPnP (incluso modifica porte mappate)

Messaggio da demitex »

Purtroppo credo che qui il problema sia solamente la mancanza di conoscienza del sottoscritto in Ubuntu. difatti non so fare praticamente niente di quello che scrivi....peccato perchè mi sarebbe veramente stato utile per sbloccare il router...
RM1987
Prode Principiante
Messaggi: 2
Iscrizione: lunedì 8 giugno 2009, 12:36

Re: [Progetto] Gestione del router via UPnP (incluso modifica porte mappate)

Messaggio da RM1987 »

Dai questi comandi da terminale:
cd /home/TUONOME/upnp-port-mapper
./waf configure
./waf build
sudo ./waf install
Ultima modifica di RM1987 il lunedì 8 giugno 2009, 13:02, modificato 1 volta in totale.
demitex
Prode Principiante
Messaggi: 11
Iscrizione: giovedì 4 giugno 2009, 18:44

Re: [Progetto] Gestione del router via UPnP (incluso modifica porte mappate)

Messaggio da demitex »

Adesso inizio a capire...

ho fatto quello che mi dici e configurando il waf mi esce il seguente messaggio:

Checking for program gcc                : ok /usr/bin/gcc
Checking for compiler version            : ok 4.3.3
Checking for program cpp                : ok /usr/bin/cpp
Checking for program ar                  : ok /usr/bin/ar
Checking for program ranlib              : ok /usr/bin/ranlib
Checking for program msgfmt              : not found
/home/casa/upnp-port-mapper/wscript:22: error: The program msgfmt (gettext) is mandatory!

Credo che ci sia qualche file che manca, stavo leggendo che bisogna avere delle librerie aggiornate...come si fa?
RM1987
Prode Principiante
Messaggi: 2
Iscrizione: lunedì 8 giugno 2009, 12:36

Re: [Progetto] Gestione del router via UPnP (incluso modifica porte mappate)

Messaggio da RM1987 »

demitex ha scritto: Adesso inizio a capire...

ho fatto quello che mi dici e configurando il waf mi esce il seguente messaggio:

Checking for program gcc                 : ok /usr/bin/gcc
Checking for compiler version            : ok 4.3.3
Checking for program cpp                 : ok /usr/bin/cpp
Checking for program ar                  : ok /usr/bin/ar
Checking for program ranlib              : ok /usr/bin/ranlib
Checking for program msgfmt              : not found
/home/casa/upnp-port-mapper/wscript:22: error: The program msgfmt (gettext) is mandatory!

Credo che ci sia qualche file che manca, stavo leggendo che bisogna avere delle librerie aggiornate...come si fa?

Devi installare libglade2-dev, libgtk2.0-dev e libgupnp-1.0-dev......installali con synaptic  (b2b)
demitex
Prode Principiante
Messaggi: 11
Iscrizione: giovedì 4 giugno 2009, 18:44

Re: [Progetto] Gestione del router via UPnP (incluso modifica porte mappate)

Messaggio da demitex »

Grazie RM1987, sono riuscito ad installarlo con successo.

Il problema è che non posso mappare le porte. Il numero di IP non appare e non ho la possibilità di aggiungere porte. Per info, il mio router è un Billion BIPAC 5200SR3
Avatar utente
DnaX
Prode Principiante
Messaggi: 237
Iscrizione: domenica 7 ottobre 2007, 23:47
Desktop: GNOME Shell
Distribuzione: Ubuntu 12.04 LTS 32bit
Località: Pisa
Contatti:

Re: [Progetto] Gestione del router via UPnP (incluso modifica porte mappate)

Messaggio da DnaX »

AGGIORNAMENTO: Ho finalmente caricato la prima versione 0.1 (incompleta) sul mio PPA:
ttps://launchpad.net/~dnax88/+archive/ppa
Basta scaricare il file .deb per installarlo con un comodo doppio click.

@demitex: Esegui il programma dalla console e copia qui tutto quello che viene scritto. Dopotutto io l'ho testato solo col mio router e col U.S. Robotics USR 8054.
Attualmente non è possibile mappare le porte, solo visualizzarle, nella versione 0.2 implemento l'aggiunta di nuove porte.

@sentinella86: Beh, questa è una ottima feature, la inserisco su Launchpad. Ovviamente andrebbero reinserite solo le porte impostate manualmente dal programma, non quelle impostate da altri programmi come Transmission o aMule.
Avatar utente
DnaX
Prode Principiante
Messaggi: 237
Iscrizione: domenica 7 ottobre 2007, 23:47
Desktop: GNOME Shell
Distribuzione: Ubuntu 12.04 LTS 32bit
Località: Pisa
Contatti:

Re: [Progetto] Gestione del router via UPnP (incluso modifica porte mappate)

Messaggio da DnaX »

AGGIORNAMENTO: Con la revisione 6 dovrebbero essere corretti i bug per cui non viene visualizzato l'Ip e lo stato della connessione. Ho inoltre migliorato le informazione di debug (da comunicare ogni volta che si creano errori).

Per aggiornare la propria copia locale scaricata da bzr occorre digitare questo comando dall'interno della cartella del programma:

Codice: Seleziona tutto

bzr pull
Presto sarà disponibile il pacchetto deb.

Inoltre implementerò a breve la funzione per aggiungere le porte.
demitex
Prode Principiante
Messaggi: 11
Iscrizione: giovedì 4 giugno 2009, 18:44

Re: [Progetto] Gestione del router via UPnP (incluso modifica porte mappate)

Messaggio da demitex »

Dnax, di seguito ti invio quello che esce a terminale:

* UPnP Resource discovery started...
* Initializing GUI...
* Showing GUI...
==> Device Available: ADSL Modem/Router IGD
Enum services...
> Service Available: urn:upnp-org:serviceId:L3Forwarding1
Enum sub-devices (recursive)...
* Sub-Device Available: ADSL Modem/Router IGD
==> Device Available: ADSL Modem/Router IGD
Enum services...
> Service Available: urn:upnp-org:serviceId:LANHostCfg1
* Sub-Device Available: ADSL Modem/Router IGD
==> Device Available: ADSL Modem/Router IGD
Enum services...
> Service Available: urn:upnp-org:serviceId:WANCommonIFC1
Enum sub-devices (recursive)...
* Sub-Device Available: ADSL Modem/Router IGD
==> Device Available: ADSL Modem/Router IGD
Enum services...
> Service Available: urn:upnp-org:serviceId:WANIPConn1
  => Subscribed to WANIPConn events
> Service Available: urn:upnp-org:serviceId:WANDSLLinkC1
Event: Connection status: Connected
Event: External IP: 0.0.0.0
Event: Ports mapped: 0
==> List port mapped (0)
Avatar utente
DnaX
Prode Principiante
Messaggi: 237
Iscrizione: domenica 7 ottobre 2007, 23:47
Desktop: GNOME Shell
Distribuzione: Ubuntu 12.04 LTS 32bit
Località: Pisa
Contatti:

Re: [Progetto] Gestione del router via UPnP (incluso modifica porte mappate)

Messaggio da DnaX »

Pare che sia proprio il tuo router ad inviare un IP nulla (0.0.0.0). Comunque sia prova ad aggiornare il programma all'ultima revisione come ho scritto nel post precedente. Ci sono alcuni miglioramenti sia per quanto riguarda l'output del debug sia nella lettura delle informazioni.

Per verificare che riporti correttamente le porte mappate prova ad avviare Transmission o Skype che aprono delle porta tramite l'UPnP.

D'altra parte il programma l'ho sviluppato con il mio router (NETGEAR DGN2000 Router) e mi sono accorto che ogni router implementa i dati dell'UPnP a modo suo.
Avatar utente
DnaX
Prode Principiante
Messaggi: 237
Iscrizione: domenica 7 ottobre 2007, 23:47
Desktop: GNOME Shell
Distribuzione: Ubuntu 12.04 LTS 32bit
Località: Pisa
Contatti:

Re: [Progetto] Gestione del router via UPnP (incluso modifica porte mappate)

Messaggio da DnaX »

Ho effettuato gli ultimi aggiornamenti al codice. Adesso la funzionalità per aggiungere una nuova porta funzione perfettamente.

Ho anche fatto qualche cambiamento grafico, come l'IP e il modello del router selezionabile e qualche errore di traduzione. Ho tolto l'informazione (solo dalla grafica) dell'IP remoto, non viene usato dagli utenti normali (target del programma), per fare il port forward solo da determinati indirizzi IP c'è il firewall interno ad ogni router.

Appena ho tempo aumento il livello di log mostrando anche i metodi esposti dai servizi scoperti, in modo da ovviare ad alcune differenze tra router.

Se potreste continuare il testing ve ne sarei grato! Corretti dei piccoli dettagli e avute un po' più di traduzioni rilascio la versione 0.1 in Debian (e quindi Ubuntu).

Ps. Ah, ho cambiato il nome al progetto, ora UPnP Router Control.
Ultima modifica di DnaX il mercoledì 25 novembre 2009, 18:43, modificato 1 volta in totale.
Scrivi risposta

Ritorna a “Progetti della Comunità”

Chi c’è in linea

Visualizzano questa sezione: 0 utenti iscritti e 3 ospiti