KVM下网络配置的一个解决方案[转载]
来源:互联网 发布:有哪些高仿的淘宝店 编辑:程序博客网 时间:2024/04/28 10:23
KVM的网络配置的[转]
本文转载前已经过本人验证,并增改了一些配置。
首先说一下实现原理。我是想先在host上造一块假网卡,然后guest的系统跟这假网卡连接构成一个局域网。guest想连外网的话,就把host当路由器。至于域名服务器,在guest系统里直接指定。
本人实验的host是ubuntu 10.04 server,guest是redhat 5。
接下来我会假设你已经装了kvm,而且能用它启动虚拟机。
(以下一到四参照了vbox的网络设定,都在host下操作)
一,首先把必要的工具装了:
代码:sudo apt-get install uml-utilities
二,再造假网卡tap0(名字随便取)并作一些基本配置
代码:sudo tunctl -t tap0 -u xxx
此处xxx换成你自己的用户名
代码:sudo chmod 0666 /dev/net/tun
这样大家都有权力去读写那个假网卡。即使在上面那行代码中你指定了自己的用户名,你还是没有办法读写tap0(很奇怪),所以这条命令是有用的。
三,配置网卡的网络参数。
代码:sudo ifconfig tap0 192.168.0.10 netmask255.255.255.0 up
随便设,但是你要确保你待会设置的guest的网卡ip跟tap0的属于同一个网段。
四,接下来是系统的配置(连外网所必须)如果只是虚拟机之间通信则不需要配置。
代码:sudo echo 1 >/proc/sys/net/ipv4/ip_forward
这样开启了linux的ip转发功能,host可以当路由器用了。如果你想让guest连上外网的话这条一定要。
代码:sudo iptables -t nat -A POSTROUTING -jMASQUERADE
这条命令也是连外网所必须的。
五,启动kvm虚拟机
代码:/usr/bin/kvm -m 256 -cdrom "/media/7_ALL/rhel-server-5.4-i386-dvd.iso" -hda "/media/7_ALL/virt1.img" -boot c -net nic -net tap,ifname=tap0,script=no $*
-net nic -net tap,ifname=tap0,script=no 是跟网络相关的,上面的命令的其他部分自己跟据实际情况修改。ifname=你造的假网卡的名字,我的是tap0。
六,guest系统的配置。
guest启动后应该会认出一张网卡,realtek的。我的freebsd认出来是re0。把那网卡的ip设定成192.168.0.x,(这个ip跟host下tap0的ip不能相同!但要确保它们同在一个子网。我的是192.168.0.11),并把netmask设成255.255.255.0。到现在,guest和host应该是同在一个子网了。你可以试一下在guest里ping192.168.0.10,在host里ping 192.168.0.11,如无意外,应该能ping通。到现在已实现hostguest之间的互访。
七,让guest连上外网。(前提是host已经连上外网)
只需要把guest的默认网关设置成192.168.0.10(你的假网卡的ip)就可以了,非常的简单。
域名服务器手动设置,不会很麻烦。
至此kvm网络设置的问题解决了
本人实验的host是ubuntu 10.04 server,guest是redhat 5。
接下来我会假设你已经装了kvm,而且能用它启动虚拟机。
(以下一到四参照了vbox的网络设定,都在host下操作)
一,首先把必要的工具装了:
代码:sudo apt-get install uml-utilities
二,再造假网卡tap0(名字随便取)并作一些基本配置
代码:sudo tunctl -t tap0 -u xxx
此处xxx换成你自己的用户名
代码:sudo chmod 0666 /dev/net/tun
这样大家都有权力去读写那个假网卡。即使在上面那行代码中你指定了自己的用户名,你还是没有办法读写tap0(很奇怪),所以这条命令是有用的。
三,配置网卡的网络参数。
代码:sudo ifconfig tap0 192.168.0.10 netmask255.255.255.0 up
随便设,但是你要确保你待会设置的guest的网卡ip跟tap0的属于同一个网段。
转载增加:
在ubuntu 10.04中 保存配置以便下次开机有效:
sudo vi /etc/network/interfaces
增加以下几行:
auto tap0
iface tap0 inet static
address 192.168.0.1
netmask 255.255.255.0
iface tap0 inet static
address 192.168.0.1
netmask 255.255.255.0
保存并退出,
使用 /etc/init.d/networking restart 重启网络使配置生效
四,接下来是系统的配置(连外网所必须)如果只是虚拟机之间通信则不需要配置。
这样开启了linux的ip转发功能,host可以当路由器用了。如果你想让guest连上外网的话这条一定要。
代码:sudo iptables -t nat -A POSTROUTING -jMASQUERADE
这条命令也是连外网所必须的。
五,启动kvm虚拟机
代码:/usr/bin/kvm -m 256 -cdrom "/media/7_ALL/rhel-server-5.4-i386-dvd.iso" -hda "/media/7_ALL/virt1.img" -boot c -net nic -net tap,ifname=tap0,script=no $*
-net nic -net tap,ifname=tap0,script=no 是跟网络相关的,上面的命令的其他部分自己跟据实际情况修改。ifname=你造的假网卡的名字,我的是tap0。
六,guest系统的配置。
guest启动后应该会认出一张网卡,realtek的。我的freebsd认出来是re0。把那网卡的ip设定成192.168.0.x,(这个ip跟host下tap0的ip不能相同!但要确保它们同在一个子网。我的是192.168.0.11),并把netmask设成255.255.255.0。到现在,guest和host应该是同在一个子网了。你可以试一下在guest里ping192.168.0.10,在host里ping 192.168.0.11,如无意外,应该能ping通。到现在已实现hostguest之间的互访。
七,让guest连上外网。(前提是host已经连上外网)
只需要把guest的默认网关设置成192.168.0.10(你的假网卡的ip)就可以了,非常的简单。
域名服务器手动设置,不会很麻烦。
至此kvm网络设置的问题解决了
- KVM下网络配置的一个解决方案[转载]
- KVM虚拟机部署openstack的网络配置
- kvm网络配置
- Redhat KVM 网络配置
- kvm--default网络配置
- Redhat KVM网络配置
- kvm配置网络
- ubuntu9.04下kvm虚拟机的安装与桥接网络配置(总结)
- Linux系统下基于Kvm创建虚拟机时网络网桥的配置使用说明
- RedHat Enterprise下如何配置KVM虚拟机的网络网桥
- Linux系统下基于Kvm创建虚拟机时网络网桥的配置使用说明
- Ubuntu下KVM的安装配置
- Ubuntu下KVM的安装配置
- KVM配置桥接网络
- 5.qemu-kvm 网络配置
- 介绍配置KVM桥接网络的方法
- 配置KVM虚拟机的网络,Bridge和Nat方式
- 配置KVM虚拟机的网络 Bridge和Nat方式
- 随便记点
- Guidelines for Writing Secure Code(安全代码编写准则)
- pptpd架设vpn
- Hibernate之映射值类型集合(映射bag)
- 大洋蛋...我错了...倒数365...
- KVM下网络配置的一个解决方案[转载]
- 字体选择器
- 如何在Lucene里面进行数字范围搜索 (Numeric Range Query)
- Prezi - the best presentation tool
- 我的转型
- Silverlight实例教程 - Validation用户提交数据验证捕获
- 边缘检测之:小核值相似区域(SUSAN)算法
- 求图的所有强连通分量 ---- tarjan算法
- 正则表达式详解入门【原创】