收起左侧

飞牛 NAS 安装 QWRT 后无法与容器互通?一文终结所有折腾

1
回复
126
查看
[ 复制链接 ]

1

主题

1

回帖

0

牛值

江湖小虾

前言
很多小伙伴在飞牛应用中心一键安装了 QWRT,却发现 NAS 与QWRT 容器网络不能互通。什么?为什么要互通?主要是想用openclaw来管理qwrt。本文记录了从“踩坑”到“彻底解决”的全过程,希望能帮大家省去数小时的折腾。

实现效果如下:

b3bc1fa74d573a81776b223870675a67.jpg


一、初始环境(飞牛默认安装)

在飞牛应用中心安装 QWRT 后,系统会自动创建:

  • 容器 IP:192.168.5.100
  • 网络模式:macvlan
  • Docker 网络名:qwrt_macvlan
  • NAS 物理网卡:enp3s0

现象

  • ✅ 手机 / PC 能 ping 通 QWRT
  • ✅ NAS 能访问外网
  • NAS 无法 ping 通 QWRT
  • ❌ QWRT 也无法 ping 通 NAS

二、第一阶段:以为是路由 / 防火墙问题(踩坑开始)

最初怀疑:

  • 主路由(中兴 E8820V3)拦截
  • NAS 防火墙(iptables)策略
  • Docker 网络异常

尝试过的操作

  1. 检查主路由设置(AP 隔离、端口隔离)
  2. 在 NAS 上关闭防火墙
  3. 在 QWRT 容器中放行 ICMP

👉 结果:全部无效


三、第二阶段:macvlan 的“发夹弯”真相

经过深入排查,发现问题本质:

Linux 内核默认禁止 macvlan 子接口与父接口直接通信

也就是说:

  • NAS(父接口)
  • QWRT(macvlan 子接口)

天然无法直连

这不是飞牛的问题,也不是 Docker 的 Bug,而是 Linux 的设计限制。


四、第三阶段:尝试 ipvlan(以为找到了银弹)

听说 ipvlan 能解决 macvlan 的所有问题,于是:

  1. 删除原有网络
  2. 创建 ipvlan 网络
  3. 重建 QWRT 容器

结果

  • QWRT 能 ping 通主路由
  • ❌ 依然 ping 不通 NAS

原因:

  • 飞牛 fnOS 对 ipvlan 的支持并不完整
  • Docker 网络有时处于“半通”状态

五、第四阶段:最终稳定方案(工程级正确)

✅ 核心思路

接受“macvlan 容器 ↔ 宿主机不能直接通信”的事实

通过主路由中转,实现逻辑互通


✅ 最终实现方案

1️⃣ NAS → QWRT(通过 macvlan)

在 NAS 上创建虚拟网卡:

sudo ip link add macvlan0 link enp3s0 type macvlan mode bridge
sudo ip addr add 192.168.5.200/24 dev macvlan0
sudo ip link set macvlan0 up
sudo ip route add 192.168.5.100 dev macvlan0

✅ NAS 可 ping 通 QWRT


2️⃣ QWRT → NAS(通过主路由中转)

在 QWRT 容器中:

ip route add 192.168.5.11 via 192.168.5.1

✅ QWRT 可 ping 通 NAS


六、最终网络拓扑(逻辑)

        主路由 192.168.5.1
              |
      **───────**───────**
      |               |
 NAS 192.168.5.11   QWRT 192.168.5.100
      |               |
   macvlan0        macvlan
      |
   enp3s0

✅ 不走内核 hack
✅ 不依赖 ipvlan
✅ 可重启
✅ 可维护


七、总结(给准备折腾的朋友)

  • ❌ 不要指望 macvlan 容器和 NAS 直连
  • ❌ ipvlan 在飞牛上未必靠谱
  • 主路由中转 = 唯一工程级正确解

如果你也是飞牛 + QWRT 用户,这篇帖子可以让你少走 80% 的弯路


祝大家网络畅通,少踩坑 👍

收藏
送赞
分享

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

x

1

主题

1

回帖

0

牛值

江湖小虾

2 小时前 楼主 显示全部楼层

瞎折腾了,最简单的办法:

nas端:ip route add 192.168.5.100 via 192.168.5.1

容器端:ip route add 192.168.5.11 via 192.168.5.1[酷]

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则