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. MyBatis批量更新

    逐条更新 这种方式显然是最简单,也最不容易出错的,即便出错也只是影响到当条出错的数据,而且可以对每条数据都比较可控. 代码 updateBatch(List<MyData> datas){ ...

  2. opencv学习之路(6)、鼠标截图,滑动条播放视频

    一.鼠标截图 #include<opencv2/opencv.hpp> #include<iostream> using namespace cv; using namespa ...

  3. IDEA——找不到或无法加载主类的一种暴力解决方法

    对于用maven构建的java项目,可以利用maven工具编译一下,大致上可以解决很多奇奇怪怪的问题. 具体操作如下: 首先找到项目所在的文件夹,以F:\project为例. 删除.idea文件. 在 ...

  4. 20145319 《网络渗透》免考—API拦截技术

    20145319 <网络渗透>免考-API拦截技术 概述 本次实验在window环境下进行,主要通过编写hook代码和注入程序,将我们的hook代码通过dll文件的形式注入到目标中,拦截其 ...

  5. 20145325张梓靖 《网络对抗技术》 PC平台逆向破解

    20145325张梓靖 <网络对抗技术> PC平台逆向破解 学习任务 shellcode注入:shellcode实际是一段代码,但却作为数据发送给受攻击服务器,将代码存储到对方的堆栈中,并 ...

  6. Python3基础 list extend 合并列表

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

  7. Flask学习【第8篇】:flask-session组件

    简介 flask-session是flask框架的session组件,由于原来flask内置session使用签名cookie保存,该组件则将支持session保存到多个地方,如 redis:保存数据 ...

  8. Python中的open和codecs.open

    最近老被编码困扰,多次折腾之后,感觉python的编解码做得挺好的,只要了解下边的流程,一般都能解决 input文件(gbk, utf-8...) ----decode-----> unicod ...

  9. Chrome浏览器F12开发者工具的几个小技巧总结

    1.直接修改页面元素 选择页面上元素,右键“检查”,会打开开发者工具窗口,显示当前选择元素的源代码,可以双击进行修改.如果要修改的东西比较多,可以折叠元素并单击选择,再右键Edit as HTML修改 ...

  10. tomcat使用spring-loaded实现应用热部署

    springloaded官方说明: Spring Loaded is a JVM agent for reloading class file changes whilst a JVM is runn ...