IPTV 无需 IPV6,三网通看移动 iTV 直播源

coding · 2024年06月20日 · 最后由 qnson 回复于 2024年08月13日 · 15060 次阅读
本帖已被管理员设置为精华贴

Update:

小白或者不想折腾的用户可以直接使用 http://ip:port/itv_proxy.m3u 订阅,无需 nginx 或者 dns 配置,流量全部经过 pixman 代理,这种方式建议运行在家中内网设备上。


下面的方法需要一些动手能力,根据你的情况来选择。

中国移动 iTV 平台目前可用的直播系列有以下几种:

  • bestzb 百视通
  • FifastbLive 咪视通
  • hnbblive 咪咕视讯
  • wasusyt 华数
  • ystenlive 易视腾

对应的 m3u8 域名为:gslbserv.itv.cmvideo.cn,访问后会 302 跳转到 cache.ott.{CHANNEL_ID}.itv.cmvideo.cn 这样的域名。

而 cache.ott 开头的这个域名在非移动网络下会被解析到 1.1.1.1 这个 cloudflare 的 dns 服务 ip,所以无法访问,但是我们可以手动将这个域名映射到移动网络下响应的 CDN 节点 ip,然而这样带来的一个新问题就是 ip 可能会变动,当很多人使用同一个 ip 可能会导致此 CDN 节点负载太高。

所以我这边购买了 dnsany.com 这个域名,定时同步中国移动 ott 域名在全国各个大区的 CDN 列表,按照大区分区域解析,用户只需要将域名映射到 dnsany.com 这个域名上,就可以一劳永逸地观看 iTV 平台直播,也不用担心 ip 失效。

声明:禁止将 dnsany.com 域名使用在其他项目中,否则将停止解析。

目前 pixman/pixman 镜像已内置我整理过的 iTV 可用频道列表 (去掉了购物频道、低于 1080p、重复质量的频道),如果你有更高质量的 id 或者其他频道,可以在评论区回复,我将更新到镜像内置源里。

对于播放设备来说,需要将 iTV ott 的域名指向 dnsany.com 对应的域名,比较方便的方式是使用代理软件,因为系统默认的 hosts 格式必须是 ip 地址 {TAB} 域名 的形式,一般不会支持 域名 {TAB} 域名 这种别名的方式。除了使用代理软件,还有一些其他方式,我也列在帖子后面。

映射域名后,订阅链接就是 http://ip:port/itv.m3u,pixman 不会代理 ts 请求。

常见代理软件的配置方式

根据你实际情况来选择,如果下面没有列出某个软件,你可以在评论区回复我配置方式。

Ps: 不管任何代理软件,都需要将 dnsany.comcmvideo.cn 这两个主域名列入直连分流,比如

DOMAIN-SUFFIX,cmvideo.cn,DIRECT
DOMAIN-SUFFIX,dnsany.com,DIRECT

Surge

文档:https://manual.nssurge.com/dns/local-dns-mapping.html

[Host]
cache.ott.ystenlive.itv.cmvideo.cn = pixman.io.ystenlive.dnsany.com
cache.ott.bestlive.itv.cmvideo.cn = pixman.io.bestlive.dnsany.com
cache.ott.wasulive.itv.cmvideo.cn = pixman.io.wasulive.dnsany.com
cache.ott.fifalive.itv.cmvideo.cn = pixman.io.fifalive.dnsany.com
cache.ott.hnbblive.itv.cmvideo.cn = pixman.io.hnbblive.dnsany.com

Clash Meta 内核 (OpenClash 等)

文档:https://wiki.metacubex.one/config/dns/hosts/

# 开启 TCP 并发连接可使用延迟最低的 CDN 节点
tcp-concurrent: true

use-hosts: true
hosts:
  cache.ott.ystenlive.itv.cmvideo.cn: pixman.io.ystenlive.dnsany.com
  cache.ott.bestlive.itv.cmvideo.cn: pixman.io.bestlive.dnsany.com
  cache.ott.wasulive.itv.cmvideo.cn: pixman.io.wasulive.dnsany.com
  cache.ott.fifalive.itv.cmvideo.cn: pixman.io.fifalive.dnsany.com
  cache.ott.hnbblive.itv.cmvideo.cn: pixman.io.hnbblive.dnsany.com

Shadowrocket (iOS 小火箭)

