NetfilterQueue无法在docker容器中工作

时间:2016-08-23 14:09:39

标签: python docker network-programming iptables netfilter

NetfilterQueue在导入容器中运行的python脚本时出现了一个奇怪的问题:

File "main.py", line 1, in <module>
    from netfilterqueue import NetfilterQueue
ImportError: /usr/local/lib/python2.7/dist-packages/netfilterqueue.so: undefined symbol: nfq_set_verdict2

在容器中,我安装了:

FROM debian:wheezy
RUN apt-get update && apt-get install -y \
    bridge-utils \
    net-tools \
    iptables \
    python \ 
    scapy \
    tcpdump \
    python-nfqueue \
    build-essential \
    python-dev \
    libnetfilter-queue-dev \
    python-pip

RUN pip install netfilterqueue

COPY ./main.py /main.py

ENTRYPOINT  sysctl net.ipv6.conf.all.forwarding=1 && ip6tables -A FORWARD -j NFQUEUE --queue-num 1 && python main.py

Build就像魅力一样。知道什么可能导致运行时出现此错误吗?

感谢您的帮助

1 个答案:

答案 0 :(得分:0)

仅供参考我通过使用ubuntu作为基础而不是debian来解决这个问题。容器主机也是ubuntu。我用--privileged和--net = host

启动了容器