[英]Multicast over layer 2
請原諒我有限的網絡知識。
我正在嘗試設置兩個小的程序作為客戶端和服務器,它們加入了特定的多播組。 服務器向該組發送一些任意數據,而客戶端在偵聽該組時會接收數據。
我已經完成的UDP
程序當然可以做到這一點。 但是,我需要使用MAC地址而不是IP
。 我對此有一些疑問:
是否可以為我的多播應用程序固定一定范圍的MAC地址? 據我了解,MAC地址中第一個八位位組的最低有效位表示它是否是組播的。 因此,組播MAC應該看起來像01:*:*:*:*:*
。 因此,我想應該有某種方法可以使用廣泛的MAC地址(保留的除外)。
All multicast MAC addresses begin with: 0100.5e
。 總是這樣嗎? AFAIK此前綴固定在MAC地址中,從而為其余IP地址位留出空間在此處進行映射。 但是,如果我的應用程序不關心IP地址,而是偵聽基於MAC地址的多播組(如果可能)怎么辦? 我不能將第一個八位位組保持為01
並為我的多播尋址使用廣泛的范圍嗎?
如何僅基於MAC地址且不考慮IP,將數據包發送到多播組並偵聽多播組? 即,基於MAC來定義多播組地址。
我希望我的問題有道理。
如果您不使用IP(或UDP),則將IP地址映射到mac地址的默認方式可能沒有任何附加價值。 這些映射例如在以下示例中指定:
如果您堅持使用layer2並進行多播,則可能足以發送具有第一個八位位組的LSB的幀(多播位,請參閱: http : //en.wikipedia.org/wiki/File : MAC-48_Address。 svg )。 並在此之上放置您自己的映射。 但是您應該考慮到以下幾點:
考慮到僅使用UDP的簡便性,這可能需要大量工作。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.