环境说明:

笔记本A、B均运行Ubuntu 14.04,两台笔记本通过无线网卡上网,用一根网线连接两台笔记本的有线网卡。

网络拓扑:

其中,vm1 vm2 S1位于笔记本A,vm3 vm4 S2位于笔记本B。

所有VM均为virtualBox虚拟机(CorePlus.iso是一个很轻量的Linux版本)。

操作步骤:

(1)在两台笔记本上安装OVS

sudo apt-get install openvswitch-switch

(2)在两台笔记本上新建网桥,并将有线网卡eth0添加到网桥中

(注意以下s1、s2分别是两个笔记本上创建的网桥的名字)

笔记本A:

sudo ovs-vsctl add-br s1

sudo ovs-vsctl add-port s1 eth0

笔记本B:

sudo ovs-vsctl add-br s2

sudo ovs-vsctl add-port s2 eth0

(3)在两台笔记本上创建虚拟机,并且连接到ovs交换机上

笔记本A:

以下脚本首先创建了两个虚拟网卡,并将此网卡桥接到ovs交换机中

#!/bin/bash

function add_port()
{
ovs=${};
node=${}; echo $ovs --tap port-- $node;
port=vnet-${ovs}-${node}; sudo ip tuntap add mode tap $port;
sudo ip link set $port up;
sudo ovs-vsctl add-port $ovs $port;
} add_port s1 h1;
add_port s1 h2;

运行脚本之后,ifconfig能看到vnet-s1-h1 vnet-s1-h2两块网卡。

然后在VirtualBox创建虚拟机vm1和vm2,每个虚拟机的网络配置为:

vm1、vm2的第一块网卡均选择NAT,这是为了虚拟机能够访问外网,以便安装软件等。

vm1的第二块网卡设置为桥接,然后网卡选择vnet-s1-h1;

vm2的第二块网卡设置为桥接,然后网卡选择vnet-s1-h2;

笔记本A上的两个虚拟机便创建好了。为两个vm设置ip为10.0.0.1和10.0.0.2。

笔记本B同上,只需把s1改为s2即可。为两个vm设置ip为10.0.0.3和10.0.0.4。

(4)虚拟机开起来之后,分别在A、B上设置网桥s1、s2的控制器地址:

运行控制器的机器需要A、B均能访问,所以在A、B上运行都行。

假设在A上运行控制器:

java -jar target/floodlight.jar

(floodlight是一个SDN控制器)

然后为A、B上的网桥s1、s2设置控制器地址:

A:

sudo ovs-vsctl set-controller s1 tcp:<controller_ip>:6653

B:

sudo ovs-vsctl set-controller s2 tcp:<controller_ip>:6653

其中,controller_ip是运行控制器的机器的ip。(此处即为A的IP地址)

注意:6653是floodlight控制器监听的端口,在1.0版本以前,监听端口为6633。

(5)访问<controller_ip>:8080/ui/index.html,在floodlight的web界面查看拓扑。

如:http://155.98.39.126:8080/ui/index.html

完。

