FAQ : Multicastで正常に通信できません

対象製品: Armadillo-500 FXArmadillo-500Armadillo-460Armadillo-440Armadillo-420Armadillo-300Armadillo-9Armadillo-240Armadillo-230Armadillo-220Armadillo-210

Multicastのルーティング情報またはgatewayが設定されてない時に起こるようです。

Multicastグループにjoinする時、imr_interface.s_addrに特定のインターフェースのipアドレスを指定せず、INADDR_ANYを指定するとsetsockoptがENODEVエラーを返すようです。

200シリーズで採用している avahiというツールでは multicastを使っていますが、インターフェースのIPアドレスを指定しているために、この問題は起きません。

Multicastでエラーになった場合は、

  • gatewayを設定
  • multicastのルーティング情報を設定
  • アプリケーションを開発している場合は、avahiと同じようにインターフェースのipアドレスを指定

のどれかを試してください。

multicastのルーティング情報を設定するには


[armadillo ~]# route add -net 224.0.0.0 netmask 240.0.0.0 eth0

などとしてください。

カテゴリ: