两台笔记本搭建openvswitch网络
环境说明:
笔记本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网络的更多相关文章
- 局域网两台笔记本如何使用svn
前几天我要和朋友一起开发一个网站,但是都是两台笔记本,连局域网搞的很麻烦,后来就用了git,今天突然想到要用svn,就在网上找了这个办法,结果一试便可以了,很开心 很感谢楼主,下面是我做的步骤绝对给力 ...
- centos 7 两台机器搭建三主三从 redis 集群
参考自:https://linux.cn/article-6719-1.htmlhttp://blog.csdn.net/xu470438000/article/details/42971091 ## ...
- FastDFS 分布式文件系统的安装与使用---两台服务器搭建FastDFS环境
写在前面 有不少小伙伴在实际工作中,对于如何存储文件(图片.视频.音频等)没有一个很好的解决思路.都明白不能将文件存储在单台服务器的磁盘上,也知道需要将文件进行副本备份.如果自己手动写文件的副本机制, ...
- 使用spacedesk实现两台笔记本的双屏显示
转自:https://blog.csdn.net/qq_28106269/article/details/79297132 共屏软件:https://spacedesk.net/
- 两台Linux系统之间传输文件
用CRT分别连上两台需要传输文件的linux系统服务器,并检查防火墙是否关闭. 查看防火墙状态: /etc/init.d/iptables status 若防火墙启用,暂时关闭防火墙: /etc/in ...
- 两台装有Ubuntu系统的服务器搭建VPN(一台为本地服务器,另一台为云服务器)
我们搭建VPN采用的是openvpn,搭建过程总体需要经过三大步骤: 1.openvpn的安装与配置 2.端口转发 3.系统重启iptables规则自动生效 注意:以下所有名令在ro ...
- 网络中两台主机的通信过程(TCP)
两台主机通信有两种情况:1.在同一网段中 2.不在同一网段中 (1.)在同一网段的通信过程 主机在应用层上的操作: TCP/IP协议上tcp的端口对应的各种应用程序,客户机要访问某个应用程序就会要求打 ...
- Winpcap网络编程十之Winpcap实战,两台主机通过中间主机通信
注:源码等等的我不会全然公开的,此篇文章写出来为大家的网络编程或者课程设计提供一定的思路.. 好,本次我们须要完毕的任务是: 完毕两台主机通过中间主机的数据通信(网络层) 添加基于IP地址的转发功能 ...
- 两台linux完美实现双机热备【来源网络尚未实践】
[来源:http://rainbird.blog.51cto.com/211214/225541/] 一直想做基于linux的双机热备,一直没有时间和机会.一直以为只要做双机热备的实验就必 ...
随机推荐
- Linux下安装MySQLdb模块
1,查看是否已安装MySQLdb模块 进入python的命令行,输入 import MySQLdb 如果没有报错,证明此模块已经安装,可以跳过以下步骤. 2,下载最新的MySQLdb安装包: wget ...
- MVC4.0 利用IActionFilter实现简单的后台操作日志功能
首先我们要了解MVC提供了4种常用的拦截器:IActionFilter(Action拦截器接口).IExceptionFilter(异常拦截器接口).IResultFilter(Result拦截器接口 ...
- SQL-Server数据库学习笔记-表
1. 表及其属性 表(Table):也称实体,是存储同类型数据的集合. 列(Field):也称字段.域或属性,它构成表的架构,具体表示为一条信息中的一个属性. 行(Row):也称元组(Tuple),存 ...
- 微软职位内部推荐-Senior Software Engineer
微软近期Open的职位: Are you looking for a big challenge? Do you know why Big Data is the next frontier for ...
- C++中的set和java的hashset有何区别?
以前对C++的STL容器烂熟于心,两年没碰过C++了,现在已经很生疏了.工作原因转战java,对java的容器不甚了解,特别是每看到一种容器,不由自主地拿起和C++对比.C++中的set和java的h ...
- bower解决js的依赖管理
bower解决js的依赖管理 前言: 一个新的web项目开始,我们总是很自然地去下载需要用到的js类库文件,比如jQuery,去官网下载名为jquery-1.10.2.min.js文件,放到我们的项目 ...
- CPU大小端判断
两种方式:1.通过指针 2.通过联合体,联合体里面的数据都是按顺序存储的,而且不论联合体里面有多少数据类型,联合体长度是最长的数据类型的长度.不论初始化多少联合体里面的数据,有效的是最 ...
- Spring Mvc 输出Json(iwantmoon.com出品)
原文:http://iwantmoon.com/Post/f94e49caf9b6455db7158474bab4c4dd 因为工作需要,现在要去做开放平台,考虑了多种方案之后,基本确定 下来,Htt ...
- 以前用过Extjs技术的开发人员在学习Extjs4时需要注意的问题
以前学习过Extjs的同学,在学习Extjs4的时候需要注意几个关键改变: 1.Extjs4的新的类系统. 2.Extjs4中MVC思路 3.Extjs4中的新的命名规范(结合新的MV ...
- MVC 基础知识
一. MVC架构1.MVC模式是一种严格实现应用程序各部分隔离的架构模式.隔离:分离关注点,松耦合2.模型(Model) 代表着核心的业务逻辑和数据.模型封装了域实体的属性和行为3.视图(View) ...