APP 首页底部配置页面,Hosts,新增 Host 映射,类型选择 本地值,域名填写 cache.ott.ystenlive.itv.cmvideo.cn,本地值填写 pixman.io.ystenlive.dnsany.com,保存,然后再次新增映射,总共五个域名都要映射一下,对应关系参考上面 Clash Meta 的配置

Quantumult X

[dns]
alias = /cache.ott.ystenlive.itv.cmvideo.cn/pixman.io.ystenlive.dnsany.com
alias = /cache.ott.bestlive.itv.cmvideo.cn/pixman.io.bestlive.dnsany.com
alias = /cache.ott.wasulive.itv.cmvideo.cn/pixman.io.wasulive.dnsany.com
alias = /cache.ott.fifalive.itv.cmvideo.cn/pixman.io.fifalive.dnsany.com
alias = /cache.ott.hnbblive.itv.cmvideo.cn/pixman.io.hnbblive.dnsany.com

修改 Hosts 文件

如果以上代理软件的方法全部不能使用,那可以直接将 IP 写入 Hosts 文件,最好是每个域名都找一个 ip 映射,命令类似

$ ping pixman.io.ystenlive.dnsany.com

从响应的 ip 里随便选一个,然后修改 Hosts 文件类似:

1.1.1.1  cache.ott.ystenlive.itv.cmvideo.cn
2.2.2.2  cache.ott.bestlive.itv.cmvideo.cn
3.3.3.3  cache.ott.wasulive.itv.cmvideo.cn
4.4.4.4  cache.ott.fifalive.itv.cmvideo.cn
5.5.5.5  cache.ott.hnbblive.itv.cmvideo.cn 

这个方法有个缺点,就是 ip 可能会变化,如果一个 CDN ip 失效了,那只能修改 Hosts 为新的 ip

同时此方法也可用于非 Clash Meta 内核的 Clash 代理软件,配置文件类似:

hosts:
  cache.ott.ystenlive.itv.cmvideo.cn: 1.1.1.1
  cache.ott.bestlive.itv.cmvideo.cn: 2.2.2.2
  cache.ott.wasulive.itv.cmvideo.cn: 3.3.3.3
  cache.ott.fifalive.itv.cmvideo.cn: 4.4.4.4
  cache.ott.hnbblive.itv.cmvideo.cn: 5.5.5.5

以上就是三网通用的播放移动 iTV 平台的方法,Enjoy it ~

coding Docker 镜像 pixman/pixman 使用说明 提及了此话题。 06月20日 18:23
coding 将本帖设为了精华贴。 06月20日 18:47

牛叉嘿嘿。。。。。

前排就坐

纠错: hnbblive 不是湖南移动,正确名称是咪咕视讯

楼主真是太强了,膜拜

passwall 的设置方法有没有

shr 回复

感谢提醒,已纠正

chuannc 回复

应该还是需要找到 Hosts 设置,手动 ping 出可用 ip

真是个多能手

这个不错啊还不知道怎么用

移动网络不能直接播嘛?,反而 loon 里写好 dns 映射代理就可以了。

sha 回复

有些频道并不是全国移动可看的,限制地区,映射好域名就没问题了

跪求一个华硕路由器梅林固件的 merlin clash 配置方式,万分感谢

inzaghi458 回复

我没有这个固件,没法测试,应该跟通用的 clash 配置方法一样,hosts 把域名和 ip 关联起来

为什么 我群晖 使用 nginx 代理 TPTV 和 ITV 可以下载 m3u 文件就是无法播放?有详细一点的教程吗或者帮我看下 谢谢

大佬救命按照 Clash Meta 内核 的设置完成后在 iOS 的 aptv 上播所有内容都能播放,但在 android TV 的 tivimate 和 ott 软件中播放失败。。。加 ua 403 错误 不加 530 错误。顺带提一下 tptv 这个没问题哦

能否出一期 iTV 空间服务器部署的食用教程?

lj98 回复

虚拟空间不支持运行 docker

babyG 回复

android tv 是否将网关和 dns 设置为软路由 ip?

v2rayN 怎么设置啊?

coding 回复

是的啊 dhcp 啊要静态?

babyG 回复

你的 openwrt 是主路由吗

coding 回复

旁 主路由是爱快

coding 回复

iOS 为啥又可以呢😰

babyG 回复

你 iOS 有没有使用代理软件,设置的网关和 DNS 服务器又是什么

请教大佬,部署了 nginx,配置好 2 个文件 itv.conf 和 tptv.conf,如何共用同一个容器呢? 分别运行不行 docker run -d --name=pixman-nginx -p 8000:8000 -v /opt/pixman/nginx:/etc/nginx/conf.d --restart=always nginx docker run -d --name=pixman-nginx -p 9000:9000 -v /opt/pixman/nginx:/etc/nginx/conf.d --restart=always nginx

