这里以PVE系统上LXC作为演示,LXC安装的是Ubuntu系统,当然你也可以使用虚拟机安装LINUX,并安装Docker。
首先为给Ubuntu添加两个网卡,一个为LAN口,即对局域网通信的网口,一个为连接光猫的IPTV口。
我的软路由是四口的,第四个口为连接光猫的网络接口,在pve里绑定名称为vmbr3,所以桥接要选择vmbr3。使用了VLAN做了单线利用,即把光猫上的网络和IPTV接口通过VLAN绑定到了一个物理线路上,这样就只需要使用一根线同时传输网络和IPTV数据。在VLAN Tag里填写你在光猫里为IPTV绑定的VLAN Tag,即VLAN ID。我的IPTV是DHCP,所以IPv4要选DHCP,IPv6也选DHCP。
如果是系统运行时添加IPTV接口,系统不会识别到IPTV接口的IP地址,需要要在添加后重启Ubuntu系统才能识别到IPTV接口的IP地址。
在SSH里输入ip addr
即可看到网卡信息,eth1已经获取到了IPTV的100开头的IP地址。
然后再Docker下部署UDPXY容器。
eth0为Ubuntu系统的LAN口,4022为UDPXY的监听端口,eth1为IPTV的网络接口,3为允许客户端数量,默认为3。
version: "3"
services:
UDPXY:
container_name: udpxy
image: agrrh/udpxy:latest
network_mode: host
restart: always
command: -T -a eth0 -p 4022 -m eth1 -c 3
在浏览器打开服务器IP:4022/status/即可看到UDPXY已经运行起来。
然后使用你的m3u文件播放即可。
如何抓取自己家的IPTV源,制作m3u文件参考这篇文章: