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. cocos js 3.8.1 clippingNode 不能被 ccui.ScrollView 或者ccui.Layout裁剪的bug

    clippingNode不能被ccui.ScrollView.ccui.ListView.ccui.Layout裁剪问题,只需要 设置scrollView ...的裁剪类型 scrollView.se ...

  2. html5 data-*自定义属性取值

    demo: <!DOCTYPE HTML> <html> <head> <title></title> <meta http-equi ...

  3. fastcgi vc6.0demo

    #include <WinSock2.h> #include <stdio.h> #pragma comment(lib, "ws2_32.lib") ty ...

  4. SparkStreaming 监控文件目录

    SparkStream 监控文件目录时,只能监控文件内是否添加新的文件,如果文件名没有改变只是文件内容改变,那么不会检测出有文件进行了添加. )) )).reduceByKey(_ + _) word ...

  5. python 部分数据处理代码

    # -*- coding:utf8 -*- import os import jieba.posseg as pseg # -*- coding:utf8 -*- import os  def spl ...

  6. linux下设置mysql表名不区分大小写

    原文:http://blog.csdn.net/johnsonvily/article/details/6703902 1.Linux下mysql安装完后是默认:区分表名的大小写,不区分列名的大小写: ...

  7. java笔记--问题总结

    1. 垃圾回收算法 标记-清除算法 标记-清除算法是最基本的算法,和他的名字一样,分为两个步骤,一个步骤是标记需要回收的对象.在标记完成后统一回收被标记的对象.这个算法两个问题.一个是效率问题,标记和 ...

  8. 671. Second Minimum Node In a Binary Tree

    /** * Definition for a binary tree node. * struct TreeNode { * int val; * TreeNode *left; * TreeNode ...

  9. 2018.10.25 bzoj4565: [Haoi2016]字符合并(区间dp+状压)

    传送门 当看到那个k≤8k\le 8k≤8的时候就知道需要状压了. 状态定义:f[i][j][k]f[i][j][k]f[i][j][k]表示区间[i,j][i,j][i,j]处理完之后的状态为kkk ...

  10. git常规命令

    $ mkdir filename 创建一个空目录 $ git init 把这个目录变成Git可以管理的仓库 $ pwd 用于显示当前目录 $ cat <file> 查看文件内容 $ git ...