X86 j4125 4网口小主机折腾笔记五:PVE安装ROS RouterOS
X86 RouterOS 7.18 设置笔记一:基础设置
X86 RouterOS 7.18 设置笔记二:网络基础设置(IPV4)
X86 RouterOS 7.18 设置笔记三:防火墙设置(IPV4)
X86 RouterOS 7.18 设置笔记四:网络设置(IPV6)
X86 RouterOS 7.18 设置笔记五:防火墙设置(IPV6)
X86 RouterOS 7.18 设置笔记六:端口映射(IPv4、IPv6)及回流问题
X86 RouterOS 7.18 设置笔记七:不使用Upnp的映射方法
X86 RouterOS 7.18 设置笔记八:策略路由及DNS劫持
X86 RouterOS 7.18 设置笔记九:上海电信单线复用IPTV设置
X86 RouterOS 7.18 设置笔记十:上海电信IPTV使用msd_lite实现组播转单拨
X86 RouterOS 7.18 设置笔记十一:ROS更新方法及更新后IPTV组播转单播失效的解决方法
目录标题
- [RouterOS 7.18.1 → 7.21.3升级后container有个坑](#RouterOS 7.18.1 → 7.21.3升级后container有个坑)
- 网页登录ROS
- 下载更新包
- 更新ROS
- 更新后IPTV组播转单播失效的解决方法
- 删除原有配置
- 重新配置:
RouterOS 7.18.1 → 7.21.3升级后container有个坑
重启ROS后container就报错 msd_lite无法启动
container run: child error: prepare root dir: could not mount bind root
解决方法:
1:在winbox-files里新建文件夹
/file add type=directory name=ros_msd_lite
2:拖放ros_msd_lite_2025.tar到files的根目录(文件名不能大写,不能有空格)
3:安装msd_lite(这步可以等下面重新配置的步骤再执行)
/container add file=ros_msd_lite_2025.tar root-dir=ros_msd_lite interface=msd_lite workdir=/app start-on-boot=yes
网页登录ROS
Quick Set-Check For Updates
Channel:stable
确认Latast Version
下载更新包
https://mikrotik.com/download/routeros?architecture=x86
选择X86 Stable Version
下载System Package-RouterOS
下载Extra Packages-container
更新ROS
打开Winbox-Files窗口
把routeros-x.x.x.npk和container-x.x.x.npk拖放到Files窗口
重启ROS后查看版本是否完成升级(查看winbox标题栏/网页登录ROS-右上角3个点-About)
更新后IPTV组播转单播失效的解决方法
删除原有配置
删除Winbox-Conteriner-Ros_msd_lite_2025
/container stop [find interface=msd_lite]
/container remove [find interface=msd_lite]
删除Winbox-Routing-IGMP Proxy里的br-docker和br-iptv
/routing igmp-proxy interface remove [find interface=br-docker]
/routing igmp-proxy interface remove [find interface=br-iptv]
删除IP-Addresses里的br-docker(Interface)
/ip address remove [find interface=br-docker]
删除Winbox-IP-Firewall-Filter Rules里对应的规则comment="iptv: accept iptv"和comment="docker: accept br-docker"
/ip firewall filter remove [find comment="docker: accept br-docker"]
/ip firewall filter remove [find comment="iptv: accept iptv"]
删除Winbox-Bridge-Ports里的msd_lite(Interface)
/interface bridge port remove [find interface=msd_lite]
删除Winbox-Bridge-Bridge里的br-docker
/interface bridge remove [find name=br-docker]
删除Winbox-Interface-VETH里的msd_lite
/interface veth remove [find name=msd_lite]
删除Winbox-Interface-Interface里的msd_lite(veth)和br-docker(Bridge)
执行/interface bridge remove [find name=br-docker]和/interface veth remove [find name=msd_lite]后这2个应该同步不显示了
重新配置:
在ros创建msd_lite的veth网络接口
/interface veth add name=msd_lite address=192.168.11.2/24 gateway=192.168.11.1
创建br-docker的桥
/interface bridge add name=br-docker comment=br-docker
把msd_lite接口添加到br-docker桥上
/interface bridge port add interface=msd_lite bridge=br-docker
添加防火墙规则:允许入站IPTV接口的流量(这条要放在"丢弃所有非 LAN 接口进入的流量"规则上面,不然看十秒左右会卡死)
/ip firewall filter add action=accept chain=input comment="iptv: accept iptv" in-interface-list=IPTV
添加防火墙规则(放到所有forward的最前面)
/ip firewall filter add action=accept chain=forward comment="docker: accept br-docker" out-interface=br-docker
给br-docker桥配置ip地址
/ip/address add interface=br-docker address=192.168.11.1/24 network=192.168.11.0
IGMP proxy添加br-docker接口
/routing igmp-proxy interface add interface=br-docker
IGMP proxy添加br-iptv接口
/routing igmp-proxy interface add interface=br-iptv upstream=yes alternative-subnets=0.0.0.0/0
添加镜像
/container add file=ros_msd_lite_2025.tar root-dir=ros_msd_lite interface=msd_lite workdir=/app start-on-boot=yes
运行镜像
/container start number=0