配置完成后的网络拓扑如下:

当前环境:

X86服务器1台

Ubuntu 16.04

DevStack搭建OpenStack

网络拓扑:

外部网络:192.168.98.0/24

内部网络:10.0.0.0/24

网络连接: Flat Bridge

1.    通过Horizon按顺序删除已有的Router、Public和Private网络。

注:DevStack默认安装的Public网络为172.24.4.1/24,经常都不能与生产或者实验环境的网络匹配,故先删除掉当前已用网络。

2.    编辑/etc/network/interfaces,填写如下内容。

# This file describes the network interfaces available on your system
# and how to activate them. For more information, see interfaces(). # The loopback network interface
auto lo
iface lo inet loopback # The primary network interface
auto p4p1
iface p4p1 inet static
address 0.0.0.0
netmask 0.0.0.0 auto br-ext
iface br-ext inet static
address 192.168.98.122
netmask 255.255.255.0
gateway 192.168.98.1
dns-nameservers 218.6.200.139

注:p4p1为X86服务的物理网卡名称,br-ext为待使用的bridge。

3.     删除DevStack默认创建的虚拟bridge。

注:OpenStack Neutron默认使用Openvswitch进行网络虚拟化。

使用下述命令查看DevStack默认创建的虚拟bridge。

$ ovs-vsctl show

使用下述命令删除DevStack默认创建的虚拟bridge。

$ ovs-vsctl del-br br-ex

$ ovs-vsctl del-br br-int

$ ovs-vsctl del-br br-tun

4.     修改Neutron原有的Physical Network(从Public修改ext)。

编辑/etc/neutron/plugins/ml2/ml2_conf.ini,修改下述蓝色部分。

[ml2_type_flat]
flat_networks = ext,

[ml2_type_vlan]

network_vlan_ranges = ext

[ovs]
datapath_type = system
bridge_mappings = ext:br-ext
tunnel_bridge = br-tun

5.     添加新的虚拟bridge。

使用下述命令创建的新的虚拟bridge。

$ ovs-vsctl add-br br-ext

$ ovs-vsctl add-port br-ext p4p1

注:p4p1为X86服务的物理网卡名称,br-ext为待使用的bridge。

6.     重启Network和Neutron主服务。

$ service networking restart

$ service devstack@q-svc restart

$ service devstack@q-agt restart

7.     通过Horizon重新创建PublicSite。


8.     通过Horizon重新创建PrivateSite。

9.     通过Horizon重新创建Router。

10.     创建虚拟机并分配Floating IP。

11.     设置Security Group保证可以Ping和SSH到Floating IP。

注:Security Group Rules如下:
ALL ICMP INGRESS CIDR 0.0.0.0
ALL TCP INGRESS CIDR 0.0.0.0
 
12.     完成后测试创建的虚拟机能否访问外网以及外网能否通过Floating IP访问创建的虚拟机。

