Table of Contents

Setting up kvm network

kvm

kvm packages

 yum install bridge-utils tunctl libvirt qemu-kvm virt-manager
 yum install spice-server.x86_64 spice-gtk3.x86_64 spice-client.x86_64 qemu-kvm-tools
 
 

ip routing etc

 net.ipv4.tcp_window_scaling=0
 

VM Network Types

NAT forwarding (aka "virtual networks") :

Create Host bridge, tap, iptables masqerading

Make sure everything is up and run:

  sudo qemu-kvm -hda instances/controller.qcow2 -m 1024 -vnc :3 -cdrom cloud-init/default/default-cidata.iso -device e1000,netdev=br_ql_mgmt -netdev tap,id=br_ql_mgmt,ifname=controller-eth0,script=no,downscript=no
  

Use scripts to setup network when vm start:

  sudo qemu-kvm -hda $DIR/images/Fedora-x86_64-20-300G-20150130-sda-network.qcow2 \
  -m 1500 -vnc :2 \
  -device e1000,netdev=snet0,mac=DE:AD:BE:EF:12:07 -netdev tap,id=snet0,script=$DIR/scripts/qemu-ifup-stackbr0.sh &

Generate MAC

If you are managing your guests via command line, the following script might be helpful to generate a randomized MAC using QEMU's registered OUI (52:54:00):

MACADDR="52:54:00:$(dd if=/dev/urandom bs=512 count=1 2>/dev/null | md5sum | sed 's/^\(..\)\(..\)\(..\).*$/\1:\2:\3/')"; echo $MACADDR

Bridged networking (aka "shared physical device")

Bridge and NAT (red dot): http://blogs.virtualizationadmin.com/lowe/wp-content/blogs/60/files/2011/11/image_thumb2.png

PCI Passthrough of host network devices

DNSMASQ