菜鸟玩云计算之九:KVM虚拟机网络配置

来源:互联网 发布:阿里云华北3是什么地方 编辑:程序博客网 时间:2024/06/04 18:20

菜鸟玩云计算之九:KVM虚拟机网络配置

cheungmine

前提:HOST是UbuntuServer12.10 amd64,虚拟机也是同样的OS。这样构造出来的KVM虚拟机有2种网络连接模式,一种称为bridge,一种称为nat。这2种模式的网络配置有点差别。使用我上一篇文章(菜鸟玩云计算之八:Ubuntu Server12.10 之KVM虚拟机:http://blog.csdn.net/cheungmine/article/details/8137236)创建出来的虚拟机默认是bridge模式。因此有必要说明如何实现nat模式作为基础,你必须精通“菜鸟玩云计算之八”所述的全部内容,才能玩转虚拟机。



HOST的网络配置在2种模式下没有区别,比如我的HOST的/etc/network/interfaces:

auto loiface lo inet loopbackauto eth0iface eth0 inet manualauto br0iface eth0 inet static    address      201.123.167.110    network      201.123.167.0    netmask      255.255.255.0    gateway      201.123.167.254    dns-nameservers  8.8.8.8    bridge_ports     eth0    bridge_fd        9    bridge_hello     2    bridge_maxage    12

1bridge 模式

虚拟机vm1的网络配置(vm1:/etc/network/interfaces)

auto loiface lo inet loopbackauto eth0iface eth0 inet static    address     201.123.167.111    network     201.123.167.0    netmask     255.255.255.0    broadcast   201.123.167.255    gateway     201.123.167.254    # dns-* option ...    dns-nameservers  8.8.8.8    dns-search defaultdomain

虚拟机vm1的xml配置(HOST:/etc/libvirt/qemu/vm1.xml


...<interface type='bridge'>  <mac address='...' />  <source bridge='br0'/>  <model type='virtio'/>  <address type='pci' .../></interface>...
使用我上一篇文章创建的虚拟机默认是bridge模式。而虚拟子网的nat模式在很多情况下很有用处,特说明如下:

(cheungmine原创作品,本文全部内容都经过测试)

2)nat 模式

虚拟机vm1的网络配置(vm1:/etc/network/interfaces)

auto loiface lo inet loopbackauto eth0iface eth0 inet dhcp

虚拟机vm1的xml配置(HOST:/etc/libvirt/qemu/vm1.xml)

...<interface type='network'>  <mac address='...'/>  <source network='default'/>  <model type='virtio'/>  <address type='pci' domain='...' .../></interface>...

nat模式下,开始HOST并不知道虚拟机的IP地址,这就需要用控制台登录虚拟机virsh console vm1)更改vm1的配置。更改结束后重启vm1的网络,ifconfig查看vm1的ip,就可以在主机模式下ssh登录到vm1。

mine@host:~$ sudo virsh console vm1mine@vm1:~$ sudo vi /etc/network/interfacesmine@vm1:~$ sudo vi /etc/init.d/networking restartmine@vm1:~$ sudo ifconfig


假设192.168.122.34是vm1 eth0的ip

按 ctrl+] 退出vm1,重新登录vm1(使用ssh)

mine@host:~$ ssh mine@192.168.122.34

或(host和vm用户名相同可以省略)

mine@host:~$ ssh 192.168.122.34

(本文完)









原创粉丝点击