1,安装openvswitch ,图形界面显示等用到的安装包。

yum install libvirt openvswitch python-virtinst xauth tigervnc -y

2,移除默认的libvirt网络。

virsh net-list --all  //查看命令

virsh net-destroy default

virsh net-autostart --disable default

virsh net-undefine default

3,启动openvswitch

service openvswitch start

chkconfig openvswitch on

4,创建一个openvswitch bridge :br-int。

ovs-vsctl add-br br-int

5,利用openvswitch的br-int,定义一个libvirt网络名称为ovs-network。

vim libvirt-vlans.xml  //创建3个网络(一个无id,两个带id。)

<network>

<name>ovs-network</name>

<forward mode=”bridge” />

<bridge name=”br-int” />

<virtualport type=”openvswitch”/>

<portgroup name=”no-vlan” default=”yes”>

</portgroup>

<portgroup name=”vlan-100”>

<vlan>

<tag id=”100” />

</vlan>

</portgroup>

<portgroup name=”vlan-200”>

<vlan>

<tag id=”200” />

</vlan>

</portgroup>

</network>

6,定义并启动libvirt网络。

定义:virsh net-define libvirt-vlans.xml

查看:virsh net-list --all

自动启动:virsh net-autostart ovs-network

启动: virsh net-start ovs-network

7,创建一个instance,并连接到ovs-network,网络接口部分配置如下:

可事先拷贝一个虚拟机的xml配置文件,修改interface的配置做如下替换。

<interface type='network'>

<source network='ovs-network' portgroup='vlan-100'/>

<model type='virtio'/>

</interface>

8,利用instance.xml创建虚拟机。

定义虚拟机:virsh define instance1.xml

查看虚拟机:virsh list --all

启动虚拟机:virsh start instance1

virsh vncdesplay instance1

vncviewer查看:vncviewer :0

9,启动console后,给该虚拟机设置以下ip。

ip addr add 192.168.1.20/24 dev eth0

在外层主机上执行:ovs-vsctl show

会看到,虚拟机启动后,自动在bridge上生成vnet0端口。

10,添加一个openvswitch port。实现物理机与虚拟机vlan-100的联通。

ip link add br-int-tap100 type veth peer name tap100

ovs-vsctl add-port br-int br-int-tap100

ovs-vsctl set port br-int-tap100 tag=100

ip addr add 192.168.1.21/24 dev tap100

ip link set tap100 up

ip link set br-int-tap100 up

openvswitch vlan下的虚拟机与物理机通信的更多相关文章

  1. Vmware虚拟机网络模式及虚拟机与物理机通信方法

    [转]http://www.cqeis.com/news_detail/newsId=1477.html Vmware虚拟机软件是一个“虚拟PC”软件,它使你可以在一台机器上同时运行二个或更多Wind ...

  2. Virtualbox 设置虚拟机和物理机共享文件夹

    Virtualbox 设置虚拟机和物理机共享文件夹 概述 当我们在本地机安装好一个虚拟机后,特别是安装linux系统的朋友们,经常需要将本地机的文件传递到虚拟机中, 能实现的方式肯定是多式多样的,就本 ...

  3. [转帖]如何禁止VirtualBox虚拟机和物理机之间的时间同步

    如何禁止VirtualBox虚拟机和物理机之间的时间同步 乐者为王 2014-11-02 706 阅读   http://ju.outofmemory.cn/entry/97301 验证了下 修改注册 ...

  4. 【Linux基础】判断当前机器是虚拟机还是物理机

    1.使用dmidecode命令查看(root权限) DMI (Desktop Management Interface, DMI)的主要组成部分是Management InformationForma ...

  5. ESP32搭建2.虚拟机与物理机实现文件传输

    为后期操作方便,搭建实现虚拟机和物理机的文件直传. 1.     将安装好的虚拟机打开,点击VMware的虚拟机标签中的更新VMware Tools,等待一小会,虚拟CD盘中弹出文件 2.将压缩包Co ...

  6. Linux 虚拟机和物理机配互信出现无法连接

    配置文件位置:[root@hank-yoon data]# vi /etc/ssh/sshd_configPermitRootLogin yes 在物理机中,装完系统,默认情况下PermitRootL ...

  7. virtualbox虚拟机与物理机windows文件共享

    必须安装virtualbox的增强功能包(VBoxGuestAdditions) 1.打开Linux系统,选择 设备->安装增强增强功能 2.等待其自动安装,当出现press return to ...

  8. Mac下Kali虚拟机与宿主机共享文件夹

    宿主机: 1.创建文件夹.测试文件 ZhangSan-MacBook-Air:~ zhangsan$ mkdir kalishare && cd kalishare/ ZhangSan ...

  9. VMware 中安装虚拟机和宿主机通信

    网络上对于三种连接模式说的很多了,这里就不在具体的说明了.此处采用的NAT模式连接虚拟机,让虚拟机和宿主机互相通讯,并且让虚拟机能访问互联网. 1.首先设置虚拟机的网络,如下图.通过如下操作进入虚拟机 ...

随机推荐

  1. php 接收blob数据流,base64数据流 转为 blob二进制数据流

    php正常接收参数的方式如下:$_GET$_POST$_REQUEST 但是如果跨语言接收请求参数的话,可能会出现一系列的问题,其他语言的http请求可能是基于数据流的概念来传递参数的,如果按照常规处 ...

  2. Linux系统更改默认Python版本

    Linux 默认的Python版本为Python2.X,但是在很多时候我们需要使用Python3.X,那么我们需要更改Linux的默认Python版本,更改很简单,只需要两句话. sudo updat ...

  3. [c/c++] programming之路(11)、顺序分支

    一.模块化设计 #include<stdio.h> #include<stdlib.h> #include<windows.h> void openbaidu(){ ...

  4. Vijos 1404 遭遇战 - 动态规划 - 线段树 - 最短路 - 堆

    背景 你知道吗,SQ Class的人都很喜欢打CS.(不知道CS是什么的人不用参加这次比赛). 描述 今天,他们在打一张叫DUSTII的地图,万恶的恐怖分子要炸掉藏在A区的SQC论坛服务器!我们SQC ...

  5. VS2012创建ATL工程及使用MFC测试COM组件

    一.创建ATL工程 1.创建ATL项目,取名为ATLMyCom 2.在ATL项目向导中,勾选[支持MFC](利用MFC测试用).[支持 COM+ 1.0],其余的选项默认,点击完成. 3.右键工程名称 ...

  6. Python3 tkinter基础 Frame bind 敲击键盘事件 将按键打印到console中

             Python : 3.7.0          OS : Ubuntu 18.04.1 LTS         IDE : PyCharm 2018.2.4       Conda ...

  7. 强大的Django后台管理

    Django 后台 django的后台我们只要加少些代码,就可以实现强大的功能.与后台相关文件:每个app中的 admin.py 文件与后台相关 下面示例是做一个后台添加博客文章的例子: 新建一个 名 ...

  8. POP-OOP-SOP-COP-SOA-AOP

    一.面向过程 二.面向对象 三.面向服务 四.补充 五.总结: 英文及缩写: 面向过程:procedure oriented programming POP 面向对象:object oriented ...

  9. dh

    -.-- -.. --- -. --- - -.- -. --- .--

  10. LOJ#2427. 「POI2010」珍珠项链 Beads

    题目地址 题目链接 题解 不会算复杂度真是致命,暴力枚举k每次计算是n/2+n/3+n/4+...+1的,用调和级数算是\(O(nlogn)\)的... 如果写哈希表的话能够\(O(nlogn)\), ...