Networking
多播 IP 地址
我在StackOverflow上發布了這個,並被告知這裡可能更合適。
我無法理解多播地址的工作原理。
首先,如果我有 N 個客戶端或對等點在不同的網路上工作,它們是否都訂閱同一個多播組,並且該組允許任何源發送消息,這些對等點/主機都可以通過這個相互通信團體?(聽起來像黑魔法!)
其次,我聽說 IANA 控制/管理多播地址。那麼,您是否必須向 IANA 請求/詢問您的項目/公司的特定多播地址?這是如何運作的?我弄錯了嗎?你能為我澄清多播網路嗎?
非常感謝!
是的,你的理解在某種程度上是正確的。理論上它是這樣工作的:你的應用程序綁定到一個多播地址,作業系統得到這個地址並訂閱多播組中的電腦。當其他電腦將數據包發送到該地址時,它們會到達您的電腦,直到所有應用程序與該地址解除綁定並且作業系統將電腦從多播組中刪除。
神奇的是IGMP和PIM的組合。IGMP 用於作業系統和最近的路由器之間,它允許作業系統告訴路由器它正在進入或離開多播組,並且它有興趣接收該地址的數據包。PIM 用於路由器之間發現和交換多播組數據,並在發送定址到該組的數據包時找到並到達多播組的所有訂閱者。
IANA 管理多播地址(以及 Internet 中的幾乎所有其他內容)。如果你想在 Internet 上使用多播,你需要一個多播地址分配,就像你使用單播地址一樣:
如果您想在本地網路中使用多播,而不路由到外部 Internet,您可以在RFC 2365中定義用於私人使用的管理範圍範圍。地址範圍為 239.192.0.0/14。