マルチキャストがどのように機能するかについて完全には明確ではないと言って、これに接頭辞を付けましょう。私にはその要点がありますが、基本的な機能はありません。
お客様が2つのJbossノード間にRHEL6クラスターを設定しました。マルチキャストが構成されており、グループ内の両方のサーバーから応答を取得するために224.0.0.1にpingを実行できます。私ができないことは、各サーバーに割り当てられた個々のマルチキャストIPにpingを実行することです。
例:サーバー1は225.5.5.5で、サーバー2は225.5.5.6です。これらのIPのどちらからもpingを実行できません。
これは私が期待すべきものですか? 224.0.0.1 IPにのみpingでき、他のIPにはpingできませんか?ルートをマルチキャストIPと同じサブネット上に設定する必要がありますか、それとも224.0.0.0がすべてのサブネット範囲をカバーしますか?
Pingできるのは、マルチキャストを介して、pingしているマルチキャストグループにサブスクライブしているホストのみです。使用するマルチキャストグループに注意する必要があります。通常、管理スコープの範囲239.0.0.0/24
のマルチキャストグループを使用する必要があります。そうしないと、他のソフトウェアが使用している可能性のある登録済みグループを踏むリスクがあります。
通常、サーバーは、マルチキャストグループに参加するのではなく、マルチキャストグループにトラフィックを送信します。マルチキャストグループは宛先アドレスであり、送信元アドレスはサーバーの通常のIPアドレスです。
マルチキャストグループに参加する各ホストには、特定のマルチキャストグループに参加するソフトウェアが必要です。マルチキャストのポイントは、複数のホストが同じグループに参加して、マルチキャストソースから1回だけ送信される同じトラフィックを受信することです。
パス内のすべてのルーターでマルチキャストルーティングが適切に構成されていない限り、マルチキャストはレイヤー2ドメイン(ルーターを通過)を離れません。そのため、マルチキャストが可能なトンネルがない限り、インターネット上でマルチキャストすることはできません。トラベル。
マルチキャストアドレス224.x.x.xまたは231.y.y.yまたは239.z.z.zに関係なく、Linuxのインターフェイスにマルチキャストアドレスを割り当てることは合法ではないと思います。
Redhatボックスの224.0.0.1にpingを実行できますが、イーサネットのifconfig NIC)をチェックすると、出力に224.0.0.1
が表示されません。
エンドホストがマルチキャストアドレスのpingに応答するには、一部のアプリケーションがカーネル(およびそのモジュール)を介してマルチキャストアドレスをバインドする必要があります。
224.0.0.1バインディングは、カーネルモジュールの1つに組み込まれたアプリケーションです。 225.5.5.5に応答するには、それをバインドするアプリケーションを作成する必要があります。