ovs tunnel

实验拓扑

实验拓扑搭建基础脚本

#vbox虚拟机1
ip netns add left
ip link add name veth1 type veth peer name sw1-p1
ip link set dev veth1 netns left
ip netns exec left ifconfig veth1 10.0.0.1/24 up ovs-vsctl add-br sw1
ovs-vsctl add-port sw1 sw1-p1
ip link set sw1-p1 up #vbox虚拟机2
ip netns add right
ip link add name veth1 type veth peer name sw2-p1
ip link set dev veth1 netns right
ip netns exec right ifconfig veth1 10.0.0.2/24 up ovs-vsctl add-br sw2
ovs-vsctl add-port sw2 sw2-p1
ip link set sw2-p1 up

  

GRE TUNNEL 配置

vbox虚拟机1

ovs-vsctl add-port sw1 tun0 -- set Interface tun0 type=gre options:remote_ip=10.30.10.141

  

vbox虚拟机2

ovs-vsctl add-port sw2 tun0 -- set Interface tun0 type=gre options:remote_ip=10.30.10.145

  

查看配置

vbox虚拟机1

root@controller-VirtualBox:~# ovs-vsctl show
29c5cc05-2a31-4f14-a304-3a697698f96a
Bridge "sw1"
Port "sw1"
Interface "sw1"
type: internal
Port "sw1-p1"
Interface "sw1-p1"
Port "tun0"
Interface "tun0"
type: gre
options: {remote_ip="10.30.10.141"}
ovs_version: "2.5.2"

vbox虚拟机2

root@controller-VirtualBox:~# ovs-vsctl show
0f92aaa0-5385-48f5-a54a-644e05652f59
Bridge "sw2"
Port "sw2-p1"
Interface "sw2-p1"
Port "sw2"
Interface "sw2"
type: internal
Port "tun0"
Interface "tun0"
type: gre
options: {remote_ip="10.30.10.145"}
ovs_version: "2.5.2"
root@controller-VirtualBox

  

连通性测试,在vbox虚拟机1 left ns中ping虚拟机2 right

root@controller-VirtualBox:~# ip netns exec left ping 10.0.0.2
PING 10.0.0.2 (10.0.0.2) 56(84) bytes of data.
64 bytes from 10.0.0.2: icmp_seq=1 ttl=64 time=0.953 ms
64 bytes from 10.0.0.2: icmp_seq=2 ttl=64 time=0.609 ms

  

VXLAN TUNNEL配置

vbox虚拟机1

ovs-vsctl add-port sw1 tun0 -- set Interface tun0 type=vxlan options:local_ip=10.30.10.145 options:remote_ip=10.30.10.141

vbbox虚拟机2

ovs-vsctl add-port sw2 tun0 -- set Interface tun0 type=vxlan options:local_ip=10.30.10.141 options:remote_ip=10.30.10.145

查看配置

vbox虚拟机1

root@controller-VirtualBox:~# ovs-vsctl show
29c5cc05-2a31-4f14-a304-3a697698f96a
Bridge "sw1"
Port "sw1"
Interface "sw1"
type: internal
Port "sw1-p1"
Interface "sw1-p1"
Port "tun0"
Interface "tun0"
type: vxlan
options: {local_ip="10.30.10.145", remote_ip="10.30.10.141"}
ovs_version: "2.5.2"

  

vbox虚拟机2

root@controller-VirtualBox:~# ovs-vsctl show
0f92aaa0-5385-48f5-a54a-644e05652f59
Bridge "sw2"
Port "sw2-p1"
Interface "sw2-p1"
Port "sw2"
Interface "sw2"
type: internal
Port "tun0"
Interface "tun0"
type: vxlan
options: {local_ip="10.30.10.141", remote_ip="10.30.10.145"}
ovs_version: "2.5.2"
root@controller-VirtualBox:~#

  

连通性测试,在vbox虚拟机1 left ns中ping虚拟机2 right

root@controller-VirtualBox:~# ip netns exec left ping 10.0.0.2
PING 10.0.0.2 (10.0.0.2) 56(84) bytes of data.
64 bytes from 10.0.0.2: icmp_seq=1 ttl=64 time=0.905 ms
64 bytes from 10.0.0.2: icmp_seq=2 ttl=64 time=0.490 ms
2 packets transmitted, 2 received, 0% packet loss, time 1001ms
rtt min/avg/max/mdev = 0.490/0.697/0.905/0.209 ms

  

