KVM 不知道从什么时候不能直接通过参数 -net nic 访问网络了,今天研究了一下可以通过 VDE 方式访问网络,配置相对之前有点复杂了。
======== Host OS 配置 ========
VDE 服务配置
配置文件 /etc/conf.d/vde 需要修改的行
VDE_CONFIG="vde-config"
VDE_CONNECTION="vde-connection"
复制配置文件模板 /etc/vde/vde-config.sample, /etc/vde/vde-connection.sample
sudo cp /etc/vde/vde-config.sample /etc/vde/vde-config
sudo cp /etc/vde/vde-connection.sample /etc/vde/vde-connection
配置文件 /etc/vde/vde-config 需要修改的行
VDE_SOCK_GROUP="kvm"
VDE_TAP="tap0"
启动 VDE 服务
sudo /etc/rc.d/vde start
配置网络接口 tap0 地址
sudo ifconfig tap0 192.168.100.1 netmask 255.255.255.0 up
配置 NAT
sudo iptables -t nat -A POSTROUTING -s 192.168.100.0/24 -o eth0 -j MASQUERADE
sudo iptables-save > /tmp/iptables
sudo cp /tmp/iptables /etc/iptables/iptables.rules
sudo touch /etc/iptables/ip6tables.rules
配置文件/etc/conf.d/iptables 中需要修改的行
IPTABLES_FORWARD=1
启动 NAT 服务
sudo /etc/rc.d/iptables start
启动 KVM
kvm -net nic -net vde,sock=/var/run/vde/sample.sock -hda ...
======== Guest OS 配置 ========
网络连接信息
Address: 192.168.100.2
Netmask: 255.255.255.0
Gateway: 192.168.100.1
DNS: 8.8.8.8
Over!