igmpproxy in beide Richtungen?

03/01/2015 - 13:03 von Holger Marzen | Report spam
TP-Link 3600 mit zwei WLAN-Interfaces
OpenWRT "Barrier Breaker"

Zur herstellerunabhàngigen Reichweitenverlàngerung verbindet sich der
Router mit einem WLAN-Interface als Client zum "Backbone". Mit dem
anderen spannt er als WLAN-AP ein Netz für Clients auf. Leider kann er
in dieser Konstellation nicht bridgen, daher wird geroutet:

Backbone: 10.66.53.0/24, Interface WLAN1
Client-Netz: 10.66.54.0/24, Interface br-lan (Brücke mit ETH und WLAN0)

Damit Geràte im Client-Netz per Multicast Geràte im Backbone erreichen
können, habe ich igmpproxy laufen mit folgender Konfiguration:

|quickleave
|
|phyint wlan1 downstream ratelimit 0 threshold 1
|
|phyint br-lan upstream ratelimit 0 threshold 1
| altnet 10.66.54.0/24

So weit so gut. Aber im Backbone gibt es auch Geràte, die mit Multicasts
um sich werfen. Deshalb sagt der igmpproxy von Zeit zu Zeit:

|Sat Jan 3 12:37:39 2015 user.warn igmpproxy[1417]: The source address
|10.66.53.130 for group 239.255.255.250, is not in any valid net for
|upstream VIF.

Ich bràuchte also eine weitere Definition für die andere Richtung "vom
Backbone zum Client-Netz". Kann igmpproxy das, oder muss ich eine zweite
Instanz mit separatem Configfile starten? Wenn eine zweite Instanz
làuft, würden halt beide Instanzen rummaulen. Auch nicht schön.
 

Lesen sie die antworten

#1 Juergen P. Meier
04/01/2015 - 08:48 | Warnen spam
Holger Marzen :
TP-Link 3600 mit zwei WLAN-Interfaces
OpenWRT "Barrier Breaker"



Ah, Linux.

Ich bràuchte also eine weitere Definition für die andere Richtung "vom
Backbone zum Client-Netz". Kann igmpproxy das, oder muss ich eine zweite
Instanz mit separatem Configfile starten? Wenn eine zweite Instanz
làuft, würden halt beide Instanzen rummaulen. Auch nicht schön.



Sie wuerden sich ihre Multicast Pakete auch gegenseitig wieder
postwendend relayen und du haettest eine Multicast-Schleife.
Solange dein Switch kein IGMP snooping beherrscht. Denn Multicast
Pakete werden von dummen Switches an alle Ports geflooded.

Du willst eigentlich multicast routing, dazu benoetigst du einen pimd.

/etc/pimd.conf
default_source_preference 101
phyint br0 enable
phyint wlan1 enable
cand_rp

Multicast-routing muss natuerlich im Kernel einkompiliert sein und per
sysctl erlaubt werden. (net.ipv4.conf.$IFNAME.mc_forwarding=1)
Und der igmp-snooping code im Kernel muss deaktiviert werden (linux
bridging ist horribly Br0ken).

ODer du machst das statisch mit http://www.cschill.de/smcroute/
siehe auch:
http://webcache.googleusercontent.c...ch?q=cache:1tkhx7LSFwQJ:http://troglobit.com/blog/2013/07/0...ast-howto/
Insbesondere wenn deine Multicast-software scheisse ist (aka nicht
standard-konform).

Juergen

Ähnliche fragen