现在在NetBSD 6.1.5上装了XEN 4.2,补充一下以前不清楚的内容
1,虚拟网卡之bridge模式
- 一般的文档里都是以bridge模式来介绍的。 /etc/ifconfig.bridge0就是在开机时创建了一个网桥 bridge0,还把物理网卡加入到这个网桥了。如不使用网桥,则无需创建bridge0
- 当domU运行时,是成对创建虚拟网卡的,即一个domU会创建至少一对网卡:一个创建在dom0,另一个是domU里的网卡,它们之间是连在一起的。当运行hvm guest时,在dom0里创建的就是tap0,tap1..., 当运行pv guest时,在dom0里的就是xvifAiB。如果它们被配置成bridge模式,则它们都会被加入bridge0这个网桥。
- 当运行hvm guest时,在dom0里创建了两个虚拟接口,一个是tap0,另一个是xvifAiB,默认使用的是tap0,但是如果在hvm guest里安装了 pv on hvm driver,则使用xvif,不再用tap0, pv on hvm 驱动的作用之一就是告诉hvm guest:"你现在是作为虚拟机来运行的,请使用我特别为你虚拟的设备"
2,虚拟网卡之NAT和路由模式
- 由于hvm guest的配置文件中设置了 type=ioemu,所以强制使用了qemu-ifup 这个脚本,结果是被强制使用了bridge模式。xen 4.2 里无法配置hvm guest指定其它脚本来配置NAT或路由模式
- PV guest 配置文件中通过 script=vif-ip, ip=A.B.C.D 来配置成NAT或路由模式,结果是dom0里生成的xvif 的IP是A.B.C.D
3,以NAT为例配置dom0的IPNAT (参考The NetBSD Network FAQ)
- 配置/etc/ipf.conf
pass in from any to any
pass out from any to any
- 配置/etc/ipnat.conf
map eth0 10.0.0.0/24 -> 0/32
- 配置/etc/rc.conf,启用ipfilter和ipnat
ipfilter=YES
ipnat=YES
- 配置/etc/sysctl.conf, 启用ip转发
net.inet.ip.forwarding=1
- 重启后domU就可以使用NAT了
4, 因为使用XL,所以无需再启动XEND
附上hvm guest配置文件:
-
#kernel = '/usr/pkg/lib/xen/boot/hvmloader'
-
builder = 'hvm'
-
memory = '4096'
-
vcpus = 2
-
-
disk = [ 'file:/data/xen/xenDomU/DomU1-Win7/win7_1.img,ioemu:hda,w',
-
'phy:/dev/cd0a,hdc:cdrom,r']
-
name = "DomU1-Win7"
-
vif = [ 'type=ioemu,bridge=bridge0' ]
-
acpi = 1
-
apic = 1
-
boot = 'dc'
-
vnc = 1
-
serial = 'pty'
-
usb = 1
-
usbdevice = 'tablet'
复制代码
NetBSD PV guest的配置文件:
-
#kernel = "/data/xen/xenDomU/DomU2-NetBSD/netbsd-INSTALL_XEN3_DOMU.gz"
-
kernel = "/data/xen/xenDomU/DomU2-NetBSD/netbsd-XEN3_DOMU.gz"
-
memory = 1024
-
name = "DomU2-NetBSD"
-
vcpus = 1
-
-
#disk = ['file:/data/xen/xenDomU/DomU2-NetBSD/NetBSD_1.img,xvda,w','phy:/dev/sd0a,xvdb,r']
-
disk = ['file:/data/xen/xenDomU/DomU2-NetBSD/NetBSD_1.img,xvda,w']
-
vif = ['script=vif-ip,ip=10.0.0.1/24']
-
boot = "xbd0"
复制代码
阅读(363) | 评论(0) | 转发(0) |