打赏
Fork me on GitHub

[原]openstack-kilo--issue(七):虚拟机怎么通外网,外网怎么ping通虚拟机

本博客已经添加"打赏"功能,"打赏"位置位于右边栏红色框中,感谢您赞助的咖啡.

=====问题=======

虚拟机可以ping通外网,外网能ping通虚拟机但是收不到reply

这个问题本人遇到有两种情况:

1.安装完整openstack-kilo后,在route中和虚拟机中抓包得知,外网能ping通虚拟机,但是ping包在到达虚拟机后就不在了。从虚拟机ping出的包能到达外网网关并能得到reply回应。

  

2.使用模式的不同导致网络不通。

  OpenStack internal network (gre)-----------------|-------------------external network(vlan)

=========原因=============

第一种问题的原因: 外网ping虚拟机------------>虚拟机(ping包能到达虚拟机,是因为在创建instance的时候添加的secgroup,而就是这个secgroup中没有相应的规则导致了不能ping进虚拟机。

第二种问题的原因:之前外网模式为不带tag的网络,内网tenant网络为gre,可以正常通信。之后外网变为了vlan网络,没有更改内网tenant网络模式,导致了虚拟机的数据出不来,外网的数据进不到虚拟机。两种不同模式的网络,不通也就正常了。

=========解决方案===========

【第一种问题的解决方案】

在securegroup中添加相应规则

  

增加规则以后,问题一解决。

【第二种问题的解决方案】

 

 修改tenant的网络模式为vlan,添加网卡子网形成vlan子接口.

  编辑/etc/neutron/plugins/ml2/ml2_conf.ini

创建vlan子接口:将父接口的bootproto改为manual,子接口改为bootproto=none

父接口:

子接口:

重启网络:

service network restart

或者

systemctl restart network.service

 并将子接口添加到br-ex上

ovs-vsctl add-br br-ex enp2s0f1.125 

 

在ping网络就通了。

 

 

 

  

posted @ 2016-11-25 12:17  my_cool2007  阅读(2704)  评论(0编辑  收藏  举报