将 ext_net 连接到 router - 每天5分钟玩转 OpenStack(145)

上一节完我们创建了外部网络 ext_net,接下来需要将其连接到 Neutron 的虚拟路由器,这样 instance 才能访问外网。

 

点击菜单 Project -> Network -> Routers 进入 router 列表。

点击 router_100_101 的 “Set Gateway” 按钮。

在 “External Network” 下拉列表中选择 ext_net,点击 “Set Gateway”。

外网设置成功。我们需要看看 router 发生了什么变化。

点击 “router_100_101” 链接,打开 “Interfaces” 标签页。

router 多了一个新 interface,IP 为 10.10.10.2。

该 interface 用于连接外网 ext_net,对应的 br-ex 的 port “qg-cf54d3ea-6a”。

在 router 的 namespace 中查可以看到 qg-cf54d3ea-6a 已经配置了 IP 10.10.10.2。

router interface 的命名规则如下: 

1. 如果 interface 用于连接租户网络,命名格式为 qr-xxx。 

2. 如果 interface 用于连接外部网络,命名格式为 qg-xxx。

 

查看 router 的路由表信息:

可以看到默认网关为 10.10.10.1。 

意味着对于访问 vlan100 和 vlan101 租户网络以外的所有流量,router_100_101 都将转发给 ext_net 的网关 10.10.10.1。

 

现在 router_100_101 已经同时连接了 vlan100, vlan101 和 ext_net 三个网络,如下图所示:

我们在 cirros-vm3 上测试一下。

cirros-vm3 位于计算节点,现在已经可以 Ping 到 ext_net 网关 10.10.10.1 了。

通过 traceroute 查看一下 cirros-vm3 到 10.10.10.1 的路径:

数据包经过两跳到达 10.10.10.1 网关。 

1. 数据包首先发送到 router_100_101 连接 vlan101 的 interface(172.16.101.1)。 
2. 然后通过连接 ext_net 的 interface(10.10.10.2) 转发出去,最后到达 10.10.10.1。


当数据包从 router 连接外网的接口 qg-cf54d3ea-6a 发出的时候,会做一次 Source NAT,将包的源地址修改为 router 的接口地址 10.10.10.2,这样就能够保证目的端能够将应答的包发回给 router,然后再转发回源端 instance。

 

有关 Source NAT 的详细分析可以参考 Linux Bridge 中 router 的相关章节。

 

floating IP

通过 SNAT 使得 instance 能够直接访问外网,但外网还不能直接访问 instance。

直接访问 instance 指的是通信连接由外网发起,例如从外网 SSH instance。

如果需要从外网直接访问 instance,可以利用 floating IP。

 

Open vSwitch driver 环境中 floating IP 的实现与 Linux Bridge driver 完全一样:

都是通过在 router 提供网关的外网 interface 上配置 iptables NAT 规则实现。

有关 floating IP 的详细分析可以参考 Linux Bridge 中 floating IP 的相关章节。

 

至此,OVS 的路由服务就讨论完了,下一节我们将开始学习 Neutron VxLAN 的 OVS 实现。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/243150.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Xilinx_ISE和ModelSim的联合使用方法 / 从Xilinx ISE 14.7启动ModelSim时遇到的问题

解决方法: 前提是安装了 xilinx ise14.7 和modelsim se 10.1a 1〉从Windows的Start Menu开始,Xilinx ISE Design Suite 14.7 —〉EDK —〉Tools —〉Compile Simulation Libraries 按照提示编译好library,编译的library输出目录是&#xff…

ML2 配置 OVS VxLAN - 每天5分钟玩转 OpenStack(146)

今天我们开始学习 OVS 如何实现 Neutron VxLAN,关于 VxLAN 的概念以及 Linux Bridge 实现,大家可以参考前面相关章节。 Open vSwitch 支持 VXLAN 和 GRE 这两种 overlay network。因为 OpenStack 对于 VXLAN 与 GRE 配置和实现差别不大,这里只…

4bit超前进位加法器电路