auney 回复

-p 8000:8000 -p 9000:9000 这样就行了

coding 回复

iOS mac 都没有用代理 也是自动获取 都可以播哦 回家把盒子静态试试

babyG 回复

我的意思就是需要让流量经过 openclash

coding 回复

嗯手机电脑都可以应该经过了吧而且看其他需要代理的流媒体都正常安分流走哦

coding 回复

我在群里在看别人的问题参考一下吧麻烦了哦

已成功吃上 ITV,谢谢大佬赏饭😛

kylin 回复

哈哈哈,good

除了 mytv 等因为代理节点问题不能使用,tptv、itv 等都很流畅!还学习了 docke compose 等新用法。感谢热心大佬!

coding 群晖搭建容器 TPTV 和 ITV 都无法播放 提及了此话题。 06月22日 16:16

pixman 宇宙无敌,以下重复一万遍!!

v2rayng 怎么设置呢?

ohjust 回复

不支持

coding Nginx 代理 TPTV 和 iTV 提及了此话题。 06月22日 22:04

docker run -d --name=pixman-nginx -p 8000:8000 -v /opt/pixman/pixman.conf:/etc/nginx/conf.d/pixman.conf --restart=always nginx 这个命令更新怎么办?

ccf 回复

这个帖子有写:https://pixman.io/topics/17

联通可以用 iTV 直播源,速度很快。感谢大佬!

请问:是需要把我搭建服务的 VPS 的 IP,做一条解析到 dnsany.com 吗?是做 A 记录还是 CNAME 呢?

246250 回复

不是,是你播放设备要把移动的域名指向 dnsany.com,

coding 回复

"播放设备要把移动的域名指向 dnsany.com",没明白这是什么意思?求更为详细的解答,谢谢!

246250 回复

就是这个帖子里写的,如果你搞不定,可以直接用 itv_proxy.conf 订阅,不过这样会消耗你服务器流量

使用 itv_proxy,除了 hnbblive 能正常跳转到 cache.ott.hnbblive.itv.cmvideo.cn,其它的都会跳转到 39.135.74.185 这个 ip 上面

feng 回复

什么网络,移动电信还是联通?

coding 回复

移动

coding 回复

docker 移动网,有办法解决吗

http://ip:port/itv_proxy.m3u 订阅,无需 nginx 或者 dns 配置,流量全部经过 pixman 代理,这种方式建议运行在家中内网设备上。 这个要在哪里设置

hui 回复

不需要设置,直接订阅 http://ip:port/itv_proxy.m3u

http://ip:port/itv_proxy.m3u 都无法播放了,TPTV、4GTV 都没问题

johnsyoun 回复

什么地区,什么网络

johnsyoun 回复

我更新了 DNS 负载均衡,你重启镜像再试试

coding 回复

辽宁沈阳,联通,已更新到最新镜像。 群晖 nas 搭建的 Docker 容器,软路由关闭代理,各直播源都能正常播放;开启代理,除 iTV 源之外,其他直播源都正常。

johnsyoun 回复

订阅 http://ip:port/itv_proxy.m3u,播放,然后 docker logs pixman 看看日志显示什么

真不错的项目,大佬牛逼👌

coding 回复

[2024-07-15 02:29:31,708] ERROR in app: Request failed: HTTPConnectionPool(host='gslbserv.itv.cmvideo.cn', port=80): Max retries exceeded with url: /1000000005000025222/1.m3u8?channel-id=ystenlive&Contentid=1000000005000025222&livemode=1&stbId=3 (Caused by ConnectTimeoutError(, 'Connection to gslbserv.itv.cmvideo.cn timed out. (connect timeout=5)')), retrying... [2024-07-15 02:29:27,284] ERROR in app: Request failed: HTTPConnectionPool(host='pixman.io.ystenlive.dnsany.com', port=80): Max retries exceeded with url: /000000001000/1000000005000025222/1.m3u8?channel-id=ystenlive&Contentid=1000000005000025222&livemode=1&stbId=3&version=1.0&owaccmark=1000000005000025222&owchid=ystenlive&owsid=9345551721010170194&AuthInfo=7W4vzMPHMH4yEQv566B4OXNzI7oRgoZMjzFoYcaMONfOuXMLDCwL9Tn%2Bfigar0ngLgD%2Bv22RkFh%2BAr5hjHGp3A%3D%3D (Caused by ConnectTimeoutError(, 'Connection to pixman.io.ystenlive.dnsany.com timed out. (connect timeout=5)')), retrying... [2024-07-15 02:29:25,990] ERROR in app: Request failed: HTTPConnectionPool(host='gslbserv.itv.cmvideo.cn', port=80): Max retries exceeded with url: /1000000005000025222/1.m3u8?channel-id=ystenlive&Contentid=1000000005000025222&livemode=1&stbId=3 (Caused by ConnectTimeoutError(, 'Connection to gslbserv.itv.cmvideo.cn timed out. (connect timeout=5)')), retrying...

