虚拟机与宿主机互通

本文介绍了如何通过openvswitch在虚拟机和宿主机之间建立通信。首先,讲述了准备环境,包括虚拟机的启动和openvswitch的基本命令。接着,通过创建依赖的虚拟机和桥接(bridge)连接,详细描述了如何实现物理机与虚拟机的互通。最后,总结了主要步骤,并预告了接下来关于openvswitch中TAG的讨论。
摘要由CSDN通过智能技术生成

首先准备环境

本节主要讲解如何让包通过openvswitch,连宿主机和虚拟机。

1, 先说说我的环境吧

模块 版本
内核版本 4.0.0-2-amd64
debian Debian 4.0.8-2 (2015-07-22) x86_64
openvswitch-common 2.4.0-1
openvswitch-datapath-dkms 2.4.0-1
openvswitch-datapath-source 2.4.0-1
openvswitch-dbg 2.4.0-1
openvswitch-pki 2.4.0-1
openvswitch-switch 2.4.0-1
openvswitch-test 2.4.0-1
openvswitch-vtep 2.4.0-1
python-openvswitch 2.4.0-1

注: 这些包目前没有源提供,本人是在本地自己打包编译的,
其实编译也很简单:

  • 1,从github上下载代码,
  • 2,切换到相应的分支,
  • 3,运行dpkg-buildpackage即可,具体出现的错误请询问google大神)

qemu的版本不是本文的重点。再此就不再列出具体版本了

准备启动虚拟机的镜像,也不在此叙述,我这边有个副本,直接root登陆,密码是:1,链接地址:http://pan.baidu.com/s/1sjmOZyl 文件名字forqemu.qcow

2,启动一台虚拟机:

qemu的命令不再本文叙述之列,请参照帮助文档:
本人用的启动虚拟机的命令:(仅供参考,参照本文最后一节的备注)

     qemu-system-x86_64 forqemu.qcow2 -m 1024 -net nic,model=virtio,macaddr=00:16:3e:22:22:22  -net tap,ifname=tap124
  • 注意 :
    • 1, 参数中的“ifname=tap124”代表创建出来的tap设备的名字,
    • 2, 可以后台执行该命令,打开一台虚拟机
    • 3, 创建完成之后 执行ifconfig 命令,应该能看到新的网络设备名字 tap124

3,初识所需的openvswitch命令

  • ovs-vsctl add-br $br-name : 增加一台虚拟网桥设备。
  • ovs-vsctl add-port $br-name $port-name : 在网桥设备上增加一个端口,
    注,该端口不是运输层端口,可以抽象为一个插网线的网口
  • ovs-vsctl set-port $port-name tag=$tag-id : 设置端口的tag

创建虚拟机,连通宿主机和虚拟机

创建以来虚拟机

物理机(注,物理机该处的命令在虚拟机启动之后才会有tap124设备)

root@www /home/abaobo 2015-08-14 20:54:23 
# ip a a 10.120.0.2/24 dev tap124               

虚拟

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值