Linux系统云计算的KVM/QEMU桥接网络设置及kvm资料
2013-08-16 15:34:07 来源:WEB开发网 KVM/QEMU桥接网络设置
配置kvm的网络有2种方法。其一,默认方式为用户模式网络(Usermode Networking),数据包由NAT方式通过主机的接口进行传送。其二,使用桥接方式(Bridged Networking),外部的机器可以直接联通到虚拟机,就像联通到你的主机一样。
第一,用户模式
虚拟机可以使用网络服务,但局域网中其他机器包括宿主机无法连接它。比如,它可以浏览网页,但外部机器不能访问架设在它里面的web服务器。
默认的,虚拟机得到的ip空间为10.0.2.0/24,主机ip为10.0.2.2供虚拟机访问。可以ssh到主机(10.0.2.2),用scp来拷贝文件。
第二,桥接模式
这种模式允许虚拟机就像一台独立的主机一样拥有网络。这种模式需要网卡支持,一般的有线网卡都支持,绝大部分的无线网卡都不支持
A) 在主机上创建一个网络桥
1)安装bridge-utils
sudo apt-get install bridge-utils
2)改变网络设置,先停止网络
sudo invoke-rc.d networking stop
如果是用远程连接进行设置,设置完后,重启网络sudo invoke-rc.d networking restart,如果中途有一步错误,将不能连接
3)修改/etc/network/interfaces,直接用下面的替换。
a) 静态ip模式
auto lo
iface lo inet loopback
auto eth0
iface eth0 inet manual
auto br0
iface br0 inet static
address 192.168.0.10
network 192.168.0.0
netmask 255.255.255.0
broadcast 192.168.0.255
gateway 192.168.0.1
bridge_ports eth0
bridge_stp off
bridge_fd 0
bridge_maxwait 0
b) DHCP模式
auto lo
iface lo inet loopback
auto eth0
iface eth0 inet manual
auto br0
iface br0 inet dhcp
bridge_ports eth0
bridge_stp off
bridge_fd 0
bridge_maxwait 0
4)重启网络
sudo /etc/init.d/networking restart
B) 随机生成一个KVM的MAC地址
MACADDR="52:54:$(dd if=/dev/urandom count=1 2>/dev/null | md5sum | sed 's/^/(../)/(../)/(../)/(../).*$//1:/2:/3:/4/')"; echo $MACADDR
可以指定一个mac地址,但要注意,第一个字节必须为偶数,如00,52等,不能为奇数(01),否则会有不可预料的问题。因为奇数保留为多播使用。如,KVM可以接收ARP包并回复,但这些回复会使其他机器迷惑。这是以太网的规则,而非KVM的问题。
如直接将网卡地址设置为MACADDR="32:32:32:32:32:32"
C) 将以前安装的虚拟机网络改为桥接方式或者安装新的虚拟机使用桥接网络
一个脚本文件
#start kvm.winxp
USERID=`whoami`
MACADDR="32:32:32:32:32:32"
model=e1000e
iface=`sudo tunctl -b -u $USERID`
kvm -net nic,vlan=0,macaddr=$MACADDR -net tap,vlan=0,ifname=$iface $@
sudo tunctl -d $iface
#end kvm.winxp
使用iso文件安装winxp,运行如下命令:
sudo ./kvm.bridge -m 512 -hda winxp.img -cdrom /home/software/zh-hans_windows_xp_professional_with_service_pack_3_x86_cd_vl_x14-74070.iso -boot d
运行安装完的虚拟机,运行如下命令:
sudo ./kvm.bridge -m 512 -hda winxp.img -boot c
===================================================================================
linux中Kvm桥接网络成功的关键
KVM在LINUX中的重要作用,速度等,我不再评价,我只能说,快!
但是,如果你要在一个服务器中使用多个虚拟机,并且想让这些虚拟机提供服务,那么,桥接网络是必不可少的,可是,网上流传的三四个版本中,关于桥接网络的,你试一下,会发现,很难成功,这是何道理?看起来他们似乎都配置成功了,也有可能是软件版本的问题,总之,你亲自尝试的时候,会发现,这其实很难实现。
- ››linux下两台服务器文件实时同步方案设计和实现
- ››Linux文件描述符中的close on exec标志位
- ››Linux下管道使用的一些限制
- ››Linux 误删/usr/bin 解决方法
- ››linux 添加新用户并赋予sudo执行权限
- ››linux常用软件安装方法
- ››Linux的分区已经被你从Windows中删除,系统启动后...
- ››linux enable命令大全
- ››Linux实现基于Loopback的NVI(NAT Virtual Interfa...
- ››Linux远程访问windows时,出现"连接被对端重...
- ››linux中使用head命令和tail命令查看文件中的指定行...
- ››linux swap 分区调控(swap分区 lvm管理)
更多精彩
赞助商链接