openstack中nova使用了iptables实现其网络相关功能,乍看openstack的iptables表比较复杂,整理了一下iptables的filter表和nat表的结构,以一个all in one的openstack的iptables表为例,展示了iptables的filter表和nat表在openstack中的使用。

Filter表

INPUT链结构:

实例:

INPUT链:

nova-network-INPUT链:

开放了67和53端口(DHCP 和 DNS端口)。

nova-compute-INPUT链:

开放了67和68端口(Bootps端口和Bootpc端口)

nova-api-INPUT链:

开放了nova-metadata的8775端口。

FORWARD链结构:

实例:

FORWARD链:

在系统默认的链中添加了4条自定义链。

nova-filter-top链:

nova-network-local链:

nova-compute-local链:

转到各个instance的nova-compute-inst-XXX链。

nova-compute-inst-XXX链:

每个instance的访问控制规则链,由secgroup定义。

nova-compute-provider链:

nova-compute-sg-fallback链:

上述规则都不满足则丢弃。

nova-api-local链:

nova-network-FORWARD链:

实现网关作用。

nova-compute-FORWARD链:

开放了67和68端口(Bootps端口和Bootpc端口)

nova-api-FORWARD链:

OUTPUT链结构:

实例:

OUTPUT链:

添加了4条自定义链。

nova-filter-top链同上。

nova-network-OUTPUT链:

nova-compute-OUTPUT链:

nova-api-OUTPUT链:

NAT表

PREROUTING链结构:

实例:

PREROUTING链:

nova-network-PREROUTING链:

metadate和floating ip的DNAT规则。

nova-compute-PREROUTING链:

nova-api-PREROUTING链:

POSTROUTING链结构:

实例:

POSTROUTING链:

nova-network-POSTROUTING链:

nova-compute-POSTROUTING链:

nova-api-POSTROUTING链:

nova-postrouting-bottom链:

nova-network-snat链:

从public_interface出去的包进行SNAT,10.224.148.69是public_interface的ip。

nova-network-float-snat链:

floating ip的SNAT规则。

nova-compute-snat链:

nova-compute-float-snat链:

nova-api-snat链:

nova-api-float-snat链:

OUTPUT链结构:

实例:

OUTPUT链:

nova-network-OUTPUT链:

floating ip的DNAT规则。

nova-compute-OUTPUT链:

nova-api-OUTPUT链:

Refer:

http://www.ibm.com/developerworks/cloud/library/cl-openstack-network/index.html

openstack中iptables的使用的更多相关文章

  1. 在OpenStack中绕过或停用security group (iptables)

    眼下.OpenStack中默认採用了security group的方式.用系统的iptables来过滤进入vm的流量.这个本意是为了安全,可是往往给调试和开发带来一些困扰. 因此,暂时性的禁用它能够排 ...

  2. openstack中安装包与组件

    keystone openstack-keystone:验证服务,openstack 中的所有组件的验证以及用户验证,权限,目录等服务. python-openstackclient:命令行,安装以后 ...

  3. DPDK在OpenStack中的实现

    随着云计算与大数据的快速发展,其对数据中心网络的性能和管理提出了更高的要求,但传统云计算架构存在多个I/O瓶颈,由于云平台基本上是采用传统的X86服务器加上虚拟化方式组建,随着40G.100G高速网卡 ...

  4. 在CentOS7下的OpenStack中配置使用Spice协议

    在CentOS7下的OpenStack中配置使用Spice协议 by 无若   1. 需要的包 在计算节点上 #yum install spice-html5   注意:使用yum安装spice-ht ...

  5. OpenStack中Keystone的基本概念理解

    原文http://www.kankanews.com/ICkengine/archives/10788.shtml Keystone简介 Keystone(OpenStack Identity Ser ...

  6. openstack中eventlet使用

    openstack中使用eventlet的协程来实现并发. 第一种,使用eventlet.GreenPool来管理绿色线程 如l3-agent在开启了8个绿色线程来处理router消息 def _pr ...

  7. Production环境中iptables常用参数配置

    production环境中iptables常用参数配置 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 我相信在实际生产环境中有很多运维的兄弟跟我一样,很少用到iptables的这个 ...

  8. 探索 OpenStack 之(14):OpenStack 中 RabbitMQ 的使用

    本文是 OpenStack 中的 RabbitMQ 使用研究 两部分中的第一部分,将介绍 RabbitMQ 的基本概念,即 RabbitMQ 是什么.第二部分将介绍其在 OpenStack 中的使用. ...

  9. openstack中彻底删除计算节点的操作记录

    在使用openstack的过程中,我们经常会添加好几台计算节点来部署虚拟机,在后续使用中由于某些原因,一些计算节点出现了问题,需要将这些出了问题的计算节点从openstack的控制节点中踢出去!但是很 ...

随机推荐

  1. SQL Server MYSQL 检查点的好处

    执行检查点时: 如果一个事务不没有提交.日志缓存还是会被更新到磁盘上的物理文件. 这样做就使得大事务commit 时也特别快!

  2. 如何使Label带有链接??此法感觉有点取巧!!!

    关键代码 /**************************************************************第一行***************************** ...

  3. qt windows分发工具使用(windoployqt)

      在qt的安装目录下:QTDIR/bin/windeployqt 例如我的默认安装在: C:\Qt\Qt5.3.1\5.3\msvc2013 windoployqt在: C:\Qt\Qt5.3.1\ ...

  4. android:configChanges 屏幕横竖屏切换

    出处:http://blog.csdn.net/djy1992/article/details/9378195 --->  android:screenOrientation="por ...

  5. AspectJ AOP例子

    最近在学习Spring AOP,其中涉及到AspectJ的AOP框架.主要参考:http://howtodoinjava.com/spring/spring-aop/spring-aop-aspect ...

  6. Java 覆盖测试工具 :EclEmma

    http://www.eclemma.org/installation.html#manual EclEmma 2.2.1 Java Code Coverage for Eclipse Overvie ...

  7. iOS 处理方法中的可变參数

    ## iOS 处理方法中的可变參数 近期写了一个自己定义的对话框的demo,想模仿系统的UIAlertView的实现方式.对处理可变參数的时候,遇到了小问题,于是谷歌了一下.写下了处理问题的方法.记录 ...

  8. leetcode_question_115 Distinct Subsequences

    Given a string S and a string T, count the number of distinct subsequences of T in S. A subsequence ...

  9. 初探swift语言的学习笔记(闭包 - 匿名函数或block块代码)

    很多高级语言都支持匿名函数操作,在OC中的block也为大家所熟悉,然面在swift里好像是被重新作了一个定义,不叫匿名函数,或 block了,而叫闭包(closure).下面配合代码来理解一下swi ...

  10. MFC数据类型(data types)

    为便于理解MFC库函数中的各种形参,现将MFC中常见的参数类型总结如下: 下面这些是和Win32程序(SDK程序)共同使用的数据类型: 数据类型 意义 BOOL Boolean值(布尔值,不是TRUE ...