Controllare le porte del router via UPnP
Questo articolo è molto vecchio e potrebbe essere obsoleto
Con UPnP Router Control è possibile:
- Aprire qualsiasi porta sul router per far comunicare le applicazioni sul pc locale all'esterno
- Cancellare eventuali porte rimaste aperte da altri programmi
- Leggere i dati del router, come la marca, il modello e l'indirizzo dell'interfaccia web
- Leggere la velocità di download e upload globale
- Sapere l'Ip esterno e lo stato di connessione
Lo stato dello sviluppo è buono nel senso che il programma è usabile in tutte le funzioni sopracitate solo che per adesso l'ho provato personalmente solo su due router, il Netgear DGN2000 e l'U.S.Robotics USR 8054 in mio possesso, per cui ci possono essere alcuni problemi che si manifestano solo con alcuni modelli, visto che il protocollo UPnP viene implementato da ognuno un po' come gli pare. Quello che vi chiedo è di farmi da cavie
A parte gli scherzi, non c'è affatto nulla di cui preoccuparsi, il programma va o non va e quando vorrete disinstallarlo lo farete semplicemente tramite il gestore di pacchetti APT. Infatti ho imparato a pacchettizzare le applicazioni nello standard Debian ed usare il mio PPA su Launchpad per la distribuzione.
Installazione [Ubuntu, Debian]
Basterà aggiungere il mio repository PPA oppure scaricare direttamente il pacchetto deb per la propria architettura. Questo pacchetto lo aggiorno ogni tanto quando ci sono modifiche sostanziali e soprattutto quando penso che vada tutto bene.
Compilazione (se proprio non avete altro da fare)
Per seguirne lo sviluppo basta scaricare il rami di sviluppo presente su Launchpad usante Bazaar come sistema di controllo versione.
Questo metodo è indispensabile nel caso state usando una qualsiasi distribuzione diversa da Ubuntu (e derivate) e Debian (e derivate).
Per creare una copia del ramo di sviluppo occorre, oltre ad avere installato il pacchetto bzr, eseguire questo comando:
bzr branch lp:upnp-router-control
Vi ritroverete tutti i sorgenti nella cartella upnp-router-control appena creata. Per compilare usate waf o gli autotools (sono presenti entrambi), se non sapete manco cosa sono mi chiedo perché volete per forza compilare quando tengo i pacchetti abbastanza aggiornati! In ogni caso usando waf i comandi sono questi:
./waf configure --prefix=/usr && ./waf build && sudo ./waf install
Per aggiornare invece basterà eseguire questo comando dall'interno della cartella creata dal successivo comando:
bzr pull lp:upnp-router-control
Aiutami!
Per aiutarmi avrei bisogno che voi provaste il mio programma sui vostri pc segnalando il modello del vostro router ed in caso di errori o informazioni incomplete avviare UPnP Router Control da terminale con l'opzione di debug in modo da visualizzare parecchie informazioni utili.
upnp-router-control --debug
Per segnalarmi un bug sarebbe opportuno segnalare il bug qui (in inglese). Se invece volete proporre una caratteristica questo è il posto giusto.
Fatemi sapere cosa ne pensate!
Lazza scrive —
Se riesci a risolvermi il problema del mio Netgear con Upnp buggato ti faccio un monumento.
paolettopn scrive —
Ciao,
io ti aiuterei volentieri ma devi dirmi se l’applicativo gira sulla mia Ubuntu 8.04 LTS.
Ho visto dai tuoi repository che esiste il pacchetto solo per Jaunty; gira anche sulla Hardy?
Dammi una voce e poi iniziamo la collaborazione.
Lazza scrive —
@ Paolettopn, penso che funzioni solo su Jaunty. Ah, mi sono accorto che non ero un tuo lettore, ho rimediato all’errore iscrivendomi al tuo feed.
paolettopn scrive —
Che peccato, avrei desiderato molto provare questa applicazione.
Grazie per l’iscrizione al feed. ;)
Reloweb scrive —
Ciao!
Ho provato il tuo software, carino solo che a me non funziona.
Questo è il debug del programma: http://paste.ubuntu.com/253173/
La marca del mio router è Sitecom WL-154
DnaX scrive —
@Lazza: Sarà difficile perché il problema riscontrato nel tuo router e troppo di basso livello, bisognerebbe modificare la libreria gupnp. Sorry...
@Paolettopn: Basta controllare le dipendenze, serve avere le librerie GTK alla versione 2.16. Purtroppo se non sbaglio Hardy ha ancora le 2.14. Semmai risolvo il problema eliminando le caratteristiche aggiuntive della 2.16 (i pallini blu per le info).
@Reloweb: Ho controllato il log e purtroppo non mi è molto di aiuto, a quanto pare però dovrebbe leggere i nome del router, l'indirizzo dell'interfaccia web e le velocità istantanee di download e upload, confermi?
Forse devo incrementare il livello di debug cercando di fare un po' di introspezione delle azioni, proprietà ed eventi disponibili nel router!
Reloweb scrive —
Si mi da tutte le info che hai elencato, non da l’indirizzo IP, lo stato WAN, nome del router sbagliato e le porte non vengono elencate.
DnaX scrive —
Come nome del router dovrebbe dare esattamente questo: "ADSL Modem IGD". Il problema è che la proprietà friendly_name che viene letta non è sempre il nome del router ma potrebbe essere un nome generico come questo.
Se passi sopra col mouse sul nome del router per mostrare il popup cosa leggi?
Reloweb scrive —
Marca: Tred Chip Technologies Corp.
Sito Web della marca: 192.168.0.1
Modello: ADSL Modem IGD
Numero modello: ADSL modem
guiodic scrive —
A me crasha immediatamente...
upnp-router-control --debug
* Initializing GUI...
* Showing GUI...
* Starting UPnP Resource discovery... done
==> Device Available: WANConnectionDevice
Enum services...
Service: urn:upnp-org:serviceId:WANIPConn1
** Subscribed to WANIPConn events
Request for external IP address... Segmentation fault
DnaX scrive —
Notifico che ho apportato molti miglioramenti al programma. Se avete voglia di provarlo prima del rilascio della prima versione ve ne sarei enormemente grato.
Lillo scrive —
Ho un nuovo computer con processore intel I7 920 e scheda madre Asus P6T SE su cui ho installato kubuntu 9.10.
Il programma upnp-router-control scaricato ieri sotto forma di pacchetto deb anche a me da l’errore seguente:
Request for external IP address... Segmentation fault
Grazie comunque del’impegno e dell’attenzione
Buone feste
Lillo scrive —
Scusa dimenticavo il router è un d-ling dsl-g624t e la rete domestica è wireless, inoltre il programma ha funzionato due o tre volte e si è bloccato dopo il primo tentativo di aprire una porta restituendo il messaggio di cui sopra
Antonio Ceccatelli scrive —
Gran bel programma. Complimenti.
Lo (0.2) uso correntemente sulla mia 10.10 Maverick ed il mio router Linksys WAG54GP2 ora non ha più segreti.
Ciao
Antonio
UPnP Router Control 0.2 scrive —
[…] Dopo un po' di testing e bug risolti ho rilasciato, ormai da ottobre, la versione 0.2 del mio programma per gestire il router via UPnP, UPnP Router Control. Come previsto è possibile gestire il port forward tramite una semplice interfaccia che focalizza l'attenzione solo sui parametri strettamente necessari. […]