OVS使用GRE隧道连接VMs
本文档介绍如何使用Open vSwitch允许两个位于不同宿主机的虚拟机通过基于端口的GRE隧道进行通信。
注意:
本指南介绍配置GRE隧道所需的步骤。相同的方法可用于配置Open vSwitch支持的任何其它隧道协议。
建立
本指南假设环境配置如下所述。
两个物理网络
传输网络
以太网网络,用于运行OVS的主机之间的隧道通信。取决于正在使用的隧道协议(本文使用GRE),可能需要修改物理交换机的一些配置(例如,需要调整MTU值)。物理交换设备的配置不在本文的讨论范围内。管理网络
严格来说,这个网络是不需要的,但它是一个简单的方法为物理主机提供远程访问的IP地址,因为IP地址不能直接分配给作为OVS网桥成员的物理接口。
两个物理主机
当前环境假定使用两个名为host1
和host2
的主机。两个主机都是运行Open vSwitch的hypervisor。每台主机都有两个NIC,eth0
和`eth1``,配置如下:
eth0
连接到传输网络。eth0
的IP地址用于通过传输网络与主机2通信。eth1
连接到管理网络。eth1
的IP地址用于到达进行管理的物理主机。
四个虚拟机
每个主机将运行两个虚拟机(VM)。vm1
和vm2
运行在主机host1
,而vm3
和vm4
运行在host2
。
每个虚拟机都有一个在物理主机上显示为Linux设备(如tap0
)的单一接口。
注意:
对于Xen/XenServer,VM接口以Linux设备的形式出现,名称类似与vif1.0
。其它Linux系统可能会将这些接口显示为vnet0
,vnet1
等。
配置步骤
在开始之前,你需要确保知道分配到host1
和host2
上的eth0
接口的IP地址,因为在配置过程中需要用到。
在host1
上执行以下配置。
#. 创建OVS网桥:
$ ovs-vsctl add-br br0
注意:
你不需要添加`eth0`到OVS网桥下.
#. 启动host1
主机上的vm1
和 vm2
. 如果这两个虚拟机没有自动关联到OVS,关联他们到你刚刚创建的OVS网桥上 (以下的命令假定 tap0
对应 vm1
以及 tap1
对应 vm2
)::
$ ovs-vsctl add-port br0 tap0$ ovs-vsctl add-port br0 tap1
#. 添加一个GRE隧道端口:
$ ovs-vsctl add-port br0 gre0 \-- set interface gre0 type=gre options:remote_ip=<IP of eth0 on host2>
使用相同的基本步骤,在host2
主机上创建镜像配置:
#. 创建OVS网桥, 但是不在网桥上添加任何物理接口:
$ ovs-vsctl add-br br0
#. 启动host2
主机上的vm3
和 vm4
, 如果需要将他们的接口添加到OVS网桥(再次, tap0
对应于 vm3
以及 tap1
对应于 vm4
)::
$ ovs-vsctl add-port br0 tap0$ ovs-vsctl add-port br0 tap1
#. 在host2
上创建GRE隧道接口, 这次在指定remote_ip
远端IP地址时,使用host1
上``eth0`接口的IP地址:
$ ovs-vsctl add-port br0 gre0 \-- set interface gre0 type=gre options:remote_ip=<IP of eth0 on host1>
测试
无论虚拟机是否在同一主机上或不同主机上运行,四个虚拟机直接的PING操作都应正常工作。
使用ip route show
(或等效命令),在虚拟机内部运行的操作系统的路由表不应显示主机使用的IP子网的任何信息,仅显示在虚拟机操作系统中配置的IP子网。为了帮助说明这一点,最好在客户虚拟机中使用与主机系统完全不同的IP子网。
排错
如果不同主机上的虚拟机之间的连接不能工作,请检查以下项目:
确保
host1
和host2
通过eth0
的网络连接(连接到传输网络的NIC)。这可能需要使用额外的IP路由或IP路由规则。确保
host1
上的gre0
指向host2
上的eth0
,并且host2
上的gre0
指向’host1’上的eth0
。确保所有虚拟机都被分配了同一子网中的IP地址;此配置中不需要IP路由功能。
OVS使用GRE隧道连接VMs相关推荐
- gre vim linux,OVS搭建GRE隧道和VXLAN
配置IP(以host1为例): ifconfig eth0 10.0.10.10/24 (host1 ifconfig eth0 10.10.10.10/24 (host2 创建网桥 ovs-vsc ...
- ubantu与CentOS虚拟机之间搭建GRE隧道
Author : Email : vip_13031075266@163.com Date : 2020.01.23 Copyright : 未经同意不得 ...
- 华为MPLS L2xxx(VLL)-----附CCC本地连接实验,CCC远程连接实验,SVC远程实验,Martini远程实验,VLL采用GRE隧道
VLL:支持点到点的vpn 虚拟租用线路VLL(Virtual Leased Line),又称虚拟专用线路业务VPWS(Virtual Private Wire Service),是对传统租用线业务的 ...
- OpenStack 网络总结之:理解GRE隧道的工作流程
源文档 <http://openstack.redhat.com/Networking_in_too_much_detail> 文章背景 Openstack的网络配置复杂多样,本文讲述的流 ...
- docke跨主机通信之gre隧道
GRE简介 GRE可以对网络层的任何协议来进行封装,类似LVS的IPIP协议,在原有的数据报上增加GRE协议数据报.然后在网络上传输,到达对端后,解开GRE数据报头,得到真实的数据报.其中的mac地址 ...
- linux 下创建GRE隧道
其他国家的互联网如同一个孤岛.要想访问国外网站异常的缓慢,甚至被和谐了.可以建立一条隧道来避免这种情况,下面说说GRE隧道如何建立. 1. GRE介绍 GRE隧道是一种IP-over-IP的隧道,是通 ...
- 内部办公网与IDC机房的GRE隧道配置实践
背景 公司内网与机房服务器为了实现用内网IP通信的功能,故使用了linux的IP gre隧道的方式.使得公司内部可以直接通过路由直连的方式访问机房服务器. 拓扑图如下: 注:拓扑中的外网IP为虚构的I ...
- Open vSwitch系列实验(二):Open vSwitch的GRE隧道实验网络
Open vSwitch系列实验(二):Open vSwitch的GRE隧道实验网络 一.实验目的 了解GRE协议及原理 理解 Open vSwitch如何配置GRE隧道 二.实验原理 Open vS ...
- 华为AR1220路由器配置GRE隧道
华为AR1220路由器配置GRE隧道 1.概要 组网要求 AR1.AR2.AR3 属于VPN骨干网,它们之间执行OSPF协议. AR2和AR3之间使用三层隧道协议,实现PC1和PC2互联. PC1和P ...
最新文章
- 归纳工作中用到的Linux 命令
- 解决安装下载好的whl库包时,报错:zipfile.BadZipFile: File is not a zip file
- CSS的inline、block与inline-block
- 去掉bat和某些exe的黑窗口
- cocos2d-x游戏实例(12)-实时拖动主角移动
- 去掉WinLicense文件效验的方法
- BZOJ 3224: Tyvj 1728 普通平衡树
- SwitchHosts提示切换hosts失败!没有修改'C:\WINDOWS\system32\drivers\etc\hosts'的权限问题
- cad计算机制图论文,机械制图论文范文
- 内蒙古自治区赤峰市谷歌高清卫星地图下载(百度网盘离线包下载)
- 暴风影音去广告补丁NSIS代码开放
- 视频聊天软件开发都需要用到哪些三方服务?
- mysql中预设的拥有_MySQL中预设的、拥有最高权限超级用户的用户名为
- python取出字典重复值_从字典中提取重复值
- ‘The client noticed that the server is not a supported distribution of Elasticsearch‘ 报错及解决办法
- PC端浏览器如何访问微信小程序
- 手把手教你搭建高逼格监控平台,动起来吧
- Python BeautifuSoup 库 mooc 中国大学学习
- FIL产出持续下降,FIL还会涨吗,还有参与的价值吗?
- 时间序列预测方法最全总结!