-1

私のボックスはubuntu 14.04を実行しています。これは、4 つのイーサネット NIC を備えた古い 32 ビット ボックスです。私が達成したいのは、アップストリーム インターフェイス (eth2.8 - 動的 IP) からダウンストリーム インターフェイス (eth0.13 - 192.168.40.1) へのマルチキャスト ルーティングです。上記のボックスに eth0.13 経由で接続された私のラップトップは、魔法のように 40.1 からマルチキャストを読み取ることができます。40.1でvlcをサーバーとして実行することで確認しました

cvlc -vvv ./POS-Movie-927x521.mov --sout udp:239.255.12.42 --ttl 12

ラップトップでストリームを受信する

vlc udp://@239.255.12.42

ラップトップで送信し、サーバー側で受信するという逆の方法でも機能します。

では、なぜ eth2.8 経由でマルチキャスト パッケージにアクセスできないのでしょうか?

参加作品。到着したパッケージを確認できます

sudo tcpdump -i eth2.8 -n マルチキャスト

しかし、tcpdump なしでこれらのパッケージにアクセスすることはまったく不可能に思えます! これは私が経験していることを正確に説明していますが、それだけでは解決策は同じではありません。

ここにいくつかのsysctlパラメータがあります:

  • net.ipv4.conf.eth2/8.rp_filter = 1
  • net.ipv4.conf.eth2/8.mc_forwarding = 1
  • net.ipv4.conf.eth2/8.forwarding = 1

eth2.8 と eth0.13 の sysctl パラメータに違いはありません。

はい、これはファイアウォールがダウンしている場合でも発生します!

ヒントをいただければ幸いです。あなたは私の週を作ります!

/マーカス

4

1 に答える 1

0

アップストリーム ホストへのユニキャスト ルートが見つからない! インターフェイスは、独自のクラス c ネット内の IP からの着信 igmp トラフィックを受け入れましたが、他のホストからのパケットは拒否しました。残念ながら、アップストリームはまったく別のネットワークからのものです。単純な「ip route add ip/mask dev eth2.8」が最終的にすべての問題を解決しました。

于 2014-08-22T14:06:12.033 に答える