Ciao,

ho iniziato a sviluppare insieme a Clauz l'mdns plugin per olsrd.
Olsr-dev sono stati già informati da qualche giorno, ora scrivo anche
qui perché anche se è solo una settimana che ci lavoriamo possiamo già
darvi una versione alpha funzionante ;) ci serve gente che testa il
codice :)

https://hg.ninux.org/hg/olsrd-ninux-messy

il branch da prendere come riferimento è "adaptbmf" mentre presto
arriveranno le istruzioni per far girare il tutto su OpenWRT

Come funziona ??

Prendiamo un nodo generico con delle interfacce OLSR ed altre interfacce HNA.
Configurate il plugin:

LoadPlugin "olsrd_mdns.so.1.0.0"
{
PlParam     "NonOlsrIf"  "eth0"
}

Ed indicate le interfacce che non parlano OLSR (in questo caso eth0)
dalle quali volete catturare il traffico mdns.

Il plugin cattura traffico mdns (ipv4 e ipv6) e lo incapsula dentro
nuovi messaggi OLSR a gli altri nodi della mesh. Gli altri nodi
decapsulano i messaggi e li inviano alle loro NonOlsrIf specificate
nel file di configurazione.

In questo modo prendiamo questa topologia di esempio:

pc1->eth0 ----- eth0<-r1->ath0 -------ath0<-r2->eth0 ---------eth0<-pc2

In questo modo con r1 r2 routers OLSR con attivato il plugin, pc1
riesce a vedere i pacchetti mdns inviati in multicast da pc2 e
viceversa.

La cosa interessante è che se mettiamo un router OLSR r3 senza il
plugin attivato:

pc1->eth0 ----- eth0<-r1->ath0 ---r3----ath0<-r2->eth0 ---------eth0<-pc2

tutto continua a funzionare perché r3 inoltra i messggi OLSR del
nostro plugin anche se non sa di che applicazione si tratta.

Ciao ciao

Saverio

Rispondere a