You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

在Molecule创建的Docker容器中运行ufw命令报ip6tables错误如何解决

问题原因

  • 核心报错触发自ufw默认对IPv6规则的初始化操作:ufw安装后默认开启IPv6支持,启动时会尝试加载ip6tables的filter表,而Docker容器默认环境缺少对应的权限和内核模块加载条件,导致初始化失败
  • 已添加的NET_ADMIN能力不足以覆盖ip6tables的操作需求,还缺少NET_RAW权限;另外即使开启了privileged模式,若容器未开启IPv6支持,ip6tables相关操作依然会失败

修复方案

方案1:禁用ufw的IPv6支持(最简方案,适配无需测试IPv6规则的场景)

在ufw初始化任务前,新增修改ufw配置的任务,关闭IPv6支持:

- name: Disable UFW IPv6 support
  lineinfile:
    path: /etc/default/ufw
    regexp: '^IPV6='
    line: 'IPV6=no'
  become: true

调整原ufw任务的执行顺序,确保配置修改完成后再执行启用操作即可。

方案2:补全Molecule配置,支持IPv6规则测试

如果需要验证IPv6相关的防火墙规则,修改molecule.yaml的platforms配置:

  1. 补全capabilities配置,新增NET_RAW
  2. 开启容器IPv6支持,指定对应sysctl参数
    修改后的platforms配置参考:
platforms:
  - name: bionic
    image: ubuntu:18.04
    volumes:
      - /sys/fs/cgroup:/sys/fs/cgroup:ro
    privileged: true
    capabilities: ['NET_ADMIN', 'NET_RAW']
    sysctls:
      net.ipv6.conf.all.disable_ipv6: 0

两种方案任选其一执行后,重新运行molecule converge即可解决报错。

内容的提问来源于stack exchange,提问作者Siyanew

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.09 08:21:02