1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
---

這是一個非常關鍵的問題,直接觸及了多點傳播 (multicast) 在不同類型路由器上的處理差異!

如果一個**低階的消費級路由器**,它**沒有實現 PIM (Protocol Independent Multicast) 功能**,收到來自內部網路裝置(例如 IPTV 機上盒)針對 `239.1.1.1` 這類多點傳播群組的 **UDP/IGMP 封包 (具體來說是 IGMP 成員報告)**,它會這樣處理:

### 路由器會怎麼處理?

1. **處理 IGMP 訊息 (區域網路內部):**
* 路由器會正常接收並處理來自內部裝置的 **IGMP 成員報告**。
* 如果路由器支援 **IGMP Snooping**(即使沒有 PIM 功能也可能支持),它會記錄下哪個內部埠(乙太網路口或 Wi-Fi 連線)對 `239.1.1.1` 這個多點傳播群組感興趣。這樣,當上游(來自網際網路)有多點傳播流量進來時,它能將其精確地轉發給感興趣的埠,而不會氾濫到所有內部裝置。
* 但是,**它的處理僅限於內部區域網路 (LAN) 層面。**

2. **無法建立外部多點傳播路由:**
* **這是關鍵點!** 由於路由器沒有實現 PIM 這樣的多點傳播路由協定,它**不知道如何將來自內部網路的 IGMP 成員報告「轉換」或「傳遞」給網際網路上的上游多點傳播路由器。**
* 它沒有能力向 ISP 的多點傳播路由器發出 PIM 加入 (Join) 請求,告訴 ISP:「我的下遊網路有訂閱者想接收 `239.1.1.1` 的流量,請把這個流量傳給我。」
* 換句話說,**它無法建立跨網際網路的「多點傳播樹」到自己這裡。**

3. **對待多點傳播流量如同未知流量:**
* 對於從網際網路(WAN 口)接收到的任何 IP 封包,如果目的地 IP 位址是一個多點傳播位址(如 `239.1.1.1`),且這不是它自己發起的流量,**低階路由器通常會選擇直接將其丟棄。**
* 因為它沒有參與到網際網路的多點傳播路由協議中,它不知道這個多點傳播流量應該轉發給誰,也不知道自己是否有權接收並分發這個流量。它會像處理任何不清楚目的地的外部流量一樣,將其丟棄。

### 結論:外部多點傳播流量無法進入

總結來說,沒有 PIM 功能的低階路由器,在收到內部裝置的 IGMP 訂閱請求後:

* **內部管理會做(如果支援 IGMP Snooping):** 它可能會管理區域網路內部的多點傳播轉發,避免內部廣播。
* **無法向外請求流量:** 但它**無法**將這些訂閱需求傳達給網際網路,也**無法**從網際網路接收到對應的多點傳播流量。

這意味著,**如果您的 ISP 提供的 IPTV 或其他多點傳播服務需要路由器的 PIM 支援才能從網際網路獲取流量,那麼使用沒有 PIM 功能的低階路由器將無法正常觀看或使用這些服務。** 這時候,您可能就需要更換路由器,或者使用 ISP 提供的專用 IPTV 數據機/路由器,因為它們通常會內建這些多點傳播路由功能。

---

希望這個解釋清楚地說明了這種情況下路由器的行為!