两台笔记本搭建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的双机热备,一直没有时间和机会.一直以为只要做双机热备的实验就必 ...
随机推荐
- openssl AES加密以及padding
好习惯,先上代码再说事 加密 void AesEncrypt(unsigned char* pchIn, int nInLen, unsigned char *ciphertext, int & ...
- Qt隐藏标题栏
setWindowFlags (Qt::CustomizeWindowHint)setWindowFlags (Qt::FramelessWindowHint)两个函数都可以去掉标题栏,区别是第一个可 ...
- Struts2应用的开发步骤
1.在web.xml文件中定义核心Filter来拦截用户请求 由于web应用是机遇请求/响应框架的应用,所以不管哪个MVC Web框架,都需要在web.xml中配置该框架的核心Servlet或Filt ...
- SQLite函数详解之二
sqlite3支持的数据类型: NULL.INTEGER.REAL.TEXT.BLOB 但是,sqlite3也支持如下的数据类型 smallint 16位整数 integer ...
- DebugViewHierarchy
DebugViewHierarchy(视图调试)是XCode6新出的一项功能,它可以让开发者在程序运行时,动态的查看当前界面的显示情况,包括视图的层次,控件的大小和位置,而且会以3D效果显示当前视图的 ...
- android数独游戏
最近没事干,照着视频教程写了一个数独游戏,很粗糙还有很多要修改的地方.下面就来说说这个游戏吧 1.自定义一个View控件,用来在屏幕上显示一个9*9的格子,其实就是横着画8条线,竖着画8跳线,然后将其 ...
- 格式化输出[parts/iomanip]
/* 用ios类中的成员函数来进行IO格式的控制总需要写一条单独的语句,而不能直接嵌入到IO语句中,显得很不方便,因此C++又提供了一种用操作符来控制IO的格式.操作符分为带参和不带参两种,带参的定义 ...
- VIM技巧:翻页
整页翻页 ctrl-f ctrl-bf=forword b=backward 翻半页ctrl-d ctlr-ud=down u=up 滚一行ctrl-e ctrl-y zz 让光标所在的行居屏幕中央z ...
- asp.net页面的请求处理响应的过程描述
概述 本篇博客从IIS到asp.net页面后台运行完,整个过程做一个简单的描述,如果有不对的地方,望指出. IIS处理请求的过程 我们通过浏览器(Socket客户端)访问一个IIS服务器上的网页时,该 ...
- Ionic 安装部署
Ionic 安装部署 准备工作 下载安装Node.js, JDK,Apache Ant,Android SDK:编辑器用WebStorm node jdk ant 均需要加进 环境变量path中 An ...