0

私はJavaのソケットを介して動作するコードを書いています。LAN上で誰でも参加できるマルチキャストグループを作成しました。しかし、LANにはルーターによって操作される多くの異なるネットワークがあり、コードによって作成されたマルチキャストグループはネットワークごとに異なり、ネットワークAのマルチキャストグループに人が何かをマルチキャストした場合、参加した人だけが受信します。そのネットワーク内のグループにのみ送信され、異なるネットワーク内のすべてのユーザーによって送信されるわけではありません。

例えば:

マルチキャストグループは、たとえば224.0.0.1です。また、LANには2つの異なるネットワークがあります。

ネットワークA=172.22.28.0/255.255.254.0

ネットワークB=172.22.30.0/255.255.254.0

次に、2つの異なるネットワークに224.0.0.1と同じアドレスを持つ2つの異なるマルチキャストグループが存在します。

私の問題は、これら2つの差分をどのようにマルチキャストできるかです。Javaを介したLAN上のネットワーク?

解決策を探していたときに、IPカプセル化の概念に出くわしました。この概念では、パケットに外部IPアドレスを追加して、さまざまなネットワークを通過できるようにすることができます。パケット送信で他のネットワークのアドレスをカプセル化できるので、これは機能するはずです。

誰かがこれ(IPカプセル化)をJavaでどのように実装できるか教えてもらえますか?そうでない場合、私が適用できる他の方法はありますか?

どんな助けにも感謝します。

4

1 に答える 1

0

1224.0.0.1つ目は、 として知られる予約済みのグループです。all-systems.mcast.netつまり、到達可能なすべてのネットワーク マシンです。ウィキペディアを参照してください。

次に、探しているのはIGMPマルチキャスト ルーティングです。つまり、パス内のスイッチは、特にマルチキャストを転送するように構成する必要があり、ルーターも、接続されたネットワーク間でマルチキャスト トラフィックを転送することを認識する必要があります。

于 2011-08-22T14:36:17.013 に答える