openstack VM可以ping外部网络,但是外部网络ping不通VM
经过无数次的尝试,终于搭建好了完整的Openstack,本来VM可以获取到IP地址,但是等到我大功告成的时候,突然发现外部网络却不能ping进VM,我可是整整折腾了我几个通宵,这是哭啊。然而,皇天不负有心人,终于找到了一点头绪,我在此记下这一点,以免以后在遇到不知道怎么办。
首先我Openstack环境并没有问题,但是为什么ping不同VM呢,是因为我发现如下:
在网络节点上,执行ip netns
# ip netns
qdhcp-6e056e41-e48d-4119-b970-55ff7bae6f2d
qrouter-5670bd67-c4ae-45d1-b77c-deb21a33500b
然后我这样呢执行:
#ip netns exec qdhcp-6e056e41-e48d-4119-b970-55ff7bae6f2d ping 192.168.100.2 #这里的192.168.100.2是VM的IP地址
  PING 192.168.100.2 (192.168.100.2) 56(84) bytes of data.
  64 bytes from 192.168.100.2: icmp_req=1 ttl=64 time=13.5 ms
  64 bytes from 192.168.100.2: icmp_req=2 ttl=64 time=0.682 ms
  64 bytes from 192.168.100.2: icmp_req=3 ttl=64 time=0.662 ms
  64 bytes from 192.168.100.2: icmp_req=4 ttl=64 time=0.515 ms
或者
# ip netns qrouter-5670bd67-c4ae-45d1-b77c-deb21a33500b ping 192.168.100.2
Command "qrouter-5670bd67-c4ae-45d1-b77c-deb21a33500b" is unknown, try "ip netns help".
root@network3:/home/ubuntu# ip netns exec qrouter-5670bd67-c4ae-45d1-b77c-deb21a33500b ping 192.168.100.3
PING 192.168.100.3 (192.168.100.3) 56(84) bytes of data.
64 bytes from 192.168.100.3: icmp_req=1 ttl=64 time=0.270 ms
64 bytes from 192.168.100.3: icmp_req=2 ttl=64 time=0.043 ms
^C
--- 192.168.100.3 ping statistics ---
这样看来,并不是外部网络ping不进虚拟机,而是缺少了外部网络进入虚拟机内部网络的路由,我估计是这部分路由没有设置这一路由规则,你也可以用route -n 查看一下有没有内部网络的路由。
为了方便起见,我在我使用的网关上添加了这一路由规则:
route add 192.168.100.0 255.255.255.0 192.168.0.201
linux系统添加:
ip route add 192.168.100.0/24 via 192.168.0.201
192.168.100.0/24是内部网络的地址,192.168.0.201是进入内部网络的跳转地址。这样我就可以畅通无阻的ping进虚拟机里面啦,bingo~!!!
openstack VM可以ping外部网络,但是外部网络ping不通VM的更多相关文章
- Zabbix使用外部命令fping处理ICMP ping的请求
		Zabbix使用外部命令fping处理ICMP ping的请求,fping不包含在zabbix的发行版本中,需要额外去下载安装fping程序, 安装完毕之后需要在zabinx_server.conf中 ... 
- Openstack组件部署 — Netwotking service组件介绍与网络基本概念
		目录 目录 前文列表 Openstack Networking serivce 基本的Neutron概念 Neutron的抽象对象 网络networks 子网subnets 路由器routers 端口 ... 
- 如何配置网络使得宿主机能够访问VM数据库?
		https://www.zhihu.com/question/23955166 背景:公司内外网区分,不能同时上,局域网内得手动切换两个网络,分别访问外网或者内网,ip是动态获取的.现在本机上装有vm ... 
- zabbix使用ICMP Ping模版实现对客户端网络状态的监控,监控丢包率、响应时间
		参考网站: https://www.cnblogs.com/saneri/p/6706578.html 使用fping报错注意事项: https://blog.csdn.net/oqqssh/arti ... 
- ICMP Ping模版实现对客户端网络状态的监控
		Zabbix使用外部命令fping处理ICMP ping的请求,fping不包含在zabbix的发行版本中,需要额外去下载安装fping程序,安装完毕之后需要zabinx_server.conf中的参 ... 