OpenStack Neutron配置虚拟机访问外网的更多相关文章

  1. OpenStack创建网络和虚拟机、dhcp设备、虚拟路由器、虚拟机访问外网原理分析

    创建网络和虚拟机流程: 1.创建网络和子网 背后发生了什么: Neutron让控制节点上针对此子网的dhcp(虚拟设备)启动,用于给该子网下的实例分配ip 2.生成虚拟机 背后发生了什么: 用户通过G ...

  2. ubuntu 配置dns访问外网

    我新建了一个虚拟机后采用的net模式 一 先配置虚拟机ip使其能在局域网内通信 1.vmware 编辑->虚拟网络编辑器 可以看到网关.掩码等信息 可以看到我们配置的ip应该在192.168.1 ...

  3. 在OpenStack里怎样配置Neutron,让虚拟机访问外网

    http://blog.csdn.net/zhangli_perdue/article/details/50264681 OpenStack里虚机(或者叫instance)只有在分配floating ...

  4. CloseableHttpClient方式配置代理服务器访问外网

    小编最近在负责银行内部项目.其中有模块需要访问天眼查API接口,但由于公司全部内网,所以需要配置代理服务器才可以访问外网接口. 又到了激动人心的上码时刻! public void Connect(Ht ...

  5. VMware配置Linux虚拟机访问外网

    [虚拟机版本] 系统版本 : Centos 6.8 [连接方法] 网络模式:桥接模式 ps:本人比较喜欢用桥接,直接NAT也是可以的 [配置步骤] 1.配置网卡 #配置命令 vi /etc/sysco ...

  6. VirtualBox - NAT虚拟机访问外网 + Host-Only物理主机虚拟机互访

    [root@localhost ~]# vi /etc/sysconfig/network-scripts/ifcfg-System_eth0 # 未手动设定HOST-ONLY静态IP时的默认值 #T ...

  7. 虚拟机固定IP访问外网配置

    大家都知道虚拟机网络连接有三种模式,桥接,host-only,NAT,不再赘述. 这里说一下桥接模式下,实现主机与虚拟机通讯,虚拟机与虚拟机通信,虚拟机访问外网,废话不多说,直接说解决方案: 1.本地 ...

  8. VMware安装Ubuntu配置NAT模式下静态IP,解决访问外网问题

    安装好VMware后,打开网络连接可以看到有VMware Network Adapter VMnet1和VMware Network Adapter VMnet8两个网络适配器,VMnet1是针对桥接 ...

  9. 本地虚拟机在NAT网络连接模式下如何设置才可以访问外网以及使用Xshell远程连接

    本文演示环境: 笔记本电脑系统:windows 7 虚拟机系统:CentOS 7 虚拟化软件:VMware Workstation 12 远程连接工具:Xshell 5 第一步: 打开虚拟网络编辑器 ...

随机推荐

  1. Android开发之Tween(补间动画)

    在android中动画主要有三种,①帧动画(http://blog.csdn.net/dmk877/article/details/45893017)这篇文章已经详细的进行了讲解,②补间动画这也是这篇 ...

  2. SocketAsyncEventArgs

    SocketAsyncEventArgs是.net提供的关于异步socket类,封装了IOCP的使用,可以用它方便的实现NIO(non-blocking IO) NIO对于提升某些场景下Server性 ...

  3. XJOI 3363 树4/ Codeforces 739B Alyona and a tree(树上差分+路径倍增)

    D. Alyona and a tree time limit per test  2 seconds memory limit per test  256 megabytes input  stan ...

  4. [leetcode] 2. Pascal's Triangle II

    我是按难度往下刷的,第二道是帕斯卡三角形二.简单易懂,题目如下: Given an index k, return the kth row of the Pascal's triangle. For ...

  5. Centos操作系统配置VIP以及网络

    打开虚拟机的网络配置文件 vi /etc/sysconfig/network-script/ifc*** (具体文件根据情况自行填写) 编辑这个文件添加入如下配置 IPADDR=ip地址 (添加VIP ...

  6. spring boot 整合 HttpClient

    第一步:引入HttpClient 的jar包 1.httpClient 5.0 开始支持异步(Async)请求: 2.httpclient 版本过低上传文件会出,原因是 org.apache.http ...

  7. BT Tracker的原理及.Net Core简单实现Tracker Server

    最近很忙,自上次Blog被盗 帖子全部丢失后也很少时间更新Blog了,闲暇在国外站点查阅资料时正好看到一些Tracker 的协议资料,也就今天记录并实践了下,再次分享给大家希望可以帮到需要的小伙伴. ...

  8. JAVA程序对MYSQL数据库加锁实验

    什么是脏读,不可重复读,幻读 1. 脏读 :脏读就是指当一个事务正在访问数据,并且对数据进行了修改,而这种修改还没有提交到数据库中,这时,另外一个事务也访问这个数据,然后使用了这个数据. 2. 不可重 ...

  9. xmlns 与 targetNamespace 的解释

    test.xsd文件: <?xml version="1.0" encoding="UTF-8"?> <xs:schema elementFo ...

  10. Thinkpad R400无线网络一个都不见了!

    今天,我的Thinkpad R400无线网络一个都不见了,用手机测试,家里的无线网络正常.反复开关无线网络控制硬件开关,还是不好使,无线网络那个图标里面,并没有无线网络.上网搜索一下,发现小黑居然还有 ...