【Nova】nova-network网络模型之flatdhcp网络

之前有学习过flat网络,发现作用很小,基本只能对虚拟机实例的一些网络信息进行管理。网桥需要自己建,网络规则需要自己配置,以至于浮动ip也不能自行创建分配。

为了解决这些问题,引入了flatdhcp网络。顾名思义,它也是一个扁平网络,和flat类似,所有虚拟机实例处于同一个虚拟网络中(注:其实我们可以创建多个虚拟网络,但是服务器的一个网卡只能用于创建一个虚拟网络,然后可以创建的虚拟网络等同于服务器的网卡数,十分有限,并且同一时刻只能使用其中一个),这些虚拟网络都是l2网络且处于平等地位; 和flat不同之处在于,它引入了DHCP服务来解决虚拟机实例网络配置的问题。


注:对于同一个物理网卡,一旦某个网桥连接到它,那么其它网桥是无法连接到它的,大家可以动手做下实验,因此在不改变flat_interface的前提下,我们只能创建一个虚拟网络。

      假定eth0是我们拿来做实验的:

     brctl addbr br105

     brctl addbr br106

     brctl addif br105 eth0

     brctl addif br106 eth0 # 这里就会报错


以上是multi_host情况下的网络架构,每个计算节点上都需要运行nova-network服务,它会为每个虚拟网络启动一个dnsmasq dhcp server侦听在对应的网桥上。每当在一个虚拟网络中创建虚拟机实例时,nova-network会从该网络的固定IP池中选出一个未分配且处于已释放状态的固定IP与实例和实例的虚拟网卡进行关联,然后通知dnsmasq将该固定IP与实例的mac地址进行绑定,虚拟机实例启动后,如果网卡设置为动态获取IP,就会发送DHCP请求,然后dnsmasq dhcp server将对应的固定IP分配给它,这就完成了固定IP与实例的绑定工作。我们可以配置一个public_interface,那么从虚拟机实例出来的上网流量就会先进行SNAT转换(如果没有浮动IP,就转换为该网卡的IP;有浮动IP就转换为浮动IP)然后从宿主机的该网卡出去;通过浮动IP访问虚拟机实例时,也是从该网卡进入,先进行DNAT转换修改目的地址为与浮动IP对应的虚拟机实例的固定IP,然后转发至对应的虚拟机实例。




  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值