- VM虚拟机内ubuntu无法连接到网络
		VM虚拟机内ubuntu无法连接到网络 解决:编辑网络,将网路都删除掉.又一次加入网络桥接和NAT链接. .又一次连接就可以,查看一下ip地址. 方法2: 虚拟机中新装ubuntu 编辑虚拟网络,先恢 ... 
- Win10搭建VM12.0.1虚拟机,虚拟机网络同宿主机ping不通的解决办法
		准备系统学习Linux系统,在电脑搭建了一个CentOS虚拟机,希望能从宿主机连接至虚拟机. 尝试了很多办法,碰到各种坑,最后这个方法成功了! 分享给大家,希望有所帮助. 一.环境 1.宿主机:Win ... 
- 网络好不好,ping一下就知道
		摘要:在测试和部署网络通信应用时,我们经常会遇到网络不通的问题,一般都会想到ping一下.本文将带您了解ping命令的作用和原理~ 在测试和部署网络通信应用时,我们经常会遇到网络不通的问题.一般都会想 ... 
- 10.9 ping:测试主机之间网络的连通性
		ping命令 可用于测试主机之间网络的连通性.执行ping命令会使用ICMP传输协议,发出要求回应的信息,若远端主机的网络功能没有问题,就会回应该信息,因而可得知该主机运作正常. ping命令 ... 
随机推荐
- bzoj3438
			很容易想到是最小割模型首先对于一个点i,从s到i连一条容量为ai的边,再从i连一条容量为bi的边到t然后就是处理附加权的问题了一开始受到之前的思维定势的影响,一直在思考怎么在作物之间连边由于每种额外收 ... 
- java一切乱码的解释 以及源头【转】
			工作中经常遇到java编码问题,由于缺乏研究,总是无法给出确切的答案,这个周末在网上查了一些资料,在此做些汇总. 问题一:在java中读取文件时应该采用什么编码? Java读取文件的方式总体可以分为两 ... 
- Nodejs in Visual Studio Code 14.IISNode与IIS7.x
			1.开始 部署IISNode环境请参考:Nodejs in Visual Studio Code 08.IIS 部署Nodejs程序请参考:Nodejs in Visual Studio Code 1 ... 
- tyvj P1431 [Tyvj Jan]分配任务(最大流)
			P1431 [Tyvj Jan]分配任务 时间: 1000ms / 空间: 131072KiB / Java类名: Main 描述 随着tyvj发展越来越大,管理员的任务越来越重,如何合理的 ... 
- 洛谷2344 奶牛抗议(DP+BIT+离散化)
			洛谷2344 奶牛抗议 本题地址:http://www.luogu.org/problem/show?pid=2344 题目背景 Generic Cow Protests, 2011 Feb 题目描述 ... 
- MyEclipse里项目部署到tomcat上之后,tomcat webpps文件夹里为什么找不到这个项目
			今天在MyEclipse中部署了一个java web项目,然后发现报404错误,跑到tomcat目录下的webapps文件夹里并发现没有这个项目,才发现MyEclipse没有写入webapp ... 
- VC++ 动态检测串口的热插拔(一)通过注册表实现
			在上一篇文章中讲述了如何通过循环遍历的方法获取可用串口,可是这样的方法过于暴力,难免会想有没有其他的办法那,嘿嘿,那是肯定会有的,不管什么问题,解决问题的方法永远都不止一种.下面讲述如何通过注册表来获 ... 
- Android中的双向链表
			1.看源代码必须搞懂Android的数据结构.在init源代码中双向链表listnode使用非常多,它仅仅有prev和next两个指针,没有不论什么数据成员.这个和linux内核的list_head如 ... 
- x64位windows上程序开发的注意事项
			在Windows上面32位与64位的区别有: 1.指针大小的区别,sizeof(int *)在32bit下面是4个字节,在64bit下面是8个字节 2.size_t的区别,size_t在32bit下面 ... 
- [Angular 2] Exposing component properties to the template
			Showing you how you can expose properties on your Controller to access them using #refs inside of yo ... 
