|
楼主 |
发表于 2011-8-18 22:59:50
|
显示全部楼层
上面这个配置文件里,eth1.51 和 eth1.85, 这就是靠 Linux 内核的 8021q 模块用软件实现的 vlan 上对应的虚拟网卡。在这个配置文件里写过之后,OpenWrt 在启动的时候会自动调用 vconfig 来添加 eth1.51 和 eth1.85
那个文件的最后,新建了一个 interface 叫做 iptv, 把上面这两块虚拟网卡和 eth0 进行桥接,这样一来,LAN 口就既属于 VLAN 51, 又属于 VLAN 85 了,你们就可以看 IPTV 了,点播也可以,直播也可以~~
但严格来说,这个方法是不正确的,因为这样把 VLAN 51, 85 两个给绑起来了,这样到时候你看直播的时候,你的机器不仅会把从 VLAN 51 收到的直播包转发到你的 LAN 口上,还会转发到 VLAN 85 上,也就是从光猫收到的数据会被发回光猫,这是一件多么蛋痛的事情啊。。正确的做法似乎应该是要用 ebtables 来限制 VLAN 51/85 之间的转发。不过我觉得设 ebtables 太麻烦了,不高兴研究了,而且我自己也不用这个软件VLAN的方案,所以我用了个简单的方法:51/85之间其实只有直播数据会被转发,这样只要把 LAN 口,也就是 eth0 的组播功能给禁掉,那样它想转也转不出去了。所以在 /etc/rc.local 这个文件里加上这段内容就行了:- echo 0 > /sys/devices/virtual/net/eth1.85/brport/multicast_router
复制代码 |
|