zoukankan      html  css  js  c++  java
  • netfilter 和一般网络中的数据包流


    如上图所示,netfilter实际上既可以在L2层过滤,也可以在L3层过滤

    所以在网桥中一般会有下面的参数,即不让iptables对bridge的数据进行处理:

    cat >> /etc/sysctl.conf <<EOF
      net.bridge.bridge-nf-call-ip6tables = 0
      net.bridge.bridge-nf-call-iptables = 0
      net.bridge.bridge-nf-call-arptables = 0
      EOF
    
    sysctl -p /etc/sysctl.conf
    
    或者改用下面的方法解决:
    iptables -t raw -I PREROUTING -i BRIDGE -s x.x.x.x -j NOTRACK.
    

    如果net.bridge.bridge-nf-call-iptables=1,则需要iptables对bridge的数据进行处理,也就意味着二层的网桥在转发包时也会被iptables的FORWARD规则所过滤,这样就会出现L3层的iptables rules去过滤L2的帧的问题
    (packets don't cross nat table twice, In the bridging process, you don’t know the outgoing interface so the previous rule doesn’t work. He needs the interface because he’s using MASQUERADE. In the routing process, the packets go to iptables but they never cross NAT tables because the packet already crossed the table in the bridging process.)
    所以关于dnat、snat的规则将失效,如 openstack中metadata服务失效

  • 相关阅读:
    那些优秀的python代码
    ubuntu软件工具推荐
    跨平台APP推荐收藏
    关于python使用的那些事儿
    关于notepad++使用的那些事儿
    关于ubuntu使用的那些事儿
    PyQt4制作GUI
    python操作图片
    杀死进程
    常见配置文件对比
  • 原文地址:https://www.cnblogs.com/smlile-you-me/p/14961673.html
Copyright © 2011-2022 走看看