zhaoke 发表于 2006-12-26 14:50:30

如何在具有Wifi网络的笔记本上配置Xen客户机

如何在具有Wifi网络的笔记本上配置Xen客户机

赵珂, cn.zhaoke.com
http://blog.zhaoke.com/41.html


目录

1. 问题
2. 虚拟网络
3. NAT
3.1 网络管理器
4. 客户机
5. DNS


问题

在连网的笔记上运行Xen需要一些额外的配置. 通常Xen客户机通过软件网络桥(software network bridge)连接到系统的一个网络接口上. 而当系统位置改变或者从一个无线网络切换到另一个无线网络的时候, 这种方法就不奏效了, 因为客户机不清楚主机网络的改变.

最好的方法是主机系统(dom0)在不同的环境下都能自行配置网络路由, 通过NAT连接到互连网. 本文介绍如何相对简单来实现这个方法.

虚拟网络

一个简单的办法是Xen以太网桥完全用于系统内部网络, 外部网络(无线和有线)根据不同的连网环境来进行配置. 我们可以简单在零域(domain zero)中绑定Xen以太网桥到一个虚拟网络接口上.

添加下面代码到/etc/modprobe.conf:

alias dummy0 dummy
options dummy numdummies=1

配置虚拟网络(Dunmy Network, 使用Red Hat风格的初始化脚本): 创建配置文件 /etc/sysconfig/network-scripts/ifcfg-dummy0:

# Dummy interface for Xen
DEVICE=dummy0
BOOTPROTO=none
ONBOOT=yes
USERCTL=no
IPV6INIT=no
PEERDNS=yes
TYPE=Ethernet
NETMASK=255.255.255.0
IPADDR=10.1.1.1
ARP=yes

为了能实际绑定xenbr0以太网桥到dummy0, 编辑/etc/xen/xend-config.sxp的网络脚本行:

(network-script ‘network-bridge bridge=xenbr0 netdev=dummy0′)

NAT

如果要使数据包转发和网络地址翻译(NAT)功能正常工作, 你需要添加下面命令到你的防火墙启动脚本当中, 或者简单添加到rc.local文件:

/sbin/iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
/sbin/iptables -t nat -A POSTROUTING -o eth1 -j MASQUERADE

通过/etc/sysctl.conf打开数据包转发功能.

# Controls IP packet forwarding
net.ipv4.ip_forward = 1
net.ipv6.conf.default.forwarding = 1

网络管理器(NetworkManager)能够处理连接到系统中的网络移动设备(如wifi网卡或U盘). 但是这样不可预测的网络接口名称增加了复杂性. 幸运的是每当一个接口断开或连上的时候, NetworkManagerDispatcher进程可以调用/etc/NetworkManager/dispatcher.d中的任何脚本.

下面脚本(本文称做/etc/NetworkManager/dispatcher.d/xenNAT)也许正常工作.

#!/bin/sh
# /etc/NetworkManager/dispatcher.d/xenNAT
#
# Bring up iptables NAT for our Xen guests if a new network interface is brought up.
#
# The script is invoked by NetworkManagerDispatcher, like this:
# xenNat

INTERFACE=$1
UPDOWN=$2

if [ $UPDOWN = ‘up’ ] ; then
/sbin/iptables -t nat -A POSTROUTING -o $INTERFACE -j MASQUERADE
fi

注: 上面脚本没有经过测试, 因为作者没有Xen和Wifi的连网络环境, 如果你已确认上面脚本能够工作, 或者你有任何改进, 请编辑原文或给本文留言. http://virt.kernelnewbies.org/XenWifiNetwork

客户机

自从我们没有在虚拟网络上建立dhcp, 现在很容易在同一子网[比如你零域接口(10.1.1.0/24)上使用静态IP地址来配置Xen客户机. 在客户机上编辑/etc/sysconfig/networking文件:

NETWORKING=yes
HOSTNAME=localhost.localdomain
GATEWAY=10.1.1.1
IPADDR=10.1.1.10
NETMASK=255.255.255.0

DNS
我们如何正确地为客户机建立的DNS代理?

参考:
XenWifiNetwork

备注:
转载请保持文章完整性, 欢迎交流.

carbonjiao 发表于 2006-12-28 16:56:49

高手!
页: [1]
查看完整版本: 如何在具有Wifi网络的笔记本上配置Xen客户机