OpenStack Neutron:网络类型示意图(local、flat、vlan、vxlan);网络产品简介(dnsmasq、floating IP、安全组、FWaaS、LBaaS)

网络基本概念(network、subnet、port)

network:一个隔离的二层广播域。Neutron 支持多种类型的 network,包括 local, flat, VLAN, VxLAN 和 GRE。
subnet:一个 IPv4 或者 IPv6 地址段。instance 的 IP 从 subnet 中分配。每个 subnet 需要定义 IP 地址的范围和掩码。
port:虚拟交换机上的一个端口。port 上定义了 MAC 地址和 IP 地址,当 instance 的虚拟网卡 VIF(Virtual Interface) 绑定到 port 时,port 会将 MAC 和 IP 分配给 VIF。

Project 1 : m Network 1 : m Subnet 1 : m Port 1 : 1 VIF m : 1 Instance

======================================================================================================

Neutorn ML2 plugin 默认使用的 mechanism driver 是 open vswitch

linux-bridge mechanism driver 支持的网络类型: local,flat,vlan,vxlan

local网络示意图:

local网络不能跨host部署,仅在部署在一台host内部。

---------------------------------------------------------------------------------------------------------------------------------------------------------------

flat网络示意图:

flat网络需要单独占用一块物理网卡。

---------------------------------------------------------------------------------------------------------------------------------------------------------------

vlan网络示意图:

vlan网络基于vlan设备。

---------------------------------------------------------------------------------------------------------------------------------------------------------------

vxlan网络示意图:

vxlan网络基于vxlan设备。

 ---------------------------------------------------------------------------------------------------------------------------------------------------------------

 外网示意图:

外网可以是flat网络或vlan网络,因为flat/vlan网络是直接和物理网络打通的;所以租户网络和外网通过虚拟router打通,那么租户网络就可以通过外网访问到物理网络or公网。
外网其实就是特殊的flat网络或vlan网络,需要在openstack创建时,勾选“外部网络”。
外网一定程度上可以理解为非租户网络,因为外网是打通租户网络和物理网络的枢纽,外网是不会挂VM的。

---------------------------------------------------------------------------------------------------------------------------------------------------------------

 网络产品:dhcp、虚拟router、floating IP、L2 Population、安全组、FWaaS、LBaaS

DHCP服务:
  Neutron通过Linux Network Namespace 完成隔离,使用 dnsmasq 提供 DHCP 服务

物理router:

虚拟router:

 

floating IP:
  1.floating IP 提供静态 NAT 功能,建立外网 IP 与 instance 租户网络 IP 的一对一映射
  2.当虚拟router提供外网访问能力时,虚拟router就需要连接到外网;floating IP 是落在虚拟router连接到外网的接口上
  3.相应的iptables nat配置则是落在虚拟router所在的network namespace

L2 Population:
  L2 Population不是网络产品,L2 Population的作用是在 VTEP 上提供 Porxy ARP 功能,使得 VTEP 能够预先获知 VXLAN 网络的信息:
    1. VM IP -- MAC 对应关系
    2. VM -- VTEP 的对应关系
  L2 Population保证了 VXLAN 的 Scalability。

安全组:
  安全组配置落在root namespace的iptables(主要为filter表),表项匹配了linux bridge port(VM的tun接口attach到linux bridge)
  安全组守护的是具体的instance:每新增一台instance,则根据安全组配置在iptables中更新相应的条目;

FWaaS:
  FWaaS配置落在虚拟router的network namespac的iptables中,表项匹配了虚拟router上相应的租户网络所在的port(猜测,devstack部署的环境无法启用FWaaS功能。。。)
  本质也是通过iptables实现,但是使用上更灵活;
  FWaaS生效的对象是整个租户网络

FWaaS 和安全组做比较:
  相同点:
    1. 底层都是通过 iptables 实现。
  不同点:
    1. FWaaS 的 iptables 规则应用在 router 上,保护整个租户网络;安全组则应用在虚拟网卡上,保护单个 instance。
    2. FWaaS 可以定义 allow 或者 deny 规则;安全组只能定义 allow 规则。

LBaaS:
  通过 HAProxy 软件提供负载均衡服务。HAProxy 是一个流行的开源 load balancer。
  HAProxy 是部署在network namespace中的;创建LBaaS就会创建network namespace,并attach到租户网络bridge(LBaaS和vpc slb非常相似)

 open vswitch mechanism driver 支持的网络类型: local,flat,vlan,vxlan,gre

local网络示意图:

local网络不能跨host部署,仅在部署在一台host内部。

 ---------------------------------------------------------------------------------------------------------------------------------------------------------------

flat网络示意图:

flat网络需要单独占用一块物理网卡。

 ---------------------------------------------------------------------------------------------------------------------------------------------------------------

vlan网络示意图:

vlan网络基于ovs设备的vlan功能

 ---------------------------------------------------------------------------------------------------------------------------------------------------------------

vxlan网络示意图:

vxlan网络基于vxlan tunnel

 ---------------------------------------------------------------------------------------------------------------------------------------------------------------

外网示意图:

外网其实就是特殊的flat网络或vlan网络,需要在openstack创建时,勾选“外部网络”。
外网一定程度上可以理解为非租户网络,因为外网是打通租户网络和物理网络的枢纽,外网是不会挂VM的。

 ---------------------------------------------------------------------------------------------------------------------------------------------------------------

 虚拟router:

 

posted @ 2022-01-03 17:56  雲淡風輕333  阅读(3508)  评论(0编辑  收藏  举报