Linux的高級路由和流量控制:多播路由

來源:互聯網
上載者:User
關鍵字 Linux 流量控制 多播路由 高級路由

Multicast-HOWTO已經很古老了(相對而言) ,而且不夠準確甚至會因此而誤21136.html">導讀者。

在你開始進行多播路由之前,你需要重新配置你的Linux內核來支援你想實現的多播路由類型。 這一步需要你來決定使用何種類型的多播路由。 基本上有這麼四種:DVMRP (RIP單播協定的多播版本),MOSPF(同理,只不過是OSPF),PIM-SM ("Protocol Independent Multicasting - Sparse Mode", 協定無關多播-稀疏模式, 它假定任意多播組的使用者都是spread out的,而不是clumped的)和PIM-DM (同理,只不過是「密集模式」,它假定同一個多播組的使用者適當地clumps在一起).

在Linux內核中,你會注意到並沒有這些選項。 這是因為這些協定本身是由路由程式負責處理的,比如Zebra、mrouted或者pimd。 然而你仍然應該對於你要使用那種方案有一個明確的主意,以便選擇正確的內核選項。

無論哪種多播路由,你一定都要啟用「multicasting」和「multicast routing」選項。 對於DVMRP和MOSPF這就夠了。 如果你想使用PIM,你必須還要啟用PIMv1或者PIMv2選項,具體用哪個取決於你的網路究竟使用PIM協定的哪一個版本。

當你把那些都想清楚、編譯了新內核之後,重啟的時候應該能夠看到IP協定的清單中包括了IGMP。 這是用來管理多播組的協定。 雖然第3版業已存在並歸檔,但截止到寫這篇文檔時為止,Linux只支援IGMP的第1版和第2版。 但這並不會太多地影響我們,因為IGMPv3還太新,並沒有看到多少能夠用到v3特有功能的應用。 因為,用IGMP處理組,僅會使用到連最簡單的IGMP版本中都會包含的基本功能。 絕大部分應該是IGMPv2,雖然仍能接觸到IGMPv1。

到此為止,一切都好。 我們已經啟用了多播。 現在,我們得告訴內核,做點實在的事情了——啟動路由。 也就是說象路由表中添加多播子網:

ip route add 224.0.0.0/4 dev eth0

(當然,我們假定你要通過eth0進行多播。 你要根據你的情況選擇設備。 )

現在,啟動Linux的包轉發...

echo 1 > /proc/sys/net/HTTP://www.aliyun.com/zixun/aggregation/6133.html">ipv4/ip_forward

在這裡,你可能想知道是否起了作用。 所以我們ping一下缺省組224.0.0.1,看看有沒有人在。 在你的LAN上所有配置並啟用了多播的機器都應該予以回應,其他機器則不會。 但你會注意到,沒有任何一台機器回應的時候聲明自己是224.0.0.1,多麼令人驚奇☺! 因為這是一個組位址(對於接收者來說是「廣播」),所以組中的所有成員都用它們的位址來回應,而不是用組位址來回應。

ping -c 2 224.0.0.1

到此,你已經可以實現真正的多播路由了。 好的,假定你需要在兩個網路間進行路由。

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.