4bit超前进位加法器电路 题目描述 采用门级描述方式,实现此4bit超前进位加法器,接口电路如下: timescale 1ns/1nsmodule lca_4(input [3:0] A_in ,input [3:0] B_in ,input C_1 ,output wire CO …

创建 vxlan 并部署 instance - 每天5分钟玩转 OpenStack(147)

上一节我们完成了 OVS VxLAN 的配置工作,今天创建 vxlan100_net 并部署 instance。 创建 vxlan100_net 打开菜单 Admin -> Networks,点击 “Create Network” 按钮。 显示创建页面。 Provider Network Type 选择 “VXLAN”。 Segmentation ID 即 VNI…

有限编码器电路

有限编码器电路 题目描述 timescale 1ns/1nsmodule encoder_0(input [8:0] I_n ,output reg [3:0] Y_n ); // always (*)begin // casex(I_n) // 9b111111111 : Y_n 4b1111; // 9b0xxxxxxxx : Y_n 4b0110; // 9b10xxx…

优先编码器

优先编码器 题目描述 8-3优先编码器的功能表 timescale 1ns/1nsmodule encoder_83(input [7:0] I ,input EI ,output wire [2:0] Y ,output wire GS ,output wire EO );reg [2:0]Y_reg;reg GS_reg;reg EO…

OVS vxlan 底层结构分析 - 每天5分钟玩转 OpenStack(148)

上一节创建了 vxlan100_net 并部署 instance,今天我们来分析底层网络结构。 控制节点 执行 ovs-vsctl show: br-int br-int 连接了如下 port: tap0d4cb13a-7a 是 vxlan100_net 的 DHCP 服务对应的 interface。 qvoa2ac3b9a-24 将 cirros-vm1 虚拟网卡连…

OVS VxLAN Flow 分析 - 每天5分钟玩转 OpenStack(149)

OVS 的数据流向都是由 Flow 规则控制的,今天我们就来分析 VxLAN 的 Flow 规则。 提个醒:这可能是本教程最烧脑的一节,lets rock it ! 下面分析控制节点上的 flow rule,计算节点类似。 br-int 的 flow rule br-int 的 rule 看上去虽…

制作 OpenStack Linux 镜像 - 每天5分钟玩转 OpenStack(151)

这是 OpenStack 实施经验分享系列的第 1 篇。 OpenStack 的 instance 是通过 Glance 镜像部署的,所以准备镜像是必须要做的工作。本节介绍 Linux 镜像的制作方法,后面还会讨论 Windows 镜像。 下载clould 镜像 最简单的方法是使用标准镜像。主流的Linux发…

NDIS与WinSock关系之自我扫盲

起来真是雷人,最近几天纠结与一个最基本的概念,就是NDIS与WinSock关系,想来想去都没有想明白,真实汗Ing,赶紧找了篇精美的文章来扫盲一下。 原文如下: 文章转自http://www.cnblogs.com/sankye/articles/16…

根据状态转移表实现时序电路

根据状态转移表实现时序电路 某同步时序电路转换表如下,请使用D触发器和必要的逻辑门实现此同步时序电路 电路的接口如下图所示 A表示输入,Y 表示输出 理解状态转移表,画成状态转移图 timescale 1ns/1nsmodule seq_circuit(input …

Devoxx 2017美国大会首日重要演讲一览

Devoxx美国大会今天开幕。\u0026#xD;\n\u0026#xD;\nDevoxx是北美版的欧洲软件大会(European Software Conference)。广受追捧的欧洲软件大会由Stephan Janssen在2001年创立,组织方是比利时Java用户组(BeJUG,Belgian Ja…

Linux-Android启动之Machine-Init函数

Linux/Android启动之Machine-Init函数 前言: 前面写过两篇Linux/Android的启动过程分析,这篇接着前两篇的知识点进行分析。 Linux/Android的启动过程包括了很多内容,其中有些需要了解,有些则需要在系统移植的时候进行修改。本篇文…

边沿检测—以脉冲形式给出信号

边沿检测—以脉冲形式给出信号 题目描述: 有一个缓慢变化的1bit信号a,编写一个程序检测a信号的上升沿给出指示信号rise,当a信号出现下降沿时给出指示信号down。 注:rise,down应为单脉冲信号,在相应边沿出现时的下一个…

贷款秒拒?你可能进了“灰名单”!

灰名单/GRAY LIST今天有客户向我反映,他的征信良好没有半点问题,只有一张信用卡备用,没有一次逾期,但是最近想申请贷款都是被秒拒。他觉得很郁闷,是不是办了假的贷款?他完全不知道被拒的理由,只…

Linux--根文件系统的挂载过程分析

前言: 本篇文章以S3C6410公版的Linux BSP和U-Boot来进行分析,文中所有提及的名词和数据都是以该环境为例,所有的代码流程也是以该环境为例来进行分析。哈哈。如果有不正确或者不完善的地方,欢迎前来拍砖留言或者发邮件到guopeixi…

Troubleshooting OpenStack Bug- 每天5分钟玩转 OpenStack(162)

这是 OpenStack 实施经验分享系列的第 12 篇。 问题描述 客户报告了一个问题:对 instance 执行 migrate 操作,几个小时了一直无法完成,不太正常。 问题分析 遇到这种情况,第一个要检查的就是 instance 所在计算节点的 nova-comput…

ROM简单实现

ROM简单实现 题目描述 实现一个深度为8,位宽为4bit的ROM,数据初始化为0,2,4,6,8,10,12,14。可以通过输入地址addr,输出相应的数据data 接口信号图如下&…

Linux--Sys_Read系统调用过程分析

注: 本片文章以Read函数的调用为例来讲述一下系统对块驱动层的一些处理, 哈哈。如果有不正确或者不完善的地方,欢迎前来拍砖留言或者发邮件到guopeixin126.com进行讨论,先行谢过。 一.Read函数经由的层次模型 首先来了解一下Re…

负债的阶梯,你在第几层?

现在的年轻人成为了消费市场上的中流砥柱,他们为我国的GDP贡献了70%的数据。如今年轻人更愿意刷信用卡、网贷平台借钱消费。尽管在外打拼不容易,但是工作稳定,收入稳定,为了犒劳自己及时享乐,他们选择了背负一点债务。…