在qemu中用tun/tap设备与宿主机通讯

原创 2015年07月09日 10:38:10
在qemu中用tun/tap设备与宿主机通讯

宿主机软件的安装配置。
准备: 安装必要的工具
$sudo apt-get install bridge-utils uml-utilities
这样就可以使用brctl, tunctl 命令了。

1. 创建一个网桥br0,网桥中包括eth0, tap0
    由于没有dhcp 服务器,这里采用了静态分配ip
   br0  网桥接口                ip: 192.168.1.1
   eth0 是物理网络接口            ip: 192.168.1.100
   tap0 是创建出的虚拟网络接口    ip: 192.168.1.101

script 文件如下:
$cat br_tap.sh
#!/bin/sh
#首先关闭eth0
ifdown eth0
#添加一个虚拟网桥br0
brctl addbr br0
#在br0 中添加一个接口eth0
brctl addif br0 eth0
#只有一个网桥,所以关闭生成树协议
brctl stp br0 off

#由于没有dhcp, 为br0,eth0分配一个静态IP, 设置混杂模式,并打开
ifconfig br0 192.168.1.2 promisc up
ifconfig eth0 192.168.1.100 promisc up

#添加默认网关
#route add default gw 192.168.0.1

#创建一个tap0接口,只允许root用户访问
tunctl -t tap0 -u root
#让tap也处于混杂模式,便于客户机分配IP
ifconfig tap0 192.168.1.101 promisc up
#把tap0 也添加到 网桥中
brctl addif br0 tap0

执行脚本和查看结果:
$ sudo ./br_tap.sh
[sudo] password for hjj:
ifdown: interface eth0 not configured
Set 'tap0' persistent and owned by uid 0
$ brctl show br0
bridge name    bridge id        STP enabled    interfaces
br0        8000.74e6e242b01d    no        eth0
                            tap0
还可以用ifconfig 来查看 br0, eth0, tap0 的ip地址


模拟机
启动模拟机, 为模拟机分配一个同网段ip, 模拟机和宿主机就可以通讯了,实测通过 支持ping 等所有网络通讯。
例如:
sudo qemu-system-x86_64 -enable-kvm -hda disk.img -cdrom TinyCore-4.3.1.iso -net nic -net tap,ifname=tap0,script=no
版权声明:本文为博主原创文章,未经博主允许不得转载。

QEMU 简单使用

安装: yum install qemu 创建image文件: qemu-img create -f qcow2 guest.qcow2 3G 安装linux: 1)下载一个镜像文件,http:...
  • standmyground
  • standmyground
  • 2016年09月18日 19:03
  • 4267

qemu虚拟机通过tun/tap上网

qemu虚拟机通过tun/tap上网 ====================== v0.1 2014.1.1 在学习perf的时候,需要使的qemu虚拟机可以上网,下面是上网的设置过程 参考...
  • scarecrow_byr
  • scarecrow_byr
  • 2014年01月01日 23:54
  • 3944

120011111111QEMU中启动单虚拟机并已TAP/TUN方式联网的方法请参见:QEMU中启动单虚拟机并已TAP/TUN方式联网的方法请参见:QEMU中启动单虚拟机并已TAP/TUN方式联网的方

用Qemu模拟ARM(1) 前面已经安装并配置了编译链和qemu,现在可以用qemu来模拟arm平台了。 1. Hello, Qemu! 输入下面的代码: hello.c - hell...
  • tycoon1988
  • tycoon1988
  • 2015年06月17日 09:59
  • 466

访问qemu虚拟机的五种姿势

玩转qemu
  • RichardYSteven
  • RichardYSteven
  • 2017年02月01日 11:06
  • 3750

用TAP方式让QEMU虚拟机与host联网

转载自 cgjvcd最终编辑 cgjvcd QEMU虚拟机网络的缺省模式是NAT方式,即虚拟机可以通过host访问外网,但host和外网无法访问虚拟机。如果要想让host访问虚拟机,则可以使用T...
  • larryliuqing
  • larryliuqing
  • 2014年05月27日 00:44
  • 1285

KVM&QEMU学习笔记(二)

使用快照 快照(Snapshot)是Copy-on-write的一种应用。QEMU支持两种快照: 内部快照(internal snapshot):在qcow2镜像的snapshot table中...
  • z770816239
  • z770816239
  • 2016年12月09日 15:31
  • 1612

qemu 网络通信

qemu安装: 1、 apt-get install qemu kernel-package linux-source kqemu-source build-essential 2、 cd /...
  • stonesharp
  • stonesharp
  • 2014年08月13日 13:18
  • 1382

qemu虚拟机与外部网络的通信

一、基本概念为了使虚拟机能够与外界通信,Qemu需要为虚拟机提供网络设备。Qemu支持的常用网卡包括NE2000、rtl8139、pcnet32等。命令行上用-net nic为虚拟机创建虚拟机网卡。例...
  • shendl
  • shendl
  • 2013年07月25日 14:03
  • 5274

tunctl添加虚拟网卡TUN/TAP与brctl添加网桥

1 Linux添加虚拟网卡三种方法 方法1: ifconfig命令创建\删除虚拟网卡 ifconfig eth0:0 192.168.1.10 netmask 255.255.255.0 up 删除虚...
  • u011956172
  • u011956172
  • 2014年04月08日 10:46
  • 7521

qemu-kvm虚拟机与宿主机之间简单文件传输方法

 qemu-kvm虚拟机与宿主机之间实现文件传输,大概两类方法: 1. 虚拟机与宿主机之间,使用网络来进行文件传输。这个需要先在宿主机上配置网络桥架,在qemu-kvm启动配置网卡就可以实现文...
  • chenyulancn
  • chenyulancn
  • 2016年10月13日 21:42
  • 3872
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:在qemu中用tun/tap设备与宿主机通讯
举报原因:
原因补充:

(最多只允许输入30个字)