7151
Commento:
|
10600
|
Le cancellazioni sono segnalate in questo modo. | Le aggiunte sono segnalate in questo modo. |
Linea 13: | Linea 13: |
* DAAP Music Sharing | * DAAP Music Sharing (client) |
Linea 17: | Linea 17: |
* KDE (aprire l'URL {{{daap:/}}}) * Banshee http://banshee-project.org/Main_Page * DAAP Music Sharing (server) * iTunes (vedi sopra) * Tangerine per Windows e Linux (Bug su mac os X) http://www.snorp.net/log/tangerine * mt-daap (guida sul wiki gentoo: http://gentoo-wiki.com/HOWTO_Apple_ITunes_Server) * windaapd http://www.rustydust.net/cgi-bin/wiki.pl?WinDaapd |
|
Linea 21: | Linea 28: |
* Altre chat/voice/video * Ekiga softphone (Gnome) http://www.ekiga.org/ |
|
Linea 26: | Linea 35: |
* VPN via zeroconf * Zerospan http://www.zerospan.org/ * Self discovery FTP servers * kftpgrabber (KDE) http://kftpgrabber.sourceforge.net/ * Self discovery shared desktops * krfb & krdc (KDE) * Self discovery shared folders * kpf (KDE) * Gshare (Gnome) http://yimports.com/~cpinto/projects/gnome/gshare * Chungles http://www.chungles.com/ * Shared bookmarks * Epiphany http://www.gnome.org/projects/epiphany/ * Collaborative editing: * Mateedit (KDE) * Gobby (Linux, Mac OS, Windows) http://darcs.0x539.de/trac/obby/cgi-bin/trac.cgi * Giochi: * kbattleship, kwin4, lskat (KDE) |
|
Linea 28: | Linea 54: |
== Come scoprire i servizi == Se avete Mac OS X basta scaricare uno dei seguenti programmi: * Observation Post http://www.macs.hw.ac.uk/~rpointon/osx/op.html * Bonjour Browser http://www.tildesoft.com/Files/BonjourBrowser.dmg Se avete '''Linux''': * scaricate '''Avahi''', ed usate il suo browser http://avahi.org/ * in KDE provate ad aprire l'URL {{{zeroconf:/}}} http://wiki.kde.org/tiki-index.php?page=Zeroconf+in+KDE |
|
Linea 40: | Linea 78: |
Se avete un interfaccia di rete su cui si parla OLSR nella rete Ninux.org, dovete configurare il vostro router in modo da fargli inoltrare correttamente gli pacchetti IP multicast dentro e fuori la vostra rete. La vostra interfaccia di rete può essere sia fisica (link wireless) che virtuale (tunnel VPN). |
|
Linea 41: | Linea 83: |
occorre avere sul proprio nodo l'ultima versione di OLSR, o cmq una versione della serie 0.5.x con il Bmf plugin attivato. Esiste il bmf plugin anche per le versioni precedenti di OLSR ma non funziona. |
occorre avere sul proprio nodo/router l'ultima versione di OLSR, o cmq una versione della serie 0.5.x con il Bmf plugin attivato. '''Esiste il bmf plugin anche per le versioni precedenti di OLSR ma non funziona'''. |
Linea 45: | Linea 87: |
Per prima cosa è cosa buona leggere questo documento per intero: attachment:bmfreadme.txt | === Aggiornare OLSR alla versione 0.5.x === Per prima cosa è consigliato leggere questo documento per intero: attachment:bmfreadme.txt |
Linea 50: | Linea 94: |
'''ATTENZIONE: controllate con {{{df}}} lo spazio rimanente sul vostro WRT! La tarball con olsrd-0.5.0 è molto grande e non è stata compilata per creare binari piccoli.''' |
|
Linea 67: | Linea 113: |
=== Configurare correttamente il bmf plugin === A questo punto dovete verificare che nel file di configurazione di olsr sia configurato in modo opportuno il bmf plugin |
|
Linea 92: | Linea 141: |
=== Workaround: Forward multicast to OLSR enables interface === Per inoltrare pacchetti di multicast decapsulati su una subnet dovete usare il parametro PlParam "NonOlsrIf" "interface" ma se l'interfaccia che volete usare è in realtà OLSRenabled il parametro verrà ignorato. Per superare questo problema create un alias della vostra interfaccia con un IP fittizio. {{{ ifconfig eth0:2 5.5.5.5 up }}} e poi nel file di configurazione di olsr specificate {{{ PlParam "NonOlsrIf" "eth0:2" }}} soluzione sporca ma funziona, è gia stat notificata agli sviluppatori che includeranno questo workaround nel prossimo README del plugin === Workaround: Override iTunes TTL packets limit === |
|
Linea 174: | Linea 237: |
== Come scoprire i servizi == Se avete Mac OS X basta scaricare uno dei seguenti programmi: * Observation Post http://www.macs.hw.ac.uk/~rpointon/osx/op.html * Bonjour Browser http://www.tildesoft.com/Files/BonjourBrowser.dmg Se avete '''Linux''': * scaricate '''Avahi''', ed usate il suo browser http://avahi.org/ * in KDE provate ad aprire l'URL {{{zeroconf:/}}} http://wiki.kde.org/tiki-index.php?page=Zeroconf+in+KDE |
=== Troubleshooting === '''(TODO) -> Questa sezione è ancora da scrivere in Italiano e per ora contiene solo appunti ;)''' ==== Vedo i servizi annunciati ma non riesco ad accedervi ==== (problema di multicast non bidirezionale, il meccanismo di mDNS non funziona) -> Debug con Bonjour Browser, da l'errore can't resolve link address. Chi da il servizio riesce ad annunciarlmelo in multicast ma poi non ha la rotta unicast per offrirmelo. -> Debug, riesco a pingare la macchina che annuncia il servizio? (problema unicast, controllare i firewalls e le rotte) -> Io non ho la rotta per raggiungere quel servizio (chi annuncia in realtà è dietro un NAT e quindi non posso routarlo -> lo vedo su iChat ma la mia richiesta di chat in unicast non lo raggiunge) ==== Gli altri vedono i miei servizi, ma io non vedo quelli degli altri ==== (di solito vedi: Workaround: Forward multicast to OLSR enables interface) |
Servizi Zeroconf di Ninux.org
Descrizione dei servizi
Berlino ci ha aperto gli occhi BR Grazie alle persone conosciute al WCW2007, abbiamo capito le potenzialità di zeroconf/avahi/bonjour, se queste tecnologie vengono portate su una mesh OLSR con il BMF-plugin
Attualmente sulla rete Ninux.org sono disponibili i seguenti servizi distribuiti in multicast DNS
- DAAP Music Sharing (client)
iTunes per MacOS X o Windows http://www.apple.com/it/itunes/
Rhythmbox per Linux http://www.gnome.org/projects/rhythmbox/
Amarok per Linux http://amarok.kde.org/
KDE (aprire l'URL daap:/)
- DAAP Music Sharing (server)
- iTunes (vedi sopra)
Tangerine per Windows e Linux (Bug su mac os X) http://www.snorp.net/log/tangerine
mt-daap (guida sul wiki gentoo: http://gentoo-wiki.com/HOWTO_Apple_ITunes_Server)
- Bonjour Chat
iChat per MacOS X http://www.apple.com/it/ichat/
Pidgin per Linux http://www.pidgin.im/
Niente di niente per Windows
- Altre chat/voice/video
Ekiga softphone (Gnome) http://www.ekiga.org/
- Self discovery web server
Safari su MacOS X http://www.apple.com/it/safari/
- Possibile non ci sia il plugin per Firefox????? trovatelo!
- Self discovery SSH servers
Fugu su MacOS X http://rsug.itd.umich.edu/software/fugu/
- VPN via zeroconf
Zerospan http://www.zerospan.org/
- Self discovery FTP servers
kftpgrabber (KDE) http://kftpgrabber.sourceforge.net/
- Self discovery shared desktops
krfb & krdc (KDE)
- Self discovery shared folders
- kpf (KDE)
Gshare (Gnome) http://yimports.com/~cpinto/projects/gnome/gshare
Chungles http://www.chungles.com/
- Shared bookmarks
- Collaborative editing:
- Mateedit (KDE)
Gobby (Linux, Mac OS, Windows) http://darcs.0x539.de/trac/obby/cgi-bin/trac.cgi
- Giochi:
- kbattleship, kwin4, lskat (KDE)
siete tutti invitati ad aggiornare questa lista, quando scoprite un nuovo software che supporta Bonjour o Avahi
Come scoprire i servizi
Se avete Mac OS X basta scaricare uno dei seguenti programmi:
Observation Post http://www.macs.hw.ac.uk/~rpointon/osx/op.html
Bonjour Browser http://www.tildesoft.com/Files/BonjourBrowser.dmg
Se avete Linux:
scaricate Avahi, ed usate il suo browser http://avahi.org/
in KDE provate ad aprire l'URL zeroconf:/ http://wiki.kde.org/tiki-index.php?page=Zeroconf+in+KDE
Come funziona?
I servizi vengono annunciati dai server utilizzando il Multicast, non esiste quindi un server centrale ma tutto è distribuito.
Forse volete leggere questa pagina http://it.wikipedia.org/wiki/Zeroconf che è un buon punto di partenza per capire di che si parla.
Molte stampanti di rete ed altro hardware hanno supporto nativo per Zeroconf !
Come configurare il nodo
Se avete un interfaccia di rete su cui si parla OLSR nella rete Ninux.org, dovete configurare il vostro router in modo da fargli inoltrare correttamente gli pacchetti IP multicast dentro e fuori la vostra rete. La vostra interfaccia di rete può essere sia fisica (link wireless) che virtuale (tunnel VPN).
Esistono diverse configurazioni, in ogni caso occorre avere sul proprio nodo/router l'ultima versione di OLSR, o cmq una versione della serie 0.5.x con il Bmf plugin attivato. Esiste il bmf plugin anche per le versioni precedenti di OLSR ma non funziona. Per completezza serve una versione del plugin bmf >= alla 1.3
Aggiornare OLSR alla versione 0.5.x
Per prima cosa è consigliato leggere questo documento per intero: attachment:bmfreadme.txt
Nell'attesa del pacchetto ipkg di olsr 0.5.x per OpenWRT o Freifunk,BR potete compilare da voi seguendo le istruzioni alla pagina CrossCompileBR o potete usare questa tarball http://zioproto.ninux.org/download/olsrd-0.5.0-mips-wrt54g.tar.gz
ATTENZIONE: controllate con df lo spazio rimanente sul vostro WRT! La tarball con olsrd-0.5.0 è molto grande e non è stata compilata per creare binari piccoli.
testato su Freifunk Firmware:
ipkg install kmod-tun ipkg install libpthread ipkg install iptables-extra cd / wget http://zioproto.ninux.org/download/olsrd-0.5.0-mips-wrt54g.tar.gz killall olsrd rm /usr/sbin/olsrd rm /usr/lib/olsr* tar -zxvf olsrd-0.5.0-mips-wrt54g.tar.gz rm olsrd-0.5.0-mips-wrt54g.tar.gz insmod tun /etc/init.d/S53olsrd restart
Configurare correttamente il bmf plugin
A questo punto dovete verificare che nel file di configurazione di olsr sia configurato in modo opportuno il bmf plugin Se avete una versione di Freifunk della serie 1.2.x
Questa è la configurazione da avere sul vostro /etc/local.olsrd.conf BR Ovviamente leggete attachment:bmfreadme.txt per i dettagli
LoadPlugin "olsrd_bmf.so.1.3" { PlParam "NonOlsrIf" "vlan0" PlParam "CapturePacketsOnOlsrInterfaces" "yes" }
Se avete una versione di Freifunk della serie 1.4.x dovete modificare il file /etc/init.d/S53olsrd e trovare olsrd_bmf.so.1.x e modificare in olsrd_bmf.so.1.3 poi andate all'interfaccia web di amministrazione e nella schermata di olsr attivate il bmf plugin
Su OpenWRT dovrebbe essere tutto molto più semplice perchè vi basta editare /etc/olsrd.conf in quanto gli script in /etc/init.d/ non vi modificano i files di config pescando valori dall'NVRAM
Se tutto funziona correttamente avete una interfaccia bmf0 sul vostro router! Dovreste iniziare a vedere i servizi annunciati in rete.
Workaround: Forward multicast to OLSR enables interface
Per inoltrare pacchetti di multicast decapsulati su una subnet dovete usare il parametro PlParam "NonOlsrIf" "interface" ma se l'interfaccia che volete usare è in realtà OLSRenabled il parametro verrà ignorato. Per superare questo problema create un alias della vostra interfaccia con un IP fittizio.
ifconfig eth0:2 5.5.5.5 up
e poi nel file di configurazione di olsr specificate
PlParam "NonOlsrIf" "eth0:2"
soluzione sporca ma funziona, è gia stat notificata agli sviluppatori che includeranno questo workaround nel prossimo README del plugin
Workaround: Override iTunes TTL packets limit
Per iTunes dato che l'applicazione manda pacchetti IP con TTL=1 dovete fare una piccola patch da qualche parte al vostro firewall qualcosa di questo tipo
insmod ipt_TTL iptables -t mangle -I INPUT -p tcp --dport 3689 -j TTL --ttl-set 12 iptables -t mangle -I FORWARD -p tcp --sport 3689 -j TTL --ttl-set 12 iptables -t mangle -I INPUT -p tcp --dport 3689 -j TTL --ttl-set 12 iptables -t mangle -I FORWARD -p tcp --sport 3689 -j TTL --ttl-set 12
Per esempio ecco il mio /etc/local.fw sul mio AP con Freifunk
# Place your firewall addons here case $1 in start) iptables -F iptables -t nat -F PREROUTING iptables -t mangle -F iptables -t nat -A PREROUTING -d 10.0.0.0/8 -j ACCEPT iptables -t nat -A PREROUTING -d 172.16.0.0/16 -j ACCEPT iptables -t nat -A PREROUTING -d 192.168.0.0/16 -j ACCEPT iptables -t nat -A PREROUTING -p tcp --dport 80 -j DNAT --to 192.168.3.214 iptables -A FORWARD -o vlan0 -d 192.168.3.214 -j ACCEPT iptables -A FORWARD -o vlan0 -d 192.168.3.215 -j ACCEPT iptables -A FORWARD -o vlan0 -d 192.168.3.200 -j ACCEPT iptables -A FORWARD -o vlan0 -d 192.168.3.201 -j ACCEPT iptables -A FORWARD -o vlan0 -d 192.168.3.10 -j ACCEPT iptables -A FORWARD -o vlan0 -d 172.16.0.0/16 -j ACCEPT iptables -A FORWARD -o vlan0 -d 10.0.0.0/8 -j ACCEPT iptables -A FORWARD -o vlan0 -p tcp --syn -j DROP iptables -A FORWARD -o vlan0 -d ! 192.168.3.0/24 -p udp -j DROP insmod ipt_TTL iptables -t mangle -I INPUT -p tcp --dport 3689 -j TTL --ttl-set 12 iptables -t mangle -I FORWARD -p tcp --sport 3689 -j TTL --ttl-set 12 iptables -t mangle -I INPUT -p tcp --dport 3689 -j TTL --ttl-set 12 iptables -t mangle -I FORWARD -p tcp --sport 3689 -j TTL --ttl-set 12 ;; stop) iptables -F iptables -t nat -F PREROUTING iptables -t mangle -F rmmod ipt_TTL ;; esac
Un altro esempio con un firewall un pochino più semplice
root@danidaq:~# cat /etc/local.fw # Place your firewall addons here case $1 in start) iptables -t nat -D POSTROUTING -o vlan1 -j MASQUERADE iptables -t nat -A POSTROUTING -s 192.168.100.0/24 -o vlan1 -j MASQUERADE rmmod ipt_TTL insmod ipt_TTL iptables -t mangle -I INPUT -p tcp --dport 3689 -j TTL --ttl-set 12 iptables -t mangle -I FORWARD -p tcp --sport 3689 -j TTL --ttl-set 12 iptables -t mangle -I INPUT -p tcp --dport 3689 -j TTL --ttl-set 12 iptables -t mangle -I FORWARD -p tcp --sport 3689 -j TTL --ttl-set 12 ;; stop) iptables -F iptables -t nat -F PREROUTING iptables -t mangle -F rmmod ipt_TTL ;; esac root@danidaq:~#
Troubleshooting
(TODO) -> Questa sezione è ancora da scrivere in Italiano e per ora contiene solo appunti ;)
Vedo i servizi annunciati ma non riesco ad accedervi
(problema di multicast non bidirezionale, il meccanismo di mDNS non funziona) -> Debug con Bonjour Browser, da l'errore can't resolve link address. Chi da il servizio riesce ad annunciarlmelo in multicast ma poi non ha la rotta unicast per offrirmelo. -> Debug, riesco a pingare la macchina che annuncia il servizio?
(problema unicast, controllare i firewalls e le rotte) -> Io non ho la rotta per raggiungere quel servizio
(chi annuncia in realtà è dietro un NAT e quindi non posso routarlo -> lo vedo su iChat ma la mia richiesta di chat in unicast non lo raggiunge)
Gli altri vedono i miei servizi, ma io non vedo quelli degli altri
(di solito vedi: Workaround: Forward multicast to OLSR enables interface)