flhs0606 发表于 2023-9-20 12:33

有大佬指点下openwrt-iptv组播设置吗

本帖最后由 flhs0606 于 2023-9-21 12:57 编辑

广州电信,pppoe-IPTV都拨号成功获取到ip了但就是播不了,rtp跟udpxy都不行,看了很多教程,防火墙跟静态路由也设置了,折腾好几天没成功
参考了这个视频(双网口软路由):
https://www.bilibili.com/video/BV1524y1h7Wq/
原本用的华硕路由器,好像直接wan拨号了就能播rtp,但是网络很卡,路由器自带udpxy也不行。
附上我的设置文档图包:
链接:https://pan.baidu.com/s/1ErTUMy2fE2eeWkSI0StZpA
提取码:dn3f

EraserKing 发表于 2023-9-20 12:58

你看看我之前折腾的?不过你都拨上号了应该没问题了啊

https://bbs.saraba1st.com/2b/thread-2021843-0-1.html

flhs0606 发表于 2023-9-20 13:16

EraserKing 发表于 2023-9-20 12:58
你看看我之前折腾的?不过你都拨上号了应该没问题了啊

https://bbs.saraba1st.com/2b/thread-2021843-0-1. ...

对,都成功拨上了,就很奇怪。打开提示审核中,是要登录的么

EraserKing 发表于 2023-9-20 13:29

flhs0606 发表于 2023-9-20 13:16
对,都成功拨上了,就很奇怪。打开提示审核中,是要登录的么

我贴出来吧,看起来你3没问题但是4不行?那我还真不知道为啥
不过有时候我这的udprxy会在IP变了之后不会自己刷新,要手动重启一下

3. 软路由设置
保留eth1口的PPPoE连接不变
新建一条连接,端口依然使用eth1,协议DHCP,跃点的值要比PPPoE的那条连接大,防火墙新建区域IPTV,然后修改/etc/network,在对应的连接下添加如下选项:
    option macaddr 'MAC地址'
    option hostname 'OPTION 12的值'
    option sendopts '0x3c:OPTION 60的值'

然后启用连接,发现……获得的IP是192.168.1.0/24段的,不是IPTV应该得到的10.x.y.z/21段

猜测原因是因为光猫把这个DHCP请求依然认为是普通的DHCP请求,不是IPTV盒子的,和之前直接插#3 #4的情况一样
网上普通的解决方案是在软路由上启用VLAN交换机,但是不是所有固件都有,此处采用绑定VLAN的方法解决
首先,在软路由的物理连接中自己定义为eth1.43(eth1为WAN口,43为VLAN ID),附加设置依然是上面三条
其次,在光猫的VLAN绑定功能中,添加一条绑定VLAN43在端口#1,到IPTV的连接上
具体原理我也不懂,但是确实这样就可以正常获取10段的IP了

注意虽然光猫的Internet连接那边虽然写了VLAN 221,但是不能也不需要做任何VLAN有关的设置,正常拨号就可以
否则会导致拨号失败,或者拨号成功但是不能上网的问题,具体原理我依然还是不懂,但是坑已经踩过了

4. 组播转单播,HTTP
这个是里面最简单的部分了
开启udprxy转发,节目源从网上找找好心人的列表,然后用VLC看udprxy转换过的URL
正常来说就可以看了,但是会发现有卡顿,甚至断网的情况
搜了半天,要开启IGMP Snooping,这个是在OpenWRT的LAN口上开启就行了
开了之后实测没问题了

i1908cv32 发表于 2023-9-20 13:36

有大佬发过思路
https://www.chiphell.com/thread-2493026-1-1.html

sdysj 发表于 2023-9-20 13:36

路由表分流了没有?

125.88.0.0/16
183.59.0.0/16

这两个网段要走 iptv 出口才行得。

flhs0606 发表于 2023-9-20 13:56

EraserKing 发表于 2023-9-20 13:29
我贴出来吧,看起来你3没问题但是4不行?那我还真不知道为啥
不过有时候我这的udprxy会在IP变了之后不会 ...

是的,3可以,正常获取了10.168.x.x的ip,4就不行。

flhs0606 发表于 2023-9-20 13:56

i1908cv32 发表于 2023-9-20 13:36
有大佬发过思路
https://www.chiphell.com/thread-2493026-1-1.html

也参考了,openwrt截图处基本一样

flhs0606 发表于 2023-9-20 13:57

sdysj 发表于 2023-9-20 13:36
路由表分流了没有?

125.88.0.0/16


刚尝试加了,好像没效果[晕倒]

