Qemu-kvm的网络模式

qemu-kvm之桥接模式

桥接原理图 
 
在qemu-kvm的桥接方式中,将宿主机的物理网卡桥接在br0,虚拟网卡vnet1,vnet0链接在eth0上,eth0相当于交换机。客户机从网卡前驱上将信息发送早网卡后驱上,网卡后驱通过eth0将信息发送给br0,在此将信息发送出去。

桥接的配置

 1. 下载并安装tunctl
    [[email protected] ~]# yum install tunctl
 2. 创建桥接
    [[email protected] ~]# brctl addbr br0
 3. 链接桥接
    [[email protected] ~]# brctl addif br0 eth0
 4. 桥接网卡启用stp协议
    [[email protected] ~]# brctl stp br0 up
 5. 设置eth0ip
    [[email protected] ~]# ifconfig eth0 0 up
 6. 自动配置br0
    [[email protected] ~]# dhchlient br0
 7. 设置qemu—ifup脚本    
    if [ -n  "$1" ]
    then
        ip link set $1 up
        brctl addif br0 $1
        exit0
    fi 
8. 设置qemu-dump脚本    
       if [ -n "$1" ]
    then
        tunctl -d $1
        brctl delif br0 eth0
        ip link set $1 down        exit0
    fi 
9. 命令配置
    [[email protected] ~]# qemu-kvm -m 1024 -smp 2 kvm.img -net nic -net tap,ifname=tap1,script=/../qemu-ifup,downscript=/../qemu-down

qemu-kvm之NAT模式

Qemu-kvm的NAT原理图 

DHCP服务器为客户机分配IP地址,并与客户机链接在桥接网卡上,宿主机通过NAT将桥接网卡与物理网卡eth0相连。

Qemu-kvm的NAT配置

 1. 检查是否还有NAT模块
    [[email protected] ~]# iptables -t NAT -L -niptables v1.4.7: can‘t initialize iptables table `NAT‘: Table does not exist (do you need to insmod?)
请编译安装模块 2. 创建桥接
    [[email protected] ~]#  brctl addbr br0
 3. 桥接网卡启用stm协议
    [[email protected] ~]#  brctl stm br0 up
 4. 设置桥向延时
    [[email protected] ~]# brctl setfd br0 0
 5. 设置桥接网卡的IP
    [[email protected] ~]# ifconfig br0 192.168.100.1 up
 6. 安装DHCP
    [[email protected] ~]# yum install dhcpd
 7. 编辑/etc/dhcp/dhcpd.conf
    subnet 192.168.100.0 netmask 255.255.255.0{
      range 192.168.100.2 192.168.100.200;
      option routers 192.168.100.1;
    }
8. 编辑qemu-ifup脚本    
   if [ -n "$1" ]
    then
        ifconfig $1 0.0.0.0 up
        brctl addif br0 $1
        exit 0
    fi 
9. 编辑qemu-dump脚本    
   if [ -n "$1" ]
    then
        ip link set $1 down
        brctl delif br0 $1
        ip link br0 dowm
        brctl delif br0
        exit 0
    fi 
10. 配置NAT
    [[email protected] ~]# iptables -t NAT -A POSTROUTING -d 192.168.100.0/25 -j MASQUERADE
 11. 启动
    [[email protected] ~]# qemu-kvm -m 1024 -smp 2 kvm.img -net nic -net tap,ifname=tap1,script=/../qemu-ifup,downscript=/../qemu-down
 12. 进入客户机中并配置客户机的IP
    [[email protected] ~]# dhclient eth0
 13. 在宿主机中配置端口映射
    [[email protected] ~]# iptables -t NAT -A POSTROUTING -d VIP -p tcp --port 80 -j NAT --to KVM_VIT_IP:8088

qemu-kvm之用户模式

用户模式 
用户模式网络是qemu自身实现的,不需要替他工具来辅助,同时使用slirp实现一整套的TCP/IP协议,并且使用你这个协议实现了虚拟NAT网络。 
缺点: 
性能差,不支持部分功能(如ICMP),不能从宿主机或者外部网络访问客户机

用户模式网络的配置

 1. 命令参数解释
    [[email protected] kvm]# qemu-kvm -net user[,option][,option...]
    vlan=n:链接值vlan,默认伪0
    name=name:指定接口显示的名字
    net=ip/mask:设定虚拟机中可见的ip哇昂罗
    host=add:指定虚拟机中看到的物理机ip地址,默认伪指定网络中第二个地址,即x.x.x.2
    dhcpstart=addr:指定DHCP服务地址池中16个地址的起始ip,默认伪第15-31个,即x.x.x.16-x.x.x.31
    dns=addr:指定dns地址,默认伪虚拟机地址中的第三个地址,及x.x.x.3
    tftp=dir:激活内置的tftp服务器
    bootfile=file:bootp文件名称,实现网络引导
    hostfwd= [TCP|UDP]:[hostaddr]:port-[guestaddr]:geustport  :将宿主机的端口定向到客户机上,guestadd默认为DHCP分配的第一个客户机,*.*.*.15. 
2. 启动一个将客户机22端口映射到宿主机5022,800-5080
    [[email protected] kvm]# qemu-kvm -m 1024 -smp 2 kvm.img --net nic --net user,hostfwd =tcp::5022-:22,hostfwd=tcp::5080-:80
 3. 进入客户机,是客户机能够连接网络
    [[email protected] ~]# dhclient eth0
    [[email protected] ~]# ssh 10.0.2.2
    [[email protected] ~]# exit
    [[email protected] ~]# wget www.baidu.com
 4. 在客户机中启动http


用户模式网络测试 