openvSwitch tunnel的更多相关文章

  1. Openvswitch原理与代码分析(4):网络包的处理过程

      在上一节提到,Openvswitch的内核模块openvswitch.ko会在网卡上注册一个函数netdev_frame_hook,每当有网络包到达网卡的时候,这个函数就会被调用.   stati ...

  2. Openvswitch原理与代码分析(1):总体架构

      一.Opevswitch总体架构   Openvswitch的架构网上有如下的图表示:       每个模块都有不同的功能 ovs-vswitchd 为主要模块,实现交换机的守护进程daemon ...

  3. openvswitch——mac和vlan learning for ingress port

    对于普通的switch,都会有这个学习的过程,当一个包到来的时候,由于包里面有MAC,VLAN Tag,以及从哪个口进来的这个信息.于是switch学习后,维护了一个表格port –> MAC ...

  4. (转载)研究openvswitch的流量模式

    最近又开始弄openvswitch,网上也有不少的资料,但是发觉都集中在openvswitch安装及简单使用或者一些原码分析,从心里来讲,感觉这些和心里得到的差距有点大啊,其实更希望能类似资料在ope ...

  5. 从Openvswitch代码看网络包的旅程

    我们知道,Openvwitch可以创建虚拟交换机,而网络包可以通过虚拟交换机进行转发,并通过流表进行处理,具体的过程如何呢? 一.内核模块Openvswitch.ko的加载 OVS是内核态和用户态配合 ...

  6. 干货分享: 长达150页的openvswitch的ppt,不实验无真相

    下载链接: Openvswitch实验教程 http://files.cnblogs.com/popsuper1982/Openvswtich.pptx 一.概论 Software Defined N ...

  7. Openvswitch手册(1): 架构,SSL, Manager, Bridge

    Openvswitch是一个virutal swtich, 支持Open Flow协议,当然也有一些硬件Switch也支持Open Flow协议,他们都可以被统一的Controller管理,从而实现物 ...

  8. [ovs] openvswitch 入门

    https://www.sdnlab.com/sdn-guide/14747.html http://sdnhub.cn/index.php/openv-switch-full-guide/ http ...

  9. [转]An overview of Openvswitch implementation

    This is NOT a tutorial on how to use openvswitch, this is for developers who want to know the implem ...

随机推荐

  1. jquery plugin 之 form表单验证插件

    基于h5表单验证系统.扩展了对easyui组件的支持 先上图: 提示样式用到了伪对象的 {content: attr(xxx)}函数方法,实现提示信息能动态切换. 1.关键属性说明: type: 表单 ...

  2. SpringMVC 学习 十 SSM环境搭建(三)springMVC文件配置

    SpringMVC文件配置的详细过程,可以查看springMVC环境搭建的注解配置篇<springMVC学习三 注解开发环境搭建> <?xml version="1.0&q ...

  3. List<T>中,Remove和RemoveAt区别

    Remove删除的是匹配的第一项.比如你的list里面有2个相同的项.那么就删除第一个.后面的不删除,找不到元素和删除失败都返回falseRemoveAt是删除索引下的项

  4. GUI的优化操作/添加背景图片等

    一.背景图片的添加这是JAVA中添加背景图片的方式,基本思路先建立一个Label标签,然后建立一个层次的布局,将label标签添加到最下面去. ImageIcon image=new ImageIco ...

  5. P3834 【模板】可持久化线段树 1(主席树)

    #include <bits/stdc++.h> #define read read() #define up(i,l,r) for(int i = (l);i <= (r);i++ ...

  6. (4)4 larger-than-life lessons from soap operas

    https://www.ted.com/talks/kate_adams_4_larger_than_life_lessons_from_soap_operas/transcript 00:12In ...

  7. 解决Oracle+Mybatis批量插入报错:SQL 命令未正确结束

    Mybatis批量插入需要foreach元素.foreach元素有以下主要属性: (1)item:集合中每一个元素进行迭代时的别名. (2)index:指定一个名字,用于表示在迭代过程中,每次迭代到的 ...

  8. idea在相应的包下右键创建servlet,找不到servlet选项

    开始pom.xml文件里面我是只引进了个servlet包,但是右键依旧没有servlet选项 <dependency> <groupId>javax.servlet</g ...

  9. maven学习之一:maven安装

    1.下载maven: 地址:https://maven.apache.org/ 点击download后; 解压: 解压后放在d:\develop目录下 下面我们去配置环境变量,找到计算机,右键,找到属 ...

  10. UVa 10294 Arif in Dhaka (First Love Part 2) (Polya定理)

    题意:给定 n 和 m 表示要制作一个项链和手镯,项链和手镯的区别就是手镯旋转和翻转都是相同的,而项链旋转都是相同的,而翻转是不同的,问你使用 n 个珠子和 m 种颜色可以制作多少种项链和手镯. 析: ...