两台笔记本搭建openvswitch网络的更多相关文章

  1. 局域网两台笔记本如何使用svn

    前几天我要和朋友一起开发一个网站,但是都是两台笔记本,连局域网搞的很麻烦,后来就用了git,今天突然想到要用svn,就在网上找了这个办法,结果一试便可以了,很开心 很感谢楼主,下面是我做的步骤绝对给力 ...

  2. centos 7 两台机器搭建三主三从 redis 集群

    参考自:https://linux.cn/article-6719-1.htmlhttp://blog.csdn.net/xu470438000/article/details/42971091 ## ...

  3. FastDFS 分布式文件系统的安装与使用---两台服务器搭建FastDFS环境

    写在前面 有不少小伙伴在实际工作中,对于如何存储文件(图片.视频.音频等)没有一个很好的解决思路.都明白不能将文件存储在单台服务器的磁盘上,也知道需要将文件进行副本备份.如果自己手动写文件的副本机制, ...

  4. 使用spacedesk实现两台笔记本的双屏显示

    转自:https://blog.csdn.net/qq_28106269/article/details/79297132 共屏软件:https://spacedesk.net/

  5. 两台Linux系统之间传输文件

    用CRT分别连上两台需要传输文件的linux系统服务器,并检查防火墙是否关闭. 查看防火墙状态: /etc/init.d/iptables status 若防火墙启用,暂时关闭防火墙: /etc/in ...

  6. 两台装有Ubuntu系统的服务器搭建VPN(一台为本地服务器,另一台为云服务器)

    我们搭建VPN采用的是openvpn,搭建过程总体需要经过三大步骤:   1.openvpn的安装与配置    2.端口转发    3.系统重启iptables规则自动生效  注意:以下所有名令在ro ...

  7. 网络中两台主机的通信过程(TCP)

    两台主机通信有两种情况:1.在同一网段中 2.不在同一网段中 (1.)在同一网段的通信过程 主机在应用层上的操作: TCP/IP协议上tcp的端口对应的各种应用程序,客户机要访问某个应用程序就会要求打 ...

  8. Winpcap网络编程十之Winpcap实战,两台主机通过中间主机通信

    注:源码等等的我不会全然公开的,此篇文章写出来为大家的网络编程或者课程设计提供一定的思路.. 好,本次我们须要完毕的任务是: 完毕两台主机通过中间主机的数据通信(网络层) 添加基于IP地址的转发功能 ...

  9. 两台linux完美实现双机热备【来源网络尚未实践】

    [来源:http://rainbird.blog.51cto.com/211214/225541/]       一直想做基于linux的双机热备,一直没有时间和机会.一直以为只要做双机热备的实验就必 ...

随机推荐

  1. Linux下安装MySQLdb模块

    1,查看是否已安装MySQLdb模块 进入python的命令行,输入 import MySQLdb 如果没有报错,证明此模块已经安装,可以跳过以下步骤. 2,下载最新的MySQLdb安装包: wget ...

  2. MVC4.0 利用IActionFilter实现简单的后台操作日志功能

    首先我们要了解MVC提供了4种常用的拦截器:IActionFilter(Action拦截器接口).IExceptionFilter(异常拦截器接口).IResultFilter(Result拦截器接口 ...

  3. SQL-Server数据库学习笔记-表

    1. 表及其属性 表(Table):也称实体,是存储同类型数据的集合. 列(Field):也称字段.域或属性,它构成表的架构,具体表示为一条信息中的一个属性. 行(Row):也称元组(Tuple),存 ...

  4. 微软职位内部推荐-Senior Software Engineer

    微软近期Open的职位: Are you looking for a big challenge? Do you know why Big Data is the next frontier for ...

  5. C++中的set和java的hashset有何区别?

    以前对C++的STL容器烂熟于心,两年没碰过C++了,现在已经很生疏了.工作原因转战java,对java的容器不甚了解,特别是每看到一种容器,不由自主地拿起和C++对比.C++中的set和java的h ...

  6. bower解决js的依赖管理

    bower解决js的依赖管理 前言: 一个新的web项目开始,我们总是很自然地去下载需要用到的js类库文件,比如jQuery,去官网下载名为jquery-1.10.2.min.js文件,放到我们的项目 ...

  7. CPU大小端判断

    两种方式:1.通过指针         2.通过联合体,联合体里面的数据都是按顺序存储的,而且不论联合体里面有多少数据类型,联合体长度是最长的数据类型的长度.不论初始化多少联合体里面的数据,有效的是最 ...

  8. Spring Mvc 输出Json(iwantmoon.com出品)

    原文:http://iwantmoon.com/Post/f94e49caf9b6455db7158474bab4c4dd 因为工作需要,现在要去做开放平台,考虑了多种方案之后,基本确定 下来,Htt ...

  9. 以前用过Extjs技术的开发人员在学习Extjs4时需要注意的问题

            以前学习过Extjs的同学,在学习Extjs4的时候需要注意几个关键改变: 1.Extjs4的新的类系统. 2.Extjs4中MVC思路 3.Extjs4中的新的命名规范(结合新的MV ...

  10. MVC 基础知识

    一. MVC架构1.MVC模式是一种严格实现应用程序各部分隔离的架构模式.隔离:分离关注点,松耦合2.模型(Model) 代表着核心的业务逻辑和数据.模型封装了域实体的属性和行为3.视图(View) ...