:qemu-kvm默认使用用户模式网络启动客户机

时间: 2024-10-10 16:22:57

Qemu-kvm的网络模式的相关文章

KVM修改网络模式为Bridge后,原有虚拟机该如何修改配置

场景说明:KVM虚拟机之前没有设置为Bridge模式,然后就直接创建虚拟机了(当时网卡模式选择的为default),后来调整KVM网卡模式为Bridge后,虚拟机没法正常联网. [[email protected] ~]# virsh shudown CentOS-7.3-X86_64 [[email protected] ~]# virsh edit CentOS-7.3-X86_64 将xml配置文件中的:     <interface type='network'>       <

KVM 【SNAT/DNAT2种配置实现以及扁平化网络模式(flat)实现/virsh2种动态迁移实现】

------------------------------------------------------------------------- ###KVM SNAT配置过程 ------------------------------------------------------------------------- #增加一个br0网桥(不跟任何网卡绑定) brctl addbr br0 #激活网桥 ifconfig br0 up #给br0配置IP地址 ifconfig br0 10

kvm/qemu虚拟机桥接网络创建与配置

首先阐述一下kvm与qemu的关系,kvm是修改过的qemu,而且使用了硬件支持的仿真,仿真速度比QEMU快. 配置kvm/qemu的网络有两种方法.其一,默认方式为用户模式网络(Usermode Networking),数据包由NAT方式通过主机的接口进行传送. 其二,使用桥接方式(Bridged Networking),外部的机器可以直接联通到虚拟机,就像联通到你的主机一样. 第一,用户模式,虚拟机可以使用网络服务,但局域网中其他机器包括宿主机无法连接它.比如,它可以浏览网页,但外部机器不能

kvm 网络模式详解

今天我们来介绍下kvm虚拟机里面的网络模式,最常见的就是桥接模式和nat模式,其他还有比如仅主机模式等 1.桥接模式,先附上图看 可以看到这里的物理主机有自己的物理网卡 eth0,eth1,虚拟网卡vnet0,vnet1,网桥br0,虚拟机也有自己的网卡eth0,那么虚拟机数据包是如何访问外网的呢? 首先虚拟机的网卡eth0会对应物理主机的虚拟网卡vnet0,这两个是一一对应的关系,虚拟机数据包首先通过自己的网卡eth0 到达物理机的虚拟网卡vnet0,而vnet0和物理机的网卡eth0都桥接到

kvm网络模式

隔离模型 虚拟机网卡被分成前半段和后半段,彼此之间存在对应关系.前半段在虚拟机上通常表现为eth0.eth1等接口,后半段是物理主机上是一个虚拟接口,通常表现为vnet0.vnet1,与网桥关联(vnet0.vnet1通常称为tap设备).任何时候guest1发往eth0的报文都发往vnet0,guest2发往eth0的报文都发往vnet1,vnet0和vnet1是网桥(虚拟交换机)上的接口,guest1和guest2通信则通过网桥才能进行通信,实现二层通信.(即相当于guest1和guest2

QEMU KVM libvirt 手册(1)

安装 对虚拟化的支持通常在BIOS中是禁掉的,必须开启才可以. 对于Intel CPU,我们可以通过下面的命令查看是否支持虚拟化. # grep "vmx" /proc/cpuinfo flags           : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx pdp

干货分享: 长达250页的Libvirt Qemu KVM的ppt,不实验无真相

<iframe height=570 width=100% scrolling="no" src="http://share.csdn.net/frame/9070" frameborder=0 allowfullscreen></iframe> 1. 概论 1.1 虚拟化的基本类型 无虚拟化 半虚拟化Paravirtualization 非硬件辅助全虚拟化 硬件辅助全虚拟化 实验一:查看系统是否支持硬件辅助虚拟化 1.2 KVM Qemu

QEMU KVM Libvirt手册(6) &ndash; Network Block Device

网络块设备是通过NBD Server将虚拟块设备通过TCP/IP export出来,可以远程访问. NBD Server通常是qemu-nbd 可以提供unix socket qemu-nbd -t -k /home/cliu8/images/ubuntutest-nbd ubuntutest.img 打开另一个窗口,可以连接这个unix socket qemu-system-x86_64 -enable-kvm -name ubuntutest  -m 2048 -hda nbd:unix:/

KVM 介绍(8):使用 libvirt 迁移 QEMU/KVM 虚机和 Nova 虚机 [Nova Libvirt QEMU/KVM Live Migration]

学习 KVM 的系列文章: (1)介绍和安装 (2)CPU 和 内存虚拟化 (3)I/O QEMU 全虚拟化和准虚拟化(Para-virtulizaiton) (4)I/O PCI/PCIe设备直接分配和 SR-IOV (5)libvirt 介绍 (6)Nova 通过 libvirt 管理 QEMU/KVM 虚机 (7)快照 (snapshot) (8)迁移 (migration) 1. QEMU/KVM 迁移的概念 迁移(migration)包括系统整体的迁移和某个工作负载的迁移.系统整理迁移

KVM虚拟网络

宿主服务器安装完成KVM,首先要设定网络,以便和主机网络,客户机之间的网络通信在libvirt中运行KVM网络有两种方法:NAT和Bridge,默认为NAT KVM 客户机网络连接有两种方式: (1)用户模式(NAT):这种方式是默认网络,数据包由NAT方式通过主机的接口进行传送,可以访问外网,但是无法从外网访问虚拟机网络 (2)桥接模式(Bridge):这种模式允许虚拟机像一台独立的主机一样拥有网络,外部的主机可以直接访问到虚拟机内部 一.基于NAT的虚拟网络 KVM安装时默认的网络配置 默认