johnsyoun 回复

看样子你连接这个 gslbserv.itv.cmvideo.cn 都连不上,你本地命令行测试 curl "http://gslbserv.itv.cmvideo.cn/1000000005000025222/1.m3u8?channel-id=ystenlive&Contentid=1000000005000025222&livemode=1&stbId=3" -I 试试看响应头是不是 302;

检查你的代理规则,确保下面两个域名走直连

- DOMAIN-SUFFIX,dnsany.com,DIRECT
- DOMAIN-SUFFIX,cmvideo.cn,DIRECT
coding 回复

代理规则都没问题,貌似代理插件配置有点问题,现在又正常了,谢谢!

大佬,我是 openclash,这个域名映射的配置代码写到哪里啊?

zjgtree 回复

写在配置文件里,或者在 覆写设置 - DNS 设置,勾选 Hosts,然后编写内容;主要需要用 meta 内核

coding 回复

是 meta 内核,修改 host 添加了那段代码 openclash 无法启动了。。。

zjgtree 回复

看内核日志

coding 回复

直接添加域名映射就可以了,但是播放有点不稳定,我再测试一段时间再说吧,谢谢大佬

请问一下大佬,passwall 的映射设置怎么弄呢?谢谢

真的不错哈 点赞

我的电视盒子比较落后,望大佬能不能保留低码率 720P 的列表呢

zjgtree 回复

你好,是在哪里添加域名映射?

cutepan 回复

你可以自己编写 m3u 列表

tanrenye 回复

可能是 ip 变更,晚点我刷新 dns

dns 应该失效了

用 itv_proxy.m3u 的地址请求出错,以前正常的。docker pixman 错误日志 [2024-08-06 07:54:08,787] ERROR in app: Request failed: HTTPConnectionPool(host='pixman.io.wasulive.dnsany.com', port=80): Max retries exceeded with url: /000000001000/6000000001000029752/1.m3u8?channel-id=wasusyt&Contentid=6000000001000029752&livemode=1&stbId=3&version=1.0&owaccmark=6000000001000029752&owchid=wasusyt&owsid=9072121722930838176&AuthInfo=oQgPgGpsRJMfIYt7hrZl1f8NkoG0i9ho53qgXDWzLd0knAlFvMRQo7fU5DZoM4aquy6Z2hfMhj7nCkuDa12SYA%3D%3D (Caused by ConnectTimeoutError(, 'Connection to pixman.io.wasulive.dnsany.com timed out. (connect timeout=5)')), retrying... [2024-08-06 07:54:08,787] ERROR in app: Request failed after retrying

浙江电信网络 pixman.io.wasulive.dnsany.com 的 dns 失效

redsun168 回复

v1.6.6 已修复

广州移动光纤,客户端是 APTV(APPLE TV 4K),ITV 十分稳定。就是有一个问题,很多频道重复,比如 CCTV5 有三个源,但是我只想用 HEVC。不然使用遥控器上下换台时,一个频道要切 3 次才跳过,很不方便。我试过在 APTV 里将多余频道删除,但是一更新源就又全部刷新了。有没有办法可以自行配置或过滤源的频道呢,谢谢!!!

dawuman 回复

首先将 itv 的 m3u 下载下来,然后手动调整

导入外部的 m3u 文件,从而通过 http://ip:port/your.m3u 访问:

docker run -d --name=pixman -p 5000:5000 -v /path/to/yours:/app/app/data/m3u --restart=always pixman/pixman

# 挂载后,将 m3u 文件放到 /path/to/yours 目录下,然后通过 http://ip:port/your.m3u 访问
coding 回复

请问大佬:pixman 如果更新升级,之前手动调整的 your.m3u 需要再次调整吗?谢谢!

需要 登录 后方可回复, 如果你还没有账号请 注册新账号