[Ninux-Wireless] mdns p2pd ipv6+ipv4niit

ZioPRoTo (Saverio Proto) zioproto a gmail.com
Lun 4 Ott 2010 10:46:41 CEST


> Un problema fondamentale e' che il plugin ascolta i pacchetti mdns solo
> della versione di ip su cui e' attivo olsrd quindi nel nostro caso
> ascolterebbe solo i pacchetti mdns ipv6 mentre vogliamo che ascolti anche i
> pacchetti ipv4.

Ciao,
era fatto così perché se la rete era IPv4 ma venivamo forwardati anche
i servizi IPv6, poi le macchine cmq non riuscivano a raggiungere
questi servizi.
Per risolvere nel tuo caso che è diverso, fai questa semplice patch.
Vai in NetworkInterfaces.c a riga 145
http://olsr.org/git/?p=olsrd.git;a=blob;f=lib/mdns/src/NetworkInterfaces.c;h=9134bd75d7af9c54b402d3b9c632f7b94d4b1490;hb=stable#l145

In pratica li c'è il controllo se deve sniffare ETH_P_IP o ETH_P_IPV6

tu togli il controllo e metti: ETH_P_ALL

e questo problema lo hai risolto, basta che metti una patch specifica
per te nel tuo pacchetto di OpenWRT

> L' altro problema e' che da quello che ho capito e' che il plugin non deve
> essere in ascolto sulle interfacce su cui e' attivo olsrd, invece nel nostro
> setup olsrd e' attivo su tutte le interfacce Ad-Hoc e su quelle via cavo e i
> client hanno accesso dalle interfacce in modalita' AP ma anche da quelle lan
> ( via cavo ), dalle istruzioni di entrambi i plugin questo sembrerebbe
> causare problemi perche' viene chiaramente detto che il plugin non deve
> essere in ascolto sulle interfacce di olsrd ( non so perche' ma dice cosi' )

Il problema qui è che tu catturi pacchetti e senza fare alcuna
modifica li fai rispuntare da un altra parte nella rete.
Quindi se tu hai due interfacce su un segmento di rete, che sono tutte
e due attive come OLSR, ed attive come mDNS plugin, il tuo pacchetto
rischia di loopare all'infinito sul link, viaggiando in un lato
normalmente, ed al ritorno incapsulato in OLSR.

In altre parole la topologia deve essere fatta in modo tale che quando
un router decapsula un pacchetto mDNS e lo manda su un segmento di
rete, su quel segmento non ci deve essere nessun altro router OLSR che
lo cattura a sua volta, altrimenti è sicuro che il pacchetto va a
loopare da qualche parte.

In realtà puoi attivare mDNS su interfacce che parlano OLSR, nessun
problema. Basta che su ogni segmento di rete ci sia una sola
interfaccia che sniffa ed inietta pacchetti, altrimenti loopi. Quindi
qui credo che te la cavi configurando bene.

Saverio



Maggiori informazioni sulla lista Wireless