flhs0606 发表于 2023-9-20 13:58

截图如下

iooo 发表于 2023-9-20 15:44

udpxy直接转出来不就好了

Dzzz 发表于 2023-9-20 15:59

现在的iptv会不断要求验证,需要先开机顶盒验证,而且机顶盒要一直开着

415793633 发表于 2023-9-20 19:46

也是广州电信,去年的时候突然就不行了,到现在都搞不定

你的华硕路由器,现在直接拨号,还能看组播吗?

EraserKing 发表于 2023-9-20 19:52

本帖最后由 EraserKing 于 2023-9-20 19:54 编辑

flhs0606 发表于 2023-9-20 13:56
是的,3可以,正常获取了10.168.x.x的ip,4就不行。

那你看下你的udpxy的配置呢
我的是这样的(/etc/config/udpxy)

config udpxy
        option respawn '1'
        option status '1'
        option verbose '1'
        option log_file '/var/udprxy.log'
        option port '9056'
        option bind '192.168.2.1'
        option disabled '0'
        option mcsub_renew '55'
        option source 'eth1.43'

是不是你的bind和source设置的不对?
bind是路由器自己的IP,source要写成你的接口名(你看我的3,我是加了个VLAN)
udpxy的status里面显示的多播地址对吗?

如果还不行,你看看udpxy的日志有没有什么问题

我刚刚试了下,我这个配置没问题,VLC秒开,也不用开盒子

flhs0606 发表于 2023-9-21 11:13

本帖最后由 flhs0606 于 2023-9-21 11:14 编辑

EraserKing 发表于 2023-9-20 19:52
那你看下你的udpxy的配置呢
我的是这样的(/etc/config/udpxy)



config udpxy
        option respawn '1'
        option verbose '0'
        option status '1'
        option disabled '0'
        option bind 'br-lan'
        option port '4001'
        option source 'pppoe-IPTV'
配置应该也没问题,获取到的ip就是iptv拨号所得ip~

danety 发表于 2023-9-21 11:25

你的描述太简单了,要把你的光猫、路由怎么接线、怎么配置等相关的信息都发出来,才好帮你诊断

我iptv的组播、udpxy用了好几年了,很方便

flhs0606 发表于 2023-9-21 11:32

贴一下udpxy的日志:

