最近更新: 把路由lan口从vlan85里剔除,只通过eth0(wan口)来转发。盒子接光猫,内网都通过udpxy(也是走eth0.85)来看。这样可以让局域网免受iptv组播流影响。精简代码如下:
/jffs/scripts/iptv-start
#—————-For modem connecting———用于局域网访问光猫,可不配,和光猫一个网段
ifconfig eth0:1 192.168.1.200 netmask 255.255.255.0#—————-DHCP for moden——————–#
#盒子连光猫,配置一个不和局域网冲突的网段,随意,用来给盒子提供dhcp option
ip addr add 192.168.99.1/24 dev eth0
iptables -I INPUT -i eth0 -m state –state NEW -j ACCEPT
iptables -I FORWARD -i eth0 -o ppp0 -j ACCEPTvconfig set_name_type DEV_PLUS_VID_NO_PAD
vconfig add eth0 85brctl addbr vlan85
brctl addif vlan85 eth0.85#vlan85可以静态配置,可以dhcp获取,二选一,自己打开注释
#####Static############
ifconfig vlan85 192.168.55.2 up###########dhcp#########
#ps w|grep udhcpc|grep vlan85|awk ‘{print “kill -9 “$1}’|sh
#/sbin/udhcpc -i vlan85 -p /var/run/udhcpc10.pid -s /jffs/udhcpc.sh#————–Open Udpxy——————–#
iptables -I INPUT -d 224.0.0.0/4 -p udp -m udp ! –dport 1900 -j ACCEPT
iptables -I INPUT -d 224.0.0.0/4 -p igmp -j ACCEPT
sleep 16
killall udpxy
#/jffs/scripts/udpxy -B 2097152 -m vlan85 -p 4022 -c 5
/usr/sbin/udpxy -m vlan85 -p 4022 -c 10
/jffs/udhcpc.sh
#!/bin/sh
# udhcpc script edited by Tim Riker Tim@Rikers.org
[ -z “$1” ] && echo “Error: should be called from udhcpc” && exit 1
RESOLV_CONF=”/etc/resolv.conf”
[ -n “$broadcast” ] && BROADCAST=”broadcast $broadcast”
[ -n “$subnet” ] && NETMASK=”netmask $subnet”case “$1” in
deconfig)
/sbin/ifconfig $interface 0.0.0.0
;;
renew|bound)
/sbin/ifconfig $interface $ip $BROADCAST $NETMASK
;;
esac
exit 0
/jffs/configs/dnsmasq.d/iptv.conf
#open dhcp server on eth0
interface=eth0
dhcp-range=interface:eth0,192.168.99.2,192.168.99.10,255.255.255.0,86400s
dhcp-option=interface:eth0,3,192.168.99.1
dhcp-option=interface:eth0,252,”\n”
dhcp-option=interface:eth0,15
dhcp-option=interface:eth0,28
dhcp-option=interface:eth0,60,00:00:01:00:02:03:43:50:45:03:0e:45:38:20:47:50:4f:4e:20:52:4f:55:54:45:52:04:03:31:2E:30
dhcp-option-force=interface:eth0,125,00:00:00:00:1a:02:06:48:47:57:2d:43:54:0a:02:20:00:0b:02:00:55:0d:02:00:2e
————————-以下是原文章,想内网接iptv盒子的看——————————————————————–
这篇文章本来不想发的,因为论坛里已经有很多大神发了不少教程。最近发现有很多朋友遇到iptv播放报156,0018错误,我自己也掉坑,折腾了好久,一一调试出来,所以发个帖比较醒目一点。一来把过程记录下来,做个备份,二来给遇到同样问题的朋友一点帮助。自己也不是专业做网络的,写出来让各位大神也帮我挑挑毛病,分析下真正问题,以下折腾离不开各路大神的原创思路。
具体操作大同小异,我分析了造成播放卡顿的主要原因是把br0(也就是包含了eth5, eth6俩无线接口)全部加入vlan85,然后这个组播流和wifi接口有冲突,或者和家里wifi设备也有一定关系,这个需要大神们来帮忙解开这个谜底了。
本操作拓扑就是 猫桥接模式,1,3,4口选一个接路由wan口。iptv盒子可以接猫剩下的口,也可以接路由的lan口。手抖图就不画了。
猫的设置参照上海4K IPTV桥接模式脚本 适用于AC86U AX88U等新路由。
路由设置:
新增/jffs/scripts/iptv-start,同时在/jffs/scripts/nat-start里新增一行执行此脚本的行:sh /jffs/scripts/iptv-start(iptv-start名字可以随便取,它本身不会自动执行)
##路由接通光猫-感谢diskerjtr-提供代码-
#—————-For modem connecting——————-#
ifconfig eth0:1 192.168.1.200 netmask 255.255.255.0
iptables -t nat -I POSTROUTING -o eth0 -d 192.168.1.0/24 -j MASQUERADE#—————-DHCP for modem感谢diskerjtr-提供代码——————–#
ip addr add 192.168.99.1/24 dev eth0
iptables -I INPUT -i eth0 -m state –state NEW -j ACCEPT
iptables -I FORWARD -i eth0 -o ppp0 -j ACCEPT#————-Vlan For LAN TV—-以下撇开eth5, eth6两个wifi接口———–#
vconfig set_name_type DEV_PLUS_VID_NO_PAD
vconfig add eth0 85
ip link add link eth1 name eth1.85 type vlan id 85
ip link add link eth2 name eth2.85 type vlan id 85
ip link add link eth3 name eth3.85 type vlan id 85#以上必须用ip命令创建vlan,vconfig建的eth[123].85不知为何无法加入网桥
brctl addbr vlan85
brctl addif vlan85 eth0.85
brctl addif vlan85 eth1.85
brctl addif vlan85 eth2.85
brctl addif vlan85 eth3.85#set vlan85 igmp snooping mode to 1
bcmmcastctl mode -i vlan85 -p 1 -m 1ifconfig eth0.85 up
ifconfig eth1.85 up
ifconfig eth2.85 up
ifconfig eth3.85 up
ifconfig vlan85 192.168.98.1 netmask 255.255.255.0 up#————–Open Udpxy——————–#
iptables -I INPUT -d 224.0.0.0/4 -p udp -m udp ! –dport 1900 -j ACCEPT
iptables -I INPUT -d 224.0.0.0/4 -p igmp -j ACCEPT
sleep 16
killall udpxy
/usr/sbin/udpxy -m vlan85 -p 4022 -c 20
/jffs/configs/dnsmasq.d/iptv.conf
#open dhcp server on eth0
interface=eth0
dhcp-range=interface:eth0,192.168.99.2,192.168.99.10,255.255.255.0,86400s
dhcp-option=interface:eth0,3,192.168.99.1
dhcp-option=interface:eth0,252,”\n”
dhcp-option=interface:eth0,15
dhcp-option=interface:eth0,28
dhcp-option=interface:eth0,60,00:00:01:00:02:03:43:50:45:03:0e:45:38:20:47:50:4f:4e:20:52:4f:55:54:45:52:04:03:31:2E:30
dhcp-option-force=interface:eth0,125,00:00:00:00:1a:02:06:48:47:57:2d:43:54:0a:02:20:00:0b:02:00:55:0d:02:00:2e#dhcp server for br0
dhcp-option-force=125,00:00:00:00:1a:02:06:48:47:57:2d:43:54:03:04:5a:58:48:4e:0a:02:20:00:0b:02:00:55:0d:02:00:2e
dhcp-option=15
dhcp-option=28
dhcp-option=60,00:00:01:06:68:75:61:71:69:6E:02:0A:48:47:55:34:32:31:4E:20:76:33:03:0A:48:47:55:34:32:31:4E:20:76:33:04:10:32:30:30:2E:55:59:59:2E:30:2E:41:2E:30:2E:53:48:05:04:00:01:00:50
感谢几位大神的原创:路由器 VLAN 配置 - vconfig 用法示例
丢了你的iptv吧!上海电信IPTV直播源 、组播源
上海电信完美解决4K IPTV一劳永逸增强板
上海4K IPTV桥接模式脚本 适用于AC86U AX88U等新路由
特别是diskerjtr大佬给予了很多远程支持。很多东西都是他推荐的,比如udpxy,tvheadend,live channel播放器。