以成都电信为例,iptv vlan 是 43 ,internet 是 1206 , 组播 vlan 是 3990.
itv 口肯定是 vlan untagged 的,因为机顶盒无法处理 vlan 数据
不考虑 igmpproxy 时,itv 口作为一个 vlan access 口,同时有 vlan 43 untagged, vlan 3990 untagged ?
考虑 igmpproxy 时,igmpproxy 的下游是 itv 口,上游是 vlan 43 还是 vlan 3990 ? igmpproxy 能同时监听两个上游且能一个用于入组,一个用于接收?
我做了如下一个单线复用,在 wan.43 抓包得到了 igmp join/leave, 在 wan 抓到了 vlan untagged 的组播 udp . 我认为这导致了 udpxy 在 openwrt 上不能正常工作。
1
2067 2 天前 via Android
直觉认为,untagged 只表示从这个端口转发出的时候去标签,并不表示从这个端口入的时候认为属于这个 vlan ,对应入端口的配置叫做 pvid 。虽然这两个配置一般是一样的,理论上也只推荐配置一个 untagged vlan ,但是实际上配置多个 untaggedvlan 加一个 pvid 也是“可能可行”的。
至于 igmp 如何控制组播,这个不熟,问了一下 ai ,回答让我不十分满意,就不乱说了,蹲坑学习 |
2
anncor 2 天前 via Android
推荐先抓光猫到机顶盒的包看一下整体的 igmp 过程是不是最简单的 igmpv2 ,是的话只需要光猫桥接组播 vlan 出来,在路由器上建一个对应的 wan 口,随便配置个地址,再设置内核 igmp 版本与运营商一致就可以在路由器上转单播了,不是的话就会很复杂
|
3
eccentric579 OP @2067 受教了,我想这应该就解释通了为什么 op 上的 wan 即使没有指定 vlan 1206 也能成功 pppoe 拨号
|
4
msmmbl 2 天前
@eccentric579 我这 iptv 是可以 adb 的,进去后运行 ifconfig 可以发现有 eth0 和 eth0.85 ,所以感觉和你那的光猫还不一样。我这里的机顶盒是可以处理 vlan 数据的。
|
5
crazyzzm 2 天前
最近也在研究单线复用,理解还比较粗浅,op 描述的没完全懂。猫 itv 口绑定了 lan 口,流量是
|
6
crazyzzm 2 天前
最近也在研究单线复用,理解还比较粗浅,op 描述的没看懂。
说下我粗浅的理解:猫 itv 口绑定了 lan 口,流量是 untagged ,但猫本质是一个交换机,直接根据 lan 口区分流量,最终到光纤那边出口是 tagged 的。单线复用要解决的问题是如何在 openwrt 那将 itv 和其他流量区分开,网上很多解决方法是让猫建立用户侧的 vlan 规则,openwrt 到猫的流量 tagged ,猫区分后再重新封装出口。 不确定对 op 是否有用,献丑了 |
7
eccentric579 OP @msmmbl 这样啊,这倒是挺出乎我的意料的。我这边抓包机顶盒和光猫之间是不带 tag 的。
|
8
anncor 2 天前 via Android
光猫不是纯二层设备,所以可能的情况会有很多,从描述看,你的光猫使用的方案可能是对下行端口配置组播 VLAN ,端口模式 hybird ,default vlan(pvid) 1206 ,untag vlan 43 ,指定组播 VLAN 43 。
这种配置的行为是:下行口收到 igmp 报文会打 VLAN tag 43 往上行口发送,然后上行口收到的组播报文在下行口处去掉 VLAN tag ,直接发送到设备。 可以试下盒子能不能插光猫任意接口,可以的话尝试路由器上不建子接口,直接使用 wan 作为上行口。 我用的猫棒,基本没有管理功能,所以逻辑很简单,猫棒只负责把 VLAN 原样发出来,然后在路由器上配置 wan 子接口就可以正常用了,流量不会有异常;然后又为了正常用原来的机顶盒,在交换机上配了组播 VLAN ,路由器上加了 itv 认证 wan 和认证网段的路由,盒子改 DHCP 接入才能正常用。 |
9
blackeeper 2 天前
你用 OP 拨号,modem 肯定是设置桥接模式了,光猫如何处理 vlan 的数据已经不重要了,都会转发的
也就是说你的 op 配置了 wan.43 那么这个接口就能收到 vlan43 的流量 op 配置了 wan.3390,那么这个接口就能收到 vlan3390 的流量 op 上啥 vlan 也没配置,就是图上 wan 口,那么就是 vlan untagged 的流量 |
10
eccentric579 OP @blackeeper op 上我是 wan 和 wan.43 同时存在的。一个拨宽带,一个拨 iptv. 相当于光猫把组播 untag 了发给了宽带接口 wan. udpxy 监守在 wan.43 iptv 口,收不到这部分数据的。
|
11
eccentric579 OP @anncor 我之前看到一个帖子,说抓了 pon 的包,说 vlan 43 负责上行的 IGMP 入组,dhcp, 下行的点播,vlan 3990 负责下行的组播。vlan3990 是纯下行。然后你说的这个子接口是什么意思,直接在 wan 上做 iptv dhcp 么? wan 上能同时跑 pppoe internet 和 iptv dhcp 么?
|
12
blackeeper 1 天前
@eccentric579 #10 你要单线服用,每个功能应该弄一个子接口 wan.X,你不能直接用 wan 这个物理接口的
|
13
blackeeper 1 天前
@eccentric579 #10 wan 是你的物理线路,wan.x 和 wan.y 就是你的虚拟线路,wan 口你可以抓包,但是不能拨号,拨号就独占这个线路了,其他的虚拟也就出问题了。
|
14
bronco 1 天前 via iPhone
上海电信,我的体会是,光猫将组播从 vlan51 转发给 vlan85 ( B 平面),让盒子可以直播点播。同理,我在 ROS 上起个 igmpproxy ,就可以让盒子随便接入并正常工作(配合 DHCP Options )。udpxy 干的是组播转单播,跨 vlan 转发组播是光猫和 igmpproxy 干的事。
|
15
eccentric579 OP @bronco 那 igmpproxy 的配置怎么写?
|
16
bronco 1 天前 via iPhone
@eccentric579 啊不就几个 interface 加进去指定个 upstream 就好了?我自己是加了 vlan85 和 bridge 作为 downstream ,这样 85 给盒子,自己的 updxy 跑在 bridge 里。
|
17
anncor 1 天前 via Android
@eccentric579 有些光猫的配置可以任意口接入,这种可以尝试直接从 wan 口发 igmp 报文,组播 VLAN 、IPTV VLAN 的处理光猫全包了
|