设为首页 收藏本站
查看: 1073|回复: 0

[经验分享] KVM下网络配置的一个解决方案[转载]

[复制链接]

尚未签到

发表于 2015-10-10 11:29:56 | 显示全部楼层 |阅读模式
  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的属于同一个网段。
      转载增加:         在ubuntu 10.04中 保存配置以便下次开机有效:         sudo vi /etc/network/interfaces          增加以下几行:
         auto tap0
         iface tap0 inet static
         address 192.168.0.1
         netmask 255.255.255.0
         保存并退出,        使用 /etc/init.d/networking restart 重启网络使配置生效

四,接下来是系统的配置(连外网所必须)如果只是虚拟机之间通信则不需要配置。

代码: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网络设置的问题解决了

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-125038-1-1.html 上篇帖子: install kvm on ubuntu12.04 下篇帖子: qemu-kvm 内存虚拟化---ept
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表