2023-09-21 11:27:43.023228 CST        S(13417)        udpxy 1.0-25.1 (prod) standard : /usr/bin/udpxy -T -v -S -a br-lan -p 4001 -m pppoe-IPTV -l /tmp/udpxy.log
2023-09-21 11:27:43.023270 CST        S(13417)        Server is starting up, max clients =
2023-09-21 11:27:43.023301 CST        S(13417)        Setting up listener for
2023-09-21 11:27:43.023331 CST        S(13417)        Setting low watermark for server socket to
2023-09-21 11:27:43.023360 CST        S(13417)        Created server socket=, backlog=
2023-09-21 11:27:43.023384 CST        S(13417)        Entering server loop
2023-09-21 11:27:43.023408 CST        S(13417)        Waiting for input from fd's, NO timeout
2023-09-21 11:28:22.246723 CST        S(13417)        No children exited since last check
2023-09-21 11:28:22.246777 CST        S(13417)        Got 1 requests
2023-09-21 11:28:22.246800 CST        S(13417)        Accepting new connection
2023-09-21 11:28:22.246833 CST        S(13417)        Accepted socket= from 192.168.50.143:53583 n=1/nmax=16
2023-09-21 11:28:22.246856 CST        S(13417)        Accepting new connection
2023-09-21 11:28:22.246881 CST        S(13417)        Nothing more to accept
2023-09-21 11:28:22.246918 CST        S(13417)        accept_requests: Sockets accepted:
2023-09-21 11:28:22.246940 CST        S(13417)        Waiting for input from fd's, with timeout
2023-09-21 11:28:22.257775 CST        S(13417)        No children exited since last check
2023-09-21 11:28:22.257817 CST        S(13417)        Got 1 requests
pre-process sockets : 9
2023-09-21 11:28:22.257851 CST        S(13417)        acting on accepted socket (1/1)
2023-09-21 11:28:22.257874 CST        S(13417)        Reading command from socket
2023-09-21 11:28:22.257898 CST        S(13417)        HTTP buffer received
GET /rtp/239.77.0.2:5146 HTTP/1.1
Host: 192.168.50.1:4001
Accept: */*
Accept-Language: zh_CN
User-Agent: VLC/3.0.18 LibVLC/3.0.18
Range: bytes=0-

2023-09-21 11:28:22.257921 CST        S(13417)        Request=, length=
2023-09-21 11:28:22.257944 CST        S(13417)        Command with params , tail [] read from socket=
2023-09-21 11:28:22.257965 CST        S(13417)        udp_relay : new_socket= param=
2023-09-21 11:28:22.258073 CST        S(13417)        Added client: pid=, maddr=, mport=, saddr=, sport=
2023-09-21 11:28:22.258104 CST        S(13417)        process_requests: closing accepted socket
2023-09-21 11:28:22.258127 CST        S(13417)        Processed accepted sockets
newly-accepted sockets : -1
2023-09-21 11:28:22.258151 CST        S(13417)        All accepted sockets processed
2023-09-21 11:28:22.258122 CST        S(13417)        Client process= started for socket=
2023-09-21 11:28:22.258174 CST        S(13417)        Waiting for input from fd's, NO timeout
2023-09-21 11:28:22.258185 CST        c(13854)        min socket buffer = , max space to use = , Rmsgs =
2023-09-21 11:28:22.258213 CST        c(13854)        Setting up multicast listener
2023-09-21 11:28:22.258240 CST        c(13854)        current receive buffer size is bytes for socket
2023-09-21 11:28:22.258274 CST        c(13854)        multicast-group
2023-09-21 11:28:22.258301 CST        c(13854)        Ifc-bound mcast listener socket=
2023-09-21 11:28:22.258329 CST        c(13854)        Mcast listener socket= set up
2023-09-21 11:28:22.258350 CST        c(13854)        min socket buffer = , max space to use = , Rmsgs =
2023-09-21 11:28:22.258372 CST        c(13854)        Data buffer will hold up to messages
2023-09-21 11:28:22.258398 CST        c(13854)        RTP (over UDP) stream assumed, no checks
2023-09-21 11:28:22.258427 CST        c(13854)        socket 6: RCV timeout set to 5 sec, 0 usec
2023-09-21 11:28:22.258450 CST        c(13854)        socket 6: SEND timeout set to 5 sec, 0 usec
2023-09-21 11:28:22.258473 CST        c(13854)        current send buffer size is bytes for socket
2023-09-21 11:28:22.258500 CST        c(13854)        current receive buffer size is bytes for socket
2023-09-21 11:28:22.258523 CST        c(13854)        send buffer size set to bytes for socket
2023-09-21 11:28:22.258569 CST        c(13854)        Sent HTTP response code=, reason= to socket=
HTTP/1.1 200 OK
Server: udpxy 1.0-25.1 (prod) standard
Content-Type:application/octet-stream


2023-09-21 11:28:22.258625 CST        c(13854)        Relaying traffic from socket to socket, buffer size=, Rmsgs=, pauses=
2023-09-21 11:28:27.292693 CST        c(13854)        read_buf: socket time-out on read2023-09-21 11:28:27.292722 CST        c(13854)        read_data - EOF
2023-09-21 11:28:27.292737 CST        c(13854)        Exited relay loop: received=[-1], sent=, quit=
2023-09-21 11:28:27.292761 CST        c(13854)        multicast-group
2023-09-21 11:28:27.292781 CST        c(13854)        Mcast listener socket= closed
2023-09-21 11:28:27.292815 CST        c(13854)        Child process= exits with rc=
2023-09-21 11:28:27.292933 CST        S(13417)        *** Caught SIGCHLD (17) ***
2023-09-21 11:28:27.292964 CST        S(13417)        Waiting on exited children
2023-09-21 11:28:27.292992 CST        S(13417)        Client has exited.
2023-09-21 11:28:27.293005 CST        S(13417)        Deleted client: pid=
2023-09-21 11:28:27.293018 CST        S(13417)        Cleaned up 1 children, 0 still running
2023-09-21 11:28:27.293031 CST        S(13417)        INTERRUPTED, yet will continue.
2023-09-21 11:28:27.293042 CST        S(13417)        Waiting for input from fd's, NO timeout

flhs0606 发表于 2023-9-21 11:37

本帖最后由 flhs0606 于 2023-9-21 11:38 编辑

danety 发表于 2023-9-21 11:25
你的描述太简单了,要把你的光猫、路由怎么接线、怎么配置等相关的信息都发出来,才好帮你诊断

我iptv的组 ...

是类似单线复用那种形式,iptv跟wan共用一根网线,光猫中iptv绑定vlan在openwrt拨号,iptv成功拨号获取了ip,wan也没问题正常上网。配置其实就是按照视频中双网口软路由部分来:https://www.bilibili.com/video/BV1524y1h7Wq/
pppoe-IPTV取消默认网关,加了静态路由。

flhs0606 发表于 2023-9-21 11:45

danety 发表于 2023-9-21 11:25
你的描述太简单了,要把你的光猫、路由怎么接线、怎么配置等相关的信息都发出来,才好帮你诊断

我iptv的组 ...

大佬广州的吗~还需要什么信息,我贴出来[晕倒]

danety 发表于 2023-9-21 12:21

flhs0606 发表于 2023-9-21 11:45
大佬广州的吗~还需要什么信息,我贴出来

因为这个设置涉及到很多地方,任何一个小设置不正确,都会引起问题,凭你的描述,大家并不知道你是如何设置的

用到的信息主要是这些,光猫和openwrt路由的接线方式,光猫的相关设置、openwrt里面的网络设置(wan、iptv、vlan,lan)、防火墙的设置、udpxy设置

涉及到隐私的,可以打码

flhs0606 发表于 2023-9-21 12:58

danety 发表于 2023-9-21 12:21
因为这个设置涉及到很多地方,任何一个小设置不正确,都会引起问题,凭你的描述,大家并不知道你是如何设 ...

附上我的设置文档图包:
链接:https://pan.baidu.com/s/1ErTUMy2fE2eeWkSI0StZpA
提取码:dn3f

谢谢各位大佬帮忙诊断!

EraserKing 发表于 2023-9-21 13:10

你确定URL里是rtp不是udp么?我的是udp [晕倒]
记得两个是有封装的区别的

播放列表是自己抓的还是抄的别人现成的?死马当活马医,不如改了试试

flhs0606 发表于 2023-9-21 13:16

EraserKing 发表于 2023-9-21 13:10
你确定URL里是rtp不是udp么?我的是udp
记得两个是有封装的区别的



哈哈我是抄的,不过udp和rtp我都试过的一样~

danety 发表于 2023-9-21 14:08

本帖最后由 danety 于 2023-9-21 14:24 编辑

flhs0606 发表于 2023-9-21 12:58
附上我的设置文档图包:
链接:https://pan.baidu.com/s/1ErTUMy2fE2eeWkSI0StZpA
提取码:dn3f


防火墙,通信规则里面有没有Allow-IGMP、Allow-UDP-igmpproxy、Allow-UDP-udpxy这三条?有的话,是如何设置的?

另外建议,iptv口网关跳跃点设置一下,比wan口大;防火墙,区域里的iptv设置成wan一样的,入站、转发,都为拒绝;静态路由里可以都删掉。

另外,vlan绑定那里,怎么还有一条eth3的?光猫里的组播vlan 50正确吗?

flhs0606 发表于 2023-9-21 14:23

danety 发表于 2023-9-21 14:08
防火墙,通信规则里面有没有Allow-IGMP、Allow-UDP-igmpproxy、Allow-UDP-udpxy这三条?有的话,是如何设 ...

防火墙这几条没加,我试着加一下

danety 发表于 2023-9-21 14:25

flhs0606 发表于 2023-9-21 14:23
防火墙这几条没加,我试着加一下

flhs0606 发表于 2023-9-21 16:11

danety 发表于 2023-9-21 14:25


加了这三条,情况依旧。[晕倒]

flhs0606 发表于 2023-9-21 16:13

本帖最后由 flhs0606 于 2023-9-21 16:16 编辑

danety 发表于 2023-9-21 14:08
防火墙,通信规则里面有没有Allow-IGMP、Allow-UDP-igmpproxy、Allow-UDP-udpxy这三条?有的话,是如何设 ...

网线插在光猫的eth3口,绑定vlan45,走iptv数据包,op里面接口是eth1.45。上网服务也是这个eth3口,没绑定vlan,op里面接口是eth1。另外光猫里面iptv的组播vlan是设置了50

flhs0606 发表于 2023-9-21 16:18

还有个igmpproxy的配置:
config igmpproxy
        option quickleave 1
#        option verbose (none, minimal, more, maximum)

config phyint
        option network pppoe-IPTV
        option zone pppoe-IPTV
        option direction upstream
        list altnet 0.0.0.0/0

config phyint
        option network br-lan
        option zone br-lan
        option direction downstream

flhs0606 发表于 2023-9-21 16:25

本帖最后由 flhs0606 于 2023-9-21 16:27 编辑

突然想到,这固件是带docker的,以前听说op的docker是不是会影响udp转发?不过视频那个固件也是带docker也不影响。
页: [1] 2
查看完整版本: 有大佬指点下openwrt-iptv组播设置吗