br0は5分後にマルチキャスト接続を切断します。

br0は5分後にマルチキャスト接続を切断します。

私のルーター(Linuxシステム)には以下のインターフェースが設定されています。

br0: flags=4419<UP,BROADCAST,RUNNING,PROMISC,MULTICAST>  mtu 1500
        inet 192.168.0.3  netmask 255.255.255.0  broadcast 192.168.0.255

bridge name bridge id       STP enabled interfaces
br0     8000.00156d8591ec   no      eth0
                            wlan0

eth0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        inet6 fe80::7271:bcff:feb1:d9cf  prefixlen 64  scopeid 0x20<link>

eth1: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        inet 10.200.44.147  netmask 255.255.255.128  broadcast 10.200.44.255

wlan0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        inet6 fe80::215:6dff:fe85:91ec  prefixlen 64  scopeid 0x20<link>

br0には2つのインターフェース(eth0 - ローカルホームネットワークとwlan0 - ワイヤレスホームネットワーク)があります。 eth1 はインターネット接続インターフェイスで、br0 の一部ではありません。

私はmumudvbを使用してIPグループ239.100.0.1(udp / 1234)を介してマルチキャストIPTVを送信し、VLCプレーヤーを使用してLAN上の他のコンピュータからこのマルチキャストトラフィックを受信します。

eth0を介してマルチキャストを送信するように設定すると、ホームLANですべてがうまく機能しますが、ルータ自体はマルチキャストグループに参加できません。

だからbr0を介してマルチキャストを送信するように設定しましたが(もっと合理的です。その後、LAN eth0とルータ自体でマルチキャストグループに参加できます)、参加後約5分後にLANマルチキャスト接続が切断されます(何も送信されません)なし)。 IGMPメッセージ))。ただし、再参加でき、次の5分間再び機能して終了します。

br0を介してマルチキャストを送信するとパケット損失が発生しますが、eth0を介して直接送信するとパケット損失が発生しないのはなぜですか?ブリッジの一部の構成がありませんか?この期間中にどのコンテンツが期限切れになることがありますか?たとえば、ブリッジはSTPを無効にしますが、ここには影響しませんか?

ルータ自体からbr0マルチキャストグループに参加しても失われません。 eth0 を介して br0 に接続されたマシンでサブスクリプションする場合にのみ該当します。

答え1

マルチキャストにbr0を使用している場合は、IGMPクエリーを有効にする必要があります。有効にすると、IGMP プロトコルのバージョンが v3 から v2 に変更され、メンバーシップ クエリが発行され始め、削除されなくなります。

Googleで検索したところ、ブリッジでクエリを有効にするユーティリティはないようです。このユーティリティは、以下を介して/sys実行する必要があります。

$ echo -n 1 > /sys/devices/virtual/net/br0/bridge/multicast_querier

答え2

ネットワークにIGMPクエリがなくレポートを送信しないため、IPTVはしばしば5分間中断されます。

解決策は、scapyを使用してPythonプロセスを介して一般的なIGMPクエリを送信することです(正しいIPTV VLANを使用することを忘れないでください...)

これは私にとって効果的です!

答え3

echo 0 > /sys/devices/virtual/net/br0/bridge/multicast_snooping

関連情報