首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >OpenStack浮动IP定位在下面是如何工作的?

OpenStack浮动IP定位在下面是如何工作的?
EN

Stack Overflow用户
提问于 2016-01-12 23:21:08
回答 1查看 710关注 0票数 0

我创建了10个节点DevStack安装,以了解更多关于OpenStack如何管理网络的知识。我创建了一些VMS,并在一些主机上验证了它们,如下所示:

代码语言:javascript
复制
virsh # list
 Id    Name                           State
----------------------------------------------------
 2     instance-0000001b              running
 3     instance-0000001f              running
 4     instance-00000024              running
 5     instance-0000002c              running

我已经将floating关联到实例id 2,我通过查看它的openstack id并与virsh dumpxml 2的输出进行匹配来验证它。

我看到它使用vnet0:

代码语言:javascript
复制
   <interface type='bridge'>
      <mac address='fa:16:3e:a1:f8:65'/>
      <source bridge='br100'/>
      <target dev='vnet0'/>
      <model type='virtio'/>
      <filterref filter='nova-instance-instance-0000001b-fa163ea1f865'/>
      <alias name='net0'/>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x03' function='0x0'/>
    </interface>

在执行ifconfig vnet0时,它没有显示IP地址:

代码语言:javascript
复制
vnet0     Link encap:Ethernet  HWaddr fe:16:3e:a1:f8:65  
          inet6 addr: fe80::fc16:3eff:fea1:f865/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:70 errors:0 dropped:0 overruns:0 frame:0
          TX packets:44216 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:500 
          RX bytes:7232 (7.2 KB)  TX bytes:29123311 (29.1 MB)

在执行ip addr时,我看到IP地址是在桥br100中定义的。

代码语言:javascript
复制
4: br100: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP group default 
    link/ether d8:50:e6:c3:22:ee brd ff:ff:ff:ff:ff:ff
    inet 10.4.128.13/20 brd 10.4.143.255 scope global br100
       valid_lft forever preferred_lft forever
    inet 172.16.0.101/21 brd 172.16.7.255 scope global br100
       valid_lft forever preferred_lft forever
    inet 172.16.6.12/32 scope global br100
       valid_lft forever preferred_lft forever
    inet 172.16.6.19/32 scope global br100
       valid_lft forever preferred_lft forever
    inet6 fe80::80b6:99ff:fef7:dc16/64 scope link 
       valid_lft forever preferred_lft forever
5: vnet0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast master br100 state UNKNOWN group default qlen 500
    link/ether fe:16:3e:a1:f8:65 brd ff:ff:ff:ff:ff:ff
    inet6 fe80::fc16:3eff:fea1:f865/64 scope link 
       valid_lft forever preferred_lft forever
  • 172.16.0.101/21 :主机IP
  • 172.16.6.12/32: VM浮动IP

然而,vnet0 -> 172.16.6.12 (浮动IP)在哪里?为什么到172.16.6.19的交通不去172.16.6.12,

我查找了iptables规则,但是没有任何指示vnet0或浮动ip的信息。这是怎么做的?我看到它们是用brctl桥接的,但我看不到IP-MAC的关联。它甚至不在arp表中。我查看了iptables或侦听端口(如果完成任何转发都是用户空间),但它不是。

代码语言:javascript
复制
bridge name bridge id       STP enabled interfaces
br100       8000.d850e6c322ee   no      eth0
                                        vnet0
                                        vnet1
                                        vnet2
                                        vnet3
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2016-01-24 14:07:59

好吧我找到了。我忘了看iptables NAT规则,它用来将给定的浮动ips转发给veth设备。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/34755649

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档