背景
家里裝了電信 500m 寬帶送了 IPTV,雖然用得很少,不過偶爾可以看看電視直播信號,雖然電視上裝個直播 App 也可以用,但是每次都要再開機頂盒,切換信號源,2個遙控器始終覺得不夠簡潔,家里的老人用起來更是奔潰。
更重要的是老人要收看老家的電視臺,網上找的信號源經常不穩定而且清晰度也不行,于是有了這篇文章。
網絡前提
這篇文章的前提是家里已經安裝了 IPTV 的服務。
網絡設置
登陸光貓的后臺,修改成橋接。

天翼光貓后臺改橋接
然后通過主路由 PPPOE 撥號。

啟用 IGMP snooping
拉一條網線把光貓的 iTV 的口和主路由 LAN 口連上(這一步很關鍵)

把光貓的 LAN 口 IP 設成家里內網的 IP 段
這個 IP 可以根據自己家里的網絡情況設置,注意要跟家里的內網同一個網段,避免 IP 沖突即可。關閉光貓的 DHCP 服務,由主路由管理 DHCP 分配。如果不清楚 DHCP 的原理建議謹慎操作。
這里強烈建議家里有條件的盡量換成主路由撥號,穩定性和速度應該回比光貓撥號好。
udpxy
接下來就是內網找臺機器(軟路由或者nas)安裝 udpxy 了,這個是用來協議轉換的。就是把 rtp:// 專成 http。
比如 rtp://239.77.0.2:5146 改成
http://192.168.2.254:4022/rtp/239.77.1.130:5146

UNRAID 上安裝 udpxy

OpenWrt 上安裝也行,根據自己的實際情況調整
IPTV RTP-List
接下來就是去網上扒到自己所屬的電信運營商的 IPTV 的 rtp 地址。
以廣州電信為例子:

接下來替換一下里面的內容,把 rtp://239.77.0.2:5146 替換成
http://udpxy_IP:4022/rtp/239.77.0.2:5146
用 vlc 打開替換后的地址,此時應該就可以看到直播了。


這樣就可以用廣州電信的 IPTV 看汕頭的本地直播
至此,我們就實現了把 IPTV 的組播信號轉換成 http 信號,局域網內的所有設備都可以訪問,清晰度跟機頂盒一致。另外看直播的時候因為走的是組播信號,不會占用家里寬帶的出口帶寬。
KODI + PVR IPTV Simple Client

KODI 上安裝 PVR IPTV Simple Client 插件,設置里面的 m3u 設置為前面扒到的廣州電信的 rtp list 修改替換后的m3u8文件即可。家里有多臺電視,重復設置即可。這樣也可以實現家里多臺電視都具備播放 IPTV 的功能,無需單獨再采購機頂盒。當然 jellyfin 也可以支持。

家里的電視通過 KODI 就可以看地方臺的直播了
最后說明一下
我這邊是廣州電信的 IPTV 網絡環境,不同地方可能略有不同,不過大致的思路應該是一致的。
總結
可能大家覺得麻煩,裝個直播 APP 好像也能解決問題。沒錯,不同的解決方案有不同的使用場景,大家根據自己的需要選擇即可。這個方案的特點是通過組播轉協議的方式看直播,不用占用網絡出口帶寬,看高清不卡頓。另外還挖掘出 IPTV 機頂盒沒有顯示的頻道,比如我這里的核心訴求就是想在廣州看汕頭的本地臺。目前市面上的直播 APP 都是各種盜鏈直播地址,清晰度、速度、穩定性肯定不如 IPTV,特別是一些偏門的頻道,經常不穩定,用這個解決方案就可以一